diff --git a/framework/backend/entry-node.ts b/framework/backend/entry-node.ts index e69271ebbcf55494145f05c9e375cf7ed642b56e..e55cb9c4b96e5696a847be2c3d12fc30ad137c07 100644 --- a/framework/backend/entry-node.ts +++ b/framework/backend/entry-node.ts @@ -42,4 +42,4 @@ import * as os from "os"; import * as url from "node:url"; import { serve } from "@hono/node-server"; import process from "node:process"; -import * as console from "@clo/lib/log.ts"; +import * as console from "@clo/lib/log"; diff --git a/framework/bundle.ts b/framework/bundle.ts index 3395af706fa792c0b37000c557f3d236ddd384f9..bbe8b76c67f4b2722e75e4468afe5639c78aa610 100644 --- a/framework/bundle.ts +++ b/framework/bundle.ts @@ -397,6 +397,6 @@ import * as incr from "./incremental.ts"; import * as sg from "#sitegen"; import type { PageOrView } from "./generate.ts"; import type * as view from "#sitegen/view"; -import * as meta from "@clo/lib/render/meta.ts"; -import * as progress from "@clo/lib/progress.ts"; -import { ASSERT, UNWRAP } from "@clo/lib/assert.ts"; +import * as meta from "@clo/lib/render/meta"; +import * as progress from "@clo/lib/progress"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; diff --git a/framework/css.ts b/framework/css.ts index 3c0013200764ffbf7fba5871dd4105658cc072a0..4137835731c0718c0363ae67776d7d087ab90fa6 100644 --- a/framework/css.ts +++ b/framework/css.ts @@ -116,4 +116,4 @@ import * as hot from "./hot.ts"; import * as path from "node:path"; import { virtualFiles } from "./esbuild-support.ts"; import type { Io } from "./incremental.ts"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/framework/esbuild-support.ts b/framework/esbuild-support.ts index 87e76b99ce30b80da37250b46280c876a2af954c..c14191944d83b1daedaa14701015802393976193 100644 --- a/framework/esbuild-support.ts +++ b/framework/esbuild-support.ts @@ -94,7 +94,7 @@ export function isIgnoredSource(source: string) { } import * as esbuild from "esbuild"; -import * as string from "@clo/lib/string.ts"; +import * as string from "@clo/lib/string"; import * as path from "node:path"; import * as fs from "#sitegen/fs"; import * as hot from "./hot.ts"; diff --git a/framework/font.ts b/framework/font.ts index de98e95075165a44254deb8aafb4be841148b692..f3141aa993c151449b1d12389df0db85c4f1f003 100644 --- a/framework/font.ts +++ b/framework/font.ts @@ -211,10 +211,10 @@ import * as fs from "#sitegen/fs"; import * as os from "node:os"; import * as path from "node:path"; import * as sg from "#sitegen"; -import * as subprocess from "@clo/lib/subprocess.ts"; +import * as subprocess from "@clo/lib/subprocess"; import * as incr from "./incremental.ts"; import * as crypto from "node:crypto"; -import * as async from "@clo/lib/async.ts"; -import * as error from "@clo/lib/error.ts"; -import * as progress from "../lib/progress.ts"; -import { ASSERT } from "@clo/lib/assert.ts"; +import * as async from "@clo/lib/async"; +import * as error from "@clo/lib/error"; +import * as progress from "@clo/lib/progress"; +import { ASSERT } from "@clo/lib/assert"; diff --git a/framework/generate.ts b/framework/generate.ts index aa6871ee3349c17925e26558af9d66381c3f0b52..f4e6873c7af97f11c80baef073e90b65c277e464 100644 --- a/framework/generate.ts +++ b/framework/generate.ts @@ -163,7 +163,7 @@ export async function scanSiteSection(io: Io, section: sg.Section) { // - "{section}/static/*.png" let staticFiles: FileItem[] = []; // Pages are rendered then served as static files. - // - "{section}/pages/*.marko" + // - "{section}/pages/*. let pages: FileItem[] = []; // Views are dynamically rendered pages called via backend code. // - "{section}/views/*.tsx" @@ -414,12 +414,12 @@ export type PageOrView = PreparedPage | PreparedView; import * as path from "node:path"; import * as fs from "#sitegen/fs"; -import * as meta from "@clo/lib/render/meta.ts"; -import * as render from "@clo/lib/render.ts"; +import * as meta from "@clo/lib/render/meta"; +import * as render from "@clo/lib/render"; import * as sg from "#sitegen"; import type { FileItem } from "#sitegen"; -import * as progress from "../lib/progress.ts"; -import * as error from "@clo/lib/error.ts"; +import * as progress from "@clo/lib/progress"; +import * as error from "@clo/lib/error"; import SitegenWrap from "./sitegen-wrap.marko"; @@ -429,4 +429,4 @@ import * as fonts from "./font.ts"; import * as hot from "./hot.ts"; import * as incr from "./incremental.ts"; import { Io } from "./incremental.ts"; -import { ASSERT, UNWRAP } from "@clo/lib/assert.ts"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; diff --git a/framework/global.d.ts b/framework/global.d.ts index a35b6dc95c5fbf6204f33f80ee977dfc2bb1c2a2..e5064f8d276d83bcb242a7045991ebaf95609475 100644 --- a/framework/global.d.ts +++ b/framework/global.d.ts @@ -10,4 +10,4 @@ declare global { export type ElementClass = jsx.ts.ElementClass; } } -import * as jsx from "@clo/lib/render/jsx-runtime.ts"; +import * as jsx from "@clo/lib/render/jsx-runtime"; diff --git a/framework/hot.ts b/framework/hot.ts index f2826f2f0e513eabb547c474399dbed71424c82a..a48951a21e8bb1c615bf3b9586224f2e950553c1 100644 --- a/framework/hot.ts +++ b/framework/hot.ts @@ -304,4 +304,4 @@ import * as esbuild from "esbuild"; import { createRequire } from "node:module"; import * as self from "./hot.ts"; import { Buffer } from "node:buffer"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/framework/incremental.ts b/framework/incremental.ts index 1309c65a612a3790c3b30cd0923d8b1a04611233..1c58fd49a44d093db2129c52663fa6a09ad9ead3 100644 --- a/framework/incremental.ts +++ b/framework/incremental.ts @@ -731,7 +731,7 @@ const zstdCompress = util.promisify(zlib.zstdCompress); import * as hot from "./hot.ts"; import * as fs from "#sitegen/fs"; -import * as mime from "@clo/lib/mime.ts"; +import * as mime from "@clo/lib/mime"; import * as manifest from "#sitegen/assets"; import * as path from "node:path"; @@ -739,9 +739,9 @@ import * as util from "node:util"; import * as crypto from "node:crypto"; import * as zlib from "node:zlib"; -import * as progress from "@clo/lib/progress.ts"; -import * as stack from "@clo/lib/log/stack.ts"; +import * as progress from "@clo/lib/progress"; +import * as stack from "@clo/lib/log/stack"; import { formatSize } from "#src/file-viewer/format.ts"; import * as msgpackr from "msgpackr"; -import { ASSERT, UNWRAP } from "@clo/lib/assert.ts"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; diff --git a/framework/lib/assets.ts b/framework/lib/assets.ts index b870367ff6c58929b025cbc3f3443ecb8e30f5f9..98b8b3bfa01574a0bd41c06fda7528ce329969dd 100644 --- a/framework/lib/assets.ts +++ b/framework/lib/assets.ts @@ -285,5 +285,5 @@ import type { AssetKey as Key } from "../../.clover/ts/asset.d.ts"; import * as crypto from "node:crypto"; import * as zlib from "node:zlib"; import * as util from "node:util"; -import * as log from "@clo/lib/log.ts"; -import { ASSERT, UNWRAP } from "@clo/lib/assert.ts"; +import * as log from "@clo/lib/log"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; diff --git a/framework/lib/path.ts b/framework/lib/path.ts index 2cd99149bbc44f8c1c2aefefdbef62b8304a7e91..1be9f7177084dee91386cc9a5ab1d0815084d838 100644 --- a/framework/lib/path.ts +++ b/framework/lib/path.ts @@ -211,6 +211,6 @@ export class Path { import * as path from "node:path"; import * as fs from "./fs.ts"; import * as util from "node:util"; -import * as error from "@clo/lib/error.ts"; +import * as error from "@clo/lib/error"; import type { RmOptions } from "node:fs"; -import { ASSERT } from "@clo/lib/assert.ts"; +import { ASSERT } from "@clo/lib/assert"; diff --git a/framework/lib/sitegen.ts b/framework/lib/sitegen.ts index 55ae173d45a3df4eed88aeb1125a7c4336eefc99..a50f8fd54bac691dee3a54dcb9508d7fc4e787d1 100644 --- a/framework/lib/sitegen.ts +++ b/framework/lib/sitegen.ts @@ -100,7 +100,7 @@ export function joinScripts(scriptSources: string[]) { export { default as CloverScriptInclude } from "./add-script.marko"; -import * as render from "@clo/lib/render.ts"; -import type * as meta from "@clo/lib/render/meta.ts"; +import * as render from "@clo/lib/render"; +import type * as meta from "@clo/lib/render/meta"; import type * as css from "../css.ts"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/framework/lib/view.ts b/framework/lib/view.ts index aeba4354152d0b9d9434a6daf351cf2358f59da5..8a75cb60f3499fed9efeb03550472eadb8c4f762 100644 --- a/framework/lib/view.ts +++ b/framework/lib/view.ts @@ -117,14 +117,14 @@ export function regenerate(tag: RegenKey) { } } -import * as meta from "@clo/lib/render/meta.ts"; +import * as meta from "@clo/lib/render/meta"; import type * as hono from "#hono"; -import * as render from "@clo/lib/render.ts"; +import * as render from "@clo/lib/render"; import * as sg from "./sitegen.ts"; import * as asset from "./assets.ts"; import type { RegenKey, RegisteredViews as ViewMap, } from "../../.clover/ts/view.d.ts"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; import SitegenWrap from "../sitegen-wrap.marko"; diff --git a/framework/watch.ts b/framework/watch.ts index 6a6195533e8b6c6cba47709992e36394054eaf41..0d35c5c76c5009b5077c0da4cfc6a53e3c5d78e8 100644 --- a/framework/watch.ts +++ b/framework/watch.ts @@ -170,4 +170,4 @@ import * as generate from "./generate.ts"; import * as incr from "./incremental.ts"; import * as path from "node:path"; import * as util from "node:util"; -import * as subprocess from "@clo/lib/subprocess.ts"; +import * as subprocess from "@clo/lib/subprocess"; diff --git a/lib/Events.ts b/lib/Events.ts index 0ad6b86143d7cfc027a49fb25b2e50f5948377e8..84ca9f55942a7b421027700d2a48c09922003d31 100644 --- a/lib/Events.ts +++ b/lib/Events.ts @@ -102,6 +102,6 @@ export namespace Events { export type Handler = (...args: Args) => void; } -import * as ts from "./ts.ts"; -import * as async from "./async.ts"; -import { UNWRAP } from "./assert.ts"; +import * as ts from "@clo/lib/ts"; +import * as async from "@clo/lib/async"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/lib/Lru.test.ts b/lib/Lru.test.ts index 54984fdf5c1b49cca5cb7abfd090b55eff727d0b..c3c76b94a3887167ce0e1f4f81db147294b8f041 100644 --- a/lib/Lru.test.ts +++ b/lib/Lru.test.ts @@ -151,4 +151,4 @@ test("revival", () => { import assert from "node:assert"; import { test } from "vitest"; -import { Lru } from "./Lru.ts"; +import { Lru } from "@clo/lib/Lru"; diff --git a/lib/Lru.ts b/lib/Lru.ts index 4cb35d4cac1139eb80477beb3b0135fa16c27c12..3ea544b6aa90b323de25e3a1e5b463edaa78b4ba 100644 --- a/lib/Lru.ts +++ b/lib/Lru.ts @@ -278,5 +278,5 @@ export declare namespace Lru { const none: unique symbol = Symbol(); type none = typeof none; -import { ASSERT, UNWRAP } from "./assert.ts"; -import * as ts from "./ts.ts"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; +import * as ts from "@clo/lib/ts"; diff --git a/lib/assert.ts b/lib/assert.ts index b7a9fe63cfa16051f28b2182b38baf3df807b351..d101b6beb73edc539ac9d0065051e8967322d75c 100644 --- a/lib/assert.ts +++ b/lib/assert.ts @@ -43,4 +43,4 @@ function inspect(object: unknown) { } } -import * as node from "./node.ts"; +import * as node from "@clo/lib/node"; diff --git a/lib/async.ts b/lib/async.ts index 060125c7a5f7561376ad3927b414876554e31f53..fc6bdfeb8186d3ab64da97e949a5cf02fafe657b 100644 --- a/lib/async.ts +++ b/lib/async.ts @@ -255,5 +255,5 @@ export function delay(ms: number): Cancelable { ); } -import { ASSERT } from "./assert.ts"; -import * as ts from "./ts.ts"; +import { ASSERT } from "@clo/lib/assert"; +import * as ts from "@clo/lib/ts"; diff --git a/lib/deno.json b/lib/deno.json index 72d0bf3348dfa9e43b51cc989ecf4f78a31f855c..b21b3f81b9d74913e2a23207879d0fd929d1b77e 100644 --- a/lib/deno.json +++ b/lib/deno.json @@ -4,40 +4,40 @@ "version": "4.0.0", "license": "MIT", "exports": { - "./assert.ts": "./assert.ts", - "./async.ts": "./async.ts", - "./bytes.ts": "./bytes.ts", - "./error.ts": "./error.ts", - "./Events.ts": "./Events.ts", - "./log.ts": "./log.ts", - "./log/stack.ts": "./log/stack.ts", - "./Lru.ts": "./Lru.ts", - "./mime.ts": "./mime.ts", - "./node.ts": "./node.ts", - "./progress.ts": "./progress.ts", - "./queue.ts": "./queue.ts", - "./render.ts": "./render.ts", - "./render/jsx-runtime.ts": "./render/jsx-runtime.ts", - "./render/meta.ts": "./render/meta.ts", - "./stream.ts": "./stream.ts", - "./string.ts": "./string.ts", - "./string/ansi.ts": "./string/ansi.ts", - "./subprocess.ts": "./subprocess.ts", - "./subprocess/ffmpeg.ts": "./subprocess/ffmpeg.ts", - "./testing.ts": "./testing.ts", - "./ts.ts": "./ts.ts" + "./assert": "./assert.ts", + "./async": "./async.ts", + "./bytes": "./bytes.ts", + "./error": "./error.ts", + "./Events": "./Events.ts", + "./log": "./log.ts", + "./log/stack": "./log/stack.ts", + "./Lru": "./Lru.ts", + "./mime": "./mime.ts", + "./node": "./node.ts", + "./progress": "./progress.ts", + "./queue": "./queue.ts", + "./render": "./render.ts", + "./render/jsx-runtime": "./render/jsx-runtime.ts", + "./render/meta": "./render/meta.ts", + "./stream": "./stream.ts", + "./string": "./string.ts", + "./string/ansi": "./string/ansi.ts", + "./subprocess": "./subprocess.ts", + "./subprocess/ffmpeg": "./subprocess/ffmpeg.ts", + "./testing": "./testing.ts", + "./ts": "./ts.ts" }, "compilerOptions": { "jsx": "react-jsx", "jsxImportSource": "@clo/lib/render" }, "imports": { - "@clo/lib/render/jsx-runtime": "./render/jsx-runtime.ts", - "@clo/lib/render/jsx-dev-runtime": "./render/jsx-runtime.ts" + "@clo/lib/render/jsx-runtime": "./render/jsx-runtime", + "@clo/lib/render/jsx-dev-runtime": "./render/jsx-runtime" }, "exclude": [ "readme.npm.md", + "package.json", "deno.lock" ] } - diff --git a/lib/error.ts b/lib/error.ts index 026cb489617e0e2ed13fdcfe90aaf91df720e3e6..69f577c8adb3dd44e1b73a9f451a59b7593c3e91 100644 --- a/lib/error.ts +++ b/lib/error.ts @@ -51,4 +51,4 @@ export function rethrowWithMetadata( throw error; } -import type * as node from "./node.ts"; +import type * as node from "@clo/lib/node"; diff --git a/lib/examples/progress-log-stream.ts b/lib/examples/progress-log-stream.ts index f82629d3028d6a9f4a80b82ecbf7276e9dabf4ce..a1fbd45e12fa276e5fa7c0e25a249822e7549fd6 100644 --- a/lib/examples/progress-log-stream.ts +++ b/lib/examples/progress-log-stream.ts @@ -62,6 +62,6 @@ async.delay(500).then(async () => { })(); }); -import * as async from "../async.ts"; -import * as progress from "../progress.ts"; -import * as log from "../log.ts"; +import * as async from "@clo/lib/async"; +import * as progress from "@clo/lib/progress"; +import * as log from "@clo/lib/log"; diff --git a/lib/examples/progress-stdout-stream.ts b/lib/examples/progress-stdout-stream.ts index 7d88366cabf9658a7833be2ad048e8a76b53b9f1..8b7b283e4490126baeb77a5eb7a1dc59381d1696 100644 --- a/lib/examples/progress-stdout-stream.ts +++ b/lib/examples/progress-stdout-stream.ts @@ -34,6 +34,6 @@ async.delay(1000).then(async () => { const root = progress.start("generation"); }); -import * as async from "../async.ts"; -import * as progress from "../progress.ts"; -import * as log from "../log.ts"; +import * as async from "@clo/lib/async"; +import * as progress from "@clo/lib/progress"; +import * as log from "@clo/lib/log"; diff --git a/lib/log.test.ts b/lib/log.test.ts index da677b667522c75ffe34ab1949b0b614f0edf9b0..7a7bef386a6c633740d437924411d57ba69358b0 100644 --- a/lib/log.test.ts +++ b/lib/log.test.ts @@ -527,6 +527,6 @@ describe("log widgets", () => { }); import { describe, test } from "vitest"; -import * as ansi from "./string/ansi.ts"; -import * as log from "./log.ts"; -import * as testing from "./testing.ts"; +import * as ansi from "@clo/lib/string/ansi"; +import * as log from "@clo/lib/log"; +import * as testing from "@clo/lib/testing"; diff --git a/lib/log.ts b/lib/log.ts index 73350f333e2529338c307cb5791aa54f5d695d1f..66ced07a197059544854e6dccf3a8d3f3fbd33af 100644 --- a/lib/log.ts +++ b/lib/log.ts @@ -1,5 +1,5 @@ /** - * by using `@clo/lib/log.ts`, an application gets easy scoped logging as well + * by using `@clo/lib/log`, an application gets easy scoped logging as well * as integration with terminal widgets such as `progress.ts`. even when these * widgets are active, using the logging interface is optional; global I/O with * `console.*` and `process.std{out/err}` are automatically patched to play nice @@ -220,8 +220,8 @@ export function formatAnsiMessage(msg: Message, colors: boolean): string { * }); * await async.delay(10000); * - * import * as log from "@clo/lib/log.ts"; - * import * as async from "@clo/lib/async.ts"; + * import * as log from "@clo/lib/log"; + * import * as async from "@clo/lib/async"; * ``` */ export function startWidget( @@ -266,7 +266,7 @@ export function getDrawLock(mode: "long" | "short"): DrawLock { /** * call this if you are doing silly things with `process.stderr` and you want to - * make sure that starting a log widget (such as `@clo/lib/progress.ts`) doesn't + * make sure that starting a log widget (such as `@clo/lib/progress`) doesn't * have interweaving bugs. in particular, you need this if your program directly * writes incomplete lines to the terminal (missing a trailing `\n`). * @@ -1102,7 +1102,7 @@ function defaultFallbackWidgetHost(): WidgetHost { startWidget: (options) => { if (!warned) { console.warn( - '"@clo/lib/log.ts"\'s startWidget was called in an environment ' + + '"@clo/lib/log"\'s startWidget was called in an environment ' + "that does not support the Node.js 'process' API. Widgets " + "will not be visible.", ); @@ -1203,7 +1203,7 @@ export type MessageFormatFunction = ( colors: boolean, ) => string; -import * as ansi from "./string/ansi.ts"; +import * as ansi from "@clo/lib/string/ansi"; import * as async from "./async.ts"; import * as node from "./node.ts"; import * as stack from "./log/stack.ts"; diff --git a/lib/log/stack.ts b/lib/log/stack.ts index dea85c8c17d7e8f7609e65e4f9dc0bb75f86de3d..fd02458ee505706a7bd330bff5c60d27392c6f6c 100644 --- a/lib/log/stack.ts +++ b/lib/log/stack.ts @@ -19,7 +19,7 @@ * } * * import * as fs from "node:fs"; - * import * as stack from "@clo/lib/log/stack.ts"; + * import * as stack from "@clo/lib/log/stack"; * ``` * * @module @@ -428,5 +428,5 @@ const regexFunctionName = /((.*".+"[^@]*)?[^@]*)(?:@)/; const regexV8Stack = /^\s*at .*(\S+:\d+|\(native\))/m; const regexLocation = /(.+?)(?::(\d+))?(?::(\d+))?$/; -import * as ansi from "../string/ansi.ts"; -import * as node from "../node.ts"; +import * as ansi from "@clo/lib/string/ansi"; +import * as node from "@clo/lib/node"; diff --git a/lib/mime.test.ts b/lib/mime.test.ts index 5ff88777d3920a08ea776ebcfa52be7734b3c4c0..8d132ab5ba075c7991a367cd94a2cd536c09f8f9 100644 --- a/lib/mime.test.ts +++ b/lib/mime.test.ts @@ -25,4 +25,4 @@ test("for", () => { import { test } from "vitest"; import assert from "node:assert"; -import * as mime from "@clo/lib/mime.ts"; +import * as mime from "@clo/lib/mime"; diff --git a/lib/package.json b/lib/package.json index 0f550cbaabd61f4c1d2c6ebe21ff458560e694b8..2023d4878e016bd85b3c6ac274dcb4d6f5de49ee 100644 --- a/lib/package.json +++ b/lib/package.json @@ -1,4 +1,5 @@ { + "name": "@clo/lib", "type": "module", "exports": { "./*": "./*.ts" } } diff --git a/lib/progress.test.ts b/lib/progress.test.ts index 6c4f3cf5edaa479aca9a77e512eb64ef4a899fae..c117963d74cf56ec87837e6c2c36765806c4fcae 100644 --- a/lib/progress.test.ts +++ b/lib/progress.test.ts @@ -235,10 +235,10 @@ function cleanProgressEvent(event: progress.StreamEvent) { type EncodedKey = typeof progress.internals.EncodedKey; -import * as progress from "./progress.ts"; +import * as progress from "@clo/lib/progress"; import { describe, test, vi } from "vitest"; import assert from "node:assert/strict"; -import * as stream from "./stream.ts"; -import * as testing from "./testing.ts"; -import * as ansi from "./string/ansi.ts"; -import { UNWRAP } from "./assert.ts"; +import * as stream from "@clo/lib/stream"; +import * as testing from "@clo/lib/testing"; +import * as ansi from "@clo/lib/string/ansi"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/lib/progress.ts b/lib/progress.ts index f4a714f3a0e611fa067ec1549577813176bf24d4..b5ef9dbf6282e7344c68bd6ee753bcefc11579f0 100644 --- a/lib/progress.ts +++ b/lib/progress.ts @@ -23,7 +23,7 @@ * * doSomething(progress); // the progress module satisfies progress.Ref * - * import * as progress from "@clo/lib/progress.ts"; + * import * as progress from "@clo/lib/progress"; * ``` * * in some cases, such as in `subprocess/ffmpeg.ts`, it may make more sense @@ -1768,13 +1768,13 @@ export const internals: { EncodedKey: 0 as EncodedKey, }))(); -import * as ansi from "./string/ansi.ts"; -import * as async from "./async.ts"; -import * as bytes from "./bytes.ts"; -import * as log from "./log.ts"; -import * as stack from "./log/stack.ts"; -import * as stream from "./stream.ts"; -import * as string from "./string.ts"; -import * as ts from "./ts.ts"; -import { ASSERT, UNWRAP } from "./assert.ts"; -import { Events } from "./Events.ts"; +import * as ansi from "@clo/lib/string/ansi"; +import * as async from "@clo/lib/async"; +import * as bytes from "@clo/lib/bytes"; +import * as log from "@clo/lib/log"; +import * as stack from "@clo/lib/log/stack"; +import * as stream from "@clo/lib/stream"; +import * as string from "@clo/lib/string"; +import * as ts from "@clo/lib/ts"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; +import { Events } from "@clo/lib/Events"; diff --git a/lib/queue.ts b/lib/queue.ts index 2432fdec4f4b7b840442863421ee49bb835de15b..8d6395f748202790034bed9264d85d1f760edd01 100644 --- a/lib/queue.ts +++ b/lib/queue.ts @@ -176,4 +176,4 @@ function insertSorted(arr: T[], item: T) { declare var navigator: { hardwareConcurrency: number }; const global = new PriorityQueue(navigator.hardwareConcurrency); -import { UNWRAP } from "./assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/lib/readme.md b/lib/readme.md index 52af8270fdf59f5a34120d0ecd12e5a61546cd75..4622965780f42d10cc919bd5a77b6bba05aa04ba 100644 --- a/lib/readme.md +++ b/lib/readme.md @@ -14,25 +14,25 @@ depend on each other. there are no external dependencies; code is easy to audit. -- `assert.ts` -- `async.ts` -- `error.ts` - interop with the `unknown` type in error handlers -- `log.ts` - logging, terminal i/o, interactive widgets -- `log/headless.ts` - use `log` and `log/progress` without a tty -- `log/stack.ts` - stack trace parse and formatter -- `Lru.ts` - least recently used cache -- `mime.ts` - trimmed database of ext -> mime types -- `node.ts` - the Node.js javascript runtime -- `progress.ts` - cli progress bars, nesting status indication -- `queue.ts` - priority queue with rescheduling -- `render.ts` - html generation with extensions. -- `render/jsx-runtime.ts` - integration with JSX syntax -- `render/meta.ts` - html meta tag generation -- `string.ts` -- `string/ansi.ts` - cursor and color constants -- `subprocess.ts` - rebuilt api for `node:child_process` -- `subprocess/ffmpeg.ts` - spawn and parse progress output -- `ts.ts` typescript types and general purpose code +- `assert` - assertion and type narrowing functions +- `async` - promise and asynchronous helpers +- `bytes` - `Uint8Array` helpers +- `error` - interop with the `unknown` type in error handlers +- `Events` - typed event emitter +- `log` - logging, terminal i/o, interactive widgets +- `log/stack` - stack trace parse and formatter +- `Lru` - least recently used cache +- `mime` - trimmed database of ext -> mime types +- `node` - the Node.js javascript runtime +- `progress` - cli progress bars, nesting status indication +- `queue` - priority queue with rescheduling +- `stream` - ReadableStream helpers +- `string` - trival helpers +- `string/ansi` - cursor and color constants +- `subprocess` - rebuilt api for `node:child_process` +- `subprocess/ffmpeg` - spawn and parse progress output +- `testing` - stuff used in `@clo/lib`'s unit tests +- `ts` typescript types and general purpose code there is currently no hosted documentation site. please refer to the source files' comments. @@ -44,7 +44,7 @@ import. function names are often concise to avoid repeating redundant words in source code. ```ts -import * as queue from "@clo/lib/queue.ts"; +import * as queue from "@clo/lib/queue"; // `run` in the context of `queue` conveys more information const result = await queue.run({ ... }); @@ -54,10 +54,10 @@ without "barrel" files, using multiple libraries is done by importing each library separately: ```ts -import * as log from "@clo/lib/log.ts"; +import * as log from "@clo/lib/log"; // since the namespace cannot be a constructor, capitalized // filenames indicate the single export to use. -import { Lru } from "@clo/lib/Lru.ts"; +import { Lru } from "@clo/lib/Lru"; ``` these patterns developed initially when using a text editor without a language diff --git a/lib/render.ts b/lib/render.ts index a4da679e9690741b76021189452f8077e5690207..917acad5e3af237031a3107d537d20542d2b7380 100644 --- a/lib/render.ts +++ b/lib/render.ts @@ -14,7 +14,7 @@ * synchronous rendering function {@linkcode sync|render.sync}: * * ```tsx - * import * as render from "@clo/lib/render.ts"; + * import * as render from "@clo/lib/render"; * console.info(render.sync(

good morning

)); * // jsx is equivilent to: * console.info(render.sync(render.element("h1", { content: "good morning" }))); @@ -476,4 +476,4 @@ const kRaw = Symbol("Raw"); /** secret key to facilitate {@linkcode init} with a `ContextValue[]` */ const kContext: unique symbol = Symbol(); -import { ASSERT, UNWRAP } from "./assert.ts"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; diff --git a/lib/render/jsx-runtime.ts b/lib/render/jsx-runtime.ts index cff64b68aff50622f3c109df6ac13b5fbe3a8632..9fbb9c2281ebf8d8e9c128088f4d27342678a2bd 100644 --- a/lib/render/jsx-runtime.ts +++ b/lib/render/jsx-runtime.ts @@ -13,7 +13,7 @@ * export type ElementClass = jsx.ts.ElementClass; * } * } - * import * as jsx from "@clo/lib/render/jsx-runtime.ts"; + * import * as jsx from "@clo/lib/render/jsx-runtime"; */ /** this element returns just its contents, and is used by `<>` fragment syntax. */ @@ -77,5 +77,5 @@ export declare namespace ts { export type ElementClass = ReturnType; } -import * as render from "../render.ts"; -import { ASSERT } from "../assert.ts"; +import * as render from "@clo/lib/render"; +import { ASSERT } from "@clo/lib/assert"; diff --git a/lib/render/meta.test.tsx b/lib/render/meta.test.tsx index 06ce22066abb489a5275679df616324502cebdec..021cf613941161e1f8de93aeb64f161d00166fa9 100644 --- a/lib/render/meta.test.tsx +++ b/lib/render/meta.test.tsx @@ -46,4 +46,4 @@ test("automatic embed with '{}'", () => import { test } from "vitest"; import assert from "node:assert"; -import * as meta from "./meta.ts"; +import * as meta from "@clo/lib/render/meta"; diff --git a/lib/render/meta.ts b/lib/render/meta.ts index 7815c28e1794af01ce769aa9c443acd12c713313..03c8d49075088ec5568c7de890b786fa864ccbf5 100644 --- a/lib/render/meta.ts +++ b/lib/render/meta.ts @@ -253,5 +253,5 @@ function attr(value: string) { return render.quoteIfNeeded(esc(value)); } -import { escapeHtmlContent as esc } from "../render.ts"; -import * as render from "../render.ts"; +import { escapeHtmlContent as esc } from "@clo/lib/render"; +import * as render from "@clo/lib/render"; diff --git a/lib/stream.test.ts b/lib/stream.test.ts index 634085a5c53c3b933eaa076bfc8c1d661f010cf1..a10587b8ced355c4de9e3a82ef6a0a0b9fd940bb 100644 --- a/lib/stream.test.ts +++ b/lib/stream.test.ts @@ -227,4 +227,4 @@ describe("BufferedReader", () => { import { describe, test } from "vitest"; import { strict as assert } from "node:assert"; -import * as stream from "./stream.ts"; +import * as stream from "@clo/lib/stream"; diff --git a/lib/stream.ts b/lib/stream.ts index 04233e5aeb123d5efed46f64e9e9704ca31e8458..456350684d124c4b47cd52b41de14445975e4811 100644 --- a/lib/stream.ts +++ b/lib/stream.ts @@ -472,5 +472,5 @@ export function readWritePair(): [ return [reader, unbuffered]; } -import * as string from "./string.ts"; -import { ASSERT, UNWRAP } from "./assert.ts"; +import * as string from "@clo/lib/string"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; diff --git a/lib/string.test.ts b/lib/string.test.ts index e2c36ebf50ac45a770f50f6cddbfd7fabfa9b8d4..e3fb8ffd469d6c4bc11d03eba036915357ccd1b0 100644 --- a/lib/string.test.ts +++ b/lib/string.test.ts @@ -48,4 +48,4 @@ test.todo("formatByteSize", () => { import { test } from "vitest"; import assert from "node:assert"; -import * as string from "./string.ts"; +import * as string from "@clo/lib/string"; diff --git a/lib/string/ansi.test.ts b/lib/string/ansi.test.ts index a0cda58633e80f10cb27b56b5d89a2ced8db1596..ebefba627dc9da62294fd4b7bb7d8f31c4d54d50 100644 --- a/lib/string/ansi.test.ts +++ b/lib/string/ansi.test.ts @@ -21,4 +21,4 @@ test("trimForTerminal", () => { import { test } from "vitest"; import assert from "node:assert"; -import * as ansi from "@clo/lib/string/ansi.ts"; +import * as ansi from "@clo/lib/string/ansi"; diff --git a/lib/string/ansi.ts b/lib/string/ansi.ts index 9ee0c24289321dcccbb5f28c50c35602a781cba2..ebbdb97f50d063ee0ed56fd2b2642b339389a507 100644 --- a/lib/string/ansi.ts +++ b/lib/string/ansi.ts @@ -407,5 +407,5 @@ function segmentWidth(segment: string) { ); } -import * as self from "./ansi.ts"; -import { UNWRAP } from "../assert.ts"; +import * as self from "@clo/lib/string/ansi"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/lib/subprocess/ffmpeg.ts b/lib/subprocess/ffmpeg.ts index 71fcd878d4521fab64b52586fe296c53567c537f..aeaa6a4d1725765e34b3adfce9160a7df905936c 100644 --- a/lib/subprocess/ffmpeg.ts +++ b/lib/subprocess/ffmpeg.ts @@ -195,6 +195,6 @@ import * as readline from "node:readline"; import * as process from "node:process"; import events from "node:events"; import * as path from "node:path"; -import * as subprocess from "../subprocess.ts"; -import type * as progress from "../progress.ts"; -import * as string from "../string.ts"; +import * as subprocess from "@clo/lib/subprocess"; +import type * as progress from "@clo/lib/progress"; +import * as string from "@clo/lib/string"; diff --git a/lib/testing.ts b/lib/testing.ts index 26466c7f74e0c90a588ac5e6c9a932d873813013..846da954184659f40b624e513f5afe408fffdd60 100644 --- a/lib/testing.ts +++ b/lib/testing.ts @@ -334,8 +334,8 @@ export class MockScreen implements Disposable, log.WidgetHost { } } -import * as ansi from "./string/ansi.ts"; -import { ASSERT, UNWRAP } from "./assert.ts"; -import * as log from "./log.ts"; -import * as async from "./async.ts"; -import * as stack from "./log/stack.ts"; +import * as ansi from "@clo/lib/string/ansi"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; +import * as log from "@clo/lib/log"; +import * as async from "@clo/lib/async"; +import * as stack from "@clo/lib/log/stack"; diff --git a/package-lock.json b/package-lock.json index 7707a7934b519b8ec3143bd340b5c2af969ee3a2..e667cbd62e3f4b29b15e846123ac626421b09651 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,16 +7,15 @@ "dependencies": { "@clo/lib": "file:lib", "@clo/markodown": "npm:@paperclover/markodown", - "@hono/node-server": "1.14.3", - "@marko/compiler": "^5.39.55", - "@types/node": "24.0.10", - "browserslist": "4.28.1", + "@hono/node-server": "1.19.11", + "@marko/compiler": "5.39.62", + "@types/node": "^24.12.0", "dashjs": "5.0.3", - "devalue": "5.6.2", + "devalue": "5.6.4", "esbuild": "0.25.5", "hls.js": "1.6.5", - "hono": "4.11.9", - "marko": "^5.38.24", + "hono": "4.12.8", + "marko": "5.38.33", "msgpackr": "1.11.5", "playwright": "1.58.2", "source-map-support": "0.5.21", @@ -27,14 +26,18 @@ "vscode-textmate": "9.2.0" } }, - "lib": {}, + "lib": { + "name": "@clo/lib" + }, "node_modules/@clo/lib": { "resolved": "lib", "link": true }, "node_modules/@clo/markodown": { "name": "@paperclover/markodown", - "version": "1.0.0-rc.15", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@paperclover/markodown/-/markodown-1.0.0.tgz", + "integrity": "sha512-iMFqO9gqWwzpCysd/1ijXZGnwLasEaHE9EvEXMjJLXBbuLEHmHDQO5cT4JGtVpK85xsD4PYoBOXhyLBzyUNtSw==", "peerDependencies": { "@marko/compiler": "^5", "esbuild": "0.x", @@ -53,9 +56,9 @@ } }, "node_modules/@emnapi/core": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.9.0.tgz", - "integrity": "sha512-0DQ98G9ZQZOxfUcQn1waV2yS8aWdZ6kJMbYCJB3oUBecjWYO1fqJ+a1DRfPF3O5JEkwqwP1A9QEN/9mYm2Yd0w==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.9.1.tgz", + "integrity": "sha512-mukuNALVsoix/w1BJwFzwXBN/dHeejQtuVzcDsfOEsdpCumXb/E9j8w11h5S54tT1xhifGfbbSm/ICrObRb3KA==", "license": "MIT", "optional": true, "dependencies": { @@ -64,9 +67,9 @@ } }, "node_modules/@emnapi/runtime": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.0.tgz", - "integrity": "sha512-QN75eB0IH2ywSpRpNddCRfQIhmJYBCJ1x5Lb3IscKAL8bMnVAKnRg8dCoXbHzVLLH7P38N2Z3mtulB7W0J0FKw==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.9.1.tgz", + "integrity": "sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==", "license": "MIT", "optional": true, "dependencies": { @@ -83,8 +86,74 @@ "tslib": "^2.4.0" } }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.5.tgz", + "integrity": "sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.5.tgz", + "integrity": "sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.5.tgz", + "integrity": "sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.5.tgz", + "integrity": "sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/darwin-arm64": { "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.5.tgz", + "integrity": "sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==", "cpu": [ "arm64" ], @@ -97,8 +166,346 @@ "node": ">=18" } }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.5.tgz", + "integrity": "sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.5.tgz", + "integrity": "sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.5.tgz", + "integrity": "sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.5.tgz", + "integrity": "sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.5.tgz", + "integrity": "sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.5.tgz", + "integrity": "sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.5.tgz", + "integrity": "sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.5.tgz", + "integrity": "sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.5.tgz", + "integrity": "sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.5.tgz", + "integrity": "sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.5.tgz", + "integrity": "sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.5.tgz", + "integrity": "sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.5.tgz", + "integrity": "sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.5.tgz", + "integrity": "sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.5.tgz", + "integrity": "sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.5.tgz", + "integrity": "sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.4.tgz", + "integrity": "sha512-JkTZrl6VbyO8lDQO3yv26nNr2RM2yZzNrNHEsj9bm6dOwwu9OYN28CjzZkH57bh4w0I2F7IodpQvUAEd1mbWXg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.5.tgz", + "integrity": "sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.5.tgz", + "integrity": "sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.5.tgz", + "integrity": "sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.5.tgz", + "integrity": "sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/@hono/node-server": { - "version": "1.14.3", + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.11.tgz", + "integrity": "sha512-dr8/3zEaB+p0D2n/IUrlPF1HZm586qgJNXK1a9fhg/PzdtkK7Ksd5l312tJX2yBuALqDYBlG20QEbayqPyxn+g==", "license": "MIT", "engines": { "node": ">=18.14.1" @@ -109,23 +516,30 @@ }, "node_modules/@jridgewell/sourcemap-codec": { "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", "license": "MIT" }, "node_modules/@luxass/strip-json-comments": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@luxass/strip-json-comments/-/strip-json-comments-1.4.0.tgz", + "integrity": "sha512-Zl343to4u/t8jz1q7R/1UY6hLX+344cwPLEXsIYthVwdU5zyjuVBGcpf2E24+QZkwFfRfmnHTcscreQzWn3hiA==", "license": "MIT", "engines": { "node": ">=18" } }, "node_modules/@marko/compiler": { - "version": "5.39.55", + "version": "5.39.62", + "resolved": "https://registry.npmjs.org/@marko/compiler/-/compiler-5.39.62.tgz", + "integrity": "sha512-aBmWraqvVMLzi3oZkm5cEAVTv4qtLIVl9tkci6M+duSaEbKq4+n9FuNjYlOA0/4slRmOeAOuYyi2BenzgKmQNA==", "license": "MIT", + "peer": true, "dependencies": { "@luxass/strip-json-comments": "^1.4.0", "complain": "^1.6.1", "he": "^1.2.0", - "htmljs-parser": "^5.7.4", + "htmljs-parser": "^5.10.2", "jsesc": "^3.1.0", "kleur": "^4.1.5", "lasso-package-root": "^1.0.1", @@ -141,11 +555,14 @@ } }, "node_modules/@marko/runtime-tags": { - "version": "6.0.145", + "version": "6.0.159", + "resolved": "https://registry.npmjs.org/@marko/runtime-tags/-/runtime-tags-6.0.159.tgz", + "integrity": "sha512-gtw2oiqLKb1mbC+gsupbXL/BVBshNH2maDbiJ8s4L6BSmFlxkSmqJgkl6l6aCvoXqMh7PRqRZArwpT5RN9/Tpw==", "license": "MIT", "dependencies": { - "@marko/compiler": "^5.39.53", + "@marko/compiler": "^5.39.62", "csstype": "^3.2.3", + "fastest-levenshtein": "^1.0.16", "magic-string": "^0.30.21" }, "engines": { @@ -154,6 +571,8 @@ }, "node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": { "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.3.tgz", + "integrity": "sha512-QZHtlVgbAdy2zAqNA9Gu1UpIuI8Xvsd1v8ic6B2pZmeFnFcMWiPLfWXh7TVw4eGEZ/C9TH281KwhVoeQUKbyjw==", "cpu": [ "arm64" ], @@ -163,6 +582,71 @@ "darwin" ] }, + "node_modules/@msgpackr-extract/msgpackr-extract-darwin-x64": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.3.tgz", + "integrity": "sha512-mdzd3AVzYKuUmiWOQ8GNhl64/IoFGol569zNRdkLReh6LRLHOXxU4U8eq0JwaD8iFHdVGqSy4IjFL4reoWCDFw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.3.tgz", + "integrity": "sha512-fg0uy/dG/nZEXfYilKoRe7yALaNmHoYeIoJuJ7KJ+YyU2bvY8vPv27f7UKhGRpY6euFYqEVhxCFZgAUNQBM3nw==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm64": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.3.tgz", + "integrity": "sha512-YxQL+ax0XqBJDZiKimS2XQaf+2wDGVa1enVRGzEvLLVFeqa5kx2bWbtcSXgsxjQB7nRqqIGFIcLteF/sHeVtQg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-linux-x64": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.3.tgz", + "integrity": "sha512-cvwNfbP07pKUfq1uH+S6KJ7dT9K8WOE4ZiAcsrSes+UY55E/0jLYc+vq+DO7jlmqRb5zAggExKm0H7O/CBaesg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@msgpackr-extract/msgpackr-extract-win32-x64": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.3.tgz", + "integrity": "sha512-x0fWaQtYp4E6sktbsdAqnehxDgEc/VwM7uLsRCYWaiGu0ykYdZPiS8zCWdnjHwyiumousxfBm4SO31eXqwEZhQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, "node_modules/@napi-rs/wasm-runtime": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.1.tgz", @@ -179,28 +663,19 @@ "url": "https://github.com/sponsors/Brooooooklyn" } }, - "node_modules/@oxc-project/runtime": { - "version": "0.115.0", - "resolved": "https://registry.npmjs.org/@oxc-project/runtime/-/runtime-0.115.0.tgz", - "integrity": "sha512-Rg8Wlt5dCbXhQnsXPrkOjL1DTSvXLgb2R/KYfnf1/K+R0k6UMLEmbQXPM+kwrWqSmWA2t0B1EtHy2/3zikQpvQ==", - "license": "MIT", - "engines": { - "node": "^20.19.0 || >=22.12.0" - } - }, "node_modules/@oxc-project/types": { - "version": "0.115.0", - "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.115.0.tgz", - "integrity": "sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw==", + "version": "0.120.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.120.0.tgz", + "integrity": "sha512-k1YNu55DuvAip/MGE1FTsIuU3FUCn6v/ujG9V7Nq5Df/kX2CWb13hhwD0lmJGMGqE+bE1MXvv9SZVnMzEXlWcg==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/Boshen" } }, "node_modules/@rolldown/binding-android-arm64": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.9.tgz", - "integrity": "sha512-lcJL0bN5hpgJfSIz/8PIf02irmyL43P+j1pTCfbD1DbLkmGRuFIA4DD3B3ZOvGqG0XiVvRznbKtN0COQVaKUTg==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.10.tgz", + "integrity": "sha512-jOHxwXhxmFKuXztiu1ORieJeTbx5vrTkcOkkkn2d35726+iwhrY1w/+nYY/AGgF12thg33qC3R1LMBF5tHTZHg==", "cpu": [ "arm64" ], @@ -214,9 +689,9 @@ } }, "node_modules/@rolldown/binding-darwin-arm64": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.9.tgz", - "integrity": "sha512-J7Zk3kLYFsLtuH6U+F4pS2sYVzac0qkjcO5QxHS7OS7yZu2LRs+IXo+uvJ/mvpyUljDJ3LROZPoQfgBIpCMhdQ==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.10.tgz", + "integrity": "sha512-gED05Teg/vtTZbIJBc4VNMAxAFDUPkuO/rAIyyxZjTj1a1/s6z5TII/5yMGZ0uLRCifEtwUQn8OlYzuYc0m70w==", "cpu": [ "arm64" ], @@ -230,9 +705,9 @@ } }, "node_modules/@rolldown/binding-darwin-x64": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.9.tgz", - "integrity": "sha512-iwtmmghy8nhfRGeNAIltcNXzD0QMNaaA5U/NyZc1Ia4bxrzFByNMDoppoC+hl7cDiUq5/1CnFthpT9n+UtfFyg==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.10.tgz", + "integrity": "sha512-rI15NcM1mA48lqrIxVkHfAqcyFLcQwyXWThy+BQ5+mkKKPvSO26ir+ZDp36AgYoYVkqvMcdS8zOE6SeBsR9e8A==", "cpu": [ "x64" ], @@ -246,9 +721,9 @@ } }, "node_modules/@rolldown/binding-freebsd-x64": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.9.tgz", - "integrity": "sha512-DLFYI78SCiZr5VvdEplsVC2Vx53lnA4/Ga5C65iyldMVaErr86aiqCoNBLl92PXPfDtUYjUh+xFFor40ueNs4Q==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.10.tgz", + "integrity": "sha512-XZRXHdTa+4ME1MuDVp021+doQ+z6Ei4CCFmNc5/sKbqb8YmkiJdj8QKlV3rCI0AJtAeSB5n0WGPuJWNL9p/L2w==", "cpu": [ "x64" ], @@ -262,9 +737,9 @@ } }, "node_modules/@rolldown/binding-linux-arm-gnueabihf": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.9.tgz", - "integrity": "sha512-CsjTmTwd0Hri6iTw/DRMK7kOZ7FwAkrO4h8YWKoX/kcj833e4coqo2wzIFywtch/8Eb5enQ/lwLM7w6JX1W5RQ==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.10.tgz", + "integrity": "sha512-R0SQMRluISSLzFE20sPWYHVmJdDQnRyc/FzSCN72BqQmh2SOZUFG+N3/vBZpR4C6WpEUVYJLrYUXaj43sJsNLA==", "cpu": [ "arm" ], @@ -278,9 +753,9 @@ } }, "node_modules/@rolldown/binding-linux-arm64-gnu": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.9.tgz", - "integrity": "sha512-2x9O2JbSPxpxMDhP9Z74mahAStibTlrBMW0520+epJH5sac7/LwZW5Bmg/E6CXuEF53JJFW509uP+lSedaUNxg==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.10.tgz", + "integrity": "sha512-Y1reMrV/o+cwpduYhJuOE3OMKx32RMYCidf14y+HssARRmhDuWXJ4yVguDg2R/8SyyGNo+auzz64LnPK9Hq6jg==", "cpu": [ "arm64" ], @@ -294,9 +769,9 @@ } }, "node_modules/@rolldown/binding-linux-arm64-musl": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.9.tgz", - "integrity": "sha512-JA1QRW31ogheAIRhIg9tjMfsYbglXXYGNPLdPEYrwFxdbkQCAzvpSCSHCDWNl4hTtrol8WeboCSEpjdZK8qrCg==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.10.tgz", + "integrity": "sha512-vELN+HNb2IzuzSBUOD4NHmP9yrGwl1DVM29wlQvx1OLSclL0NgVWnVDKl/8tEks79EFek/kebQKnNJkIAA4W2g==", "cpu": [ "arm64" ], @@ -310,9 +785,9 @@ } }, "node_modules/@rolldown/binding-linux-ppc64-gnu": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.9.tgz", - "integrity": "sha512-aOKU9dJheda8Kj8Y3w9gnt9QFOO+qKPAl8SWd7JPHP+Cu0EuDAE5wokQubLzIDQWg2myXq2XhTpOVS07qqvT+w==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.0-rc.10.tgz", + "integrity": "sha512-ZqrufYTgzxbHwpqOjzSsb0UV/aV2TFIY5rP8HdsiPTv/CuAgCRjM6s9cYFwQ4CNH+hf9Y4erHW1GjZuZ7WoI7w==", "cpu": [ "ppc64" ], @@ -326,9 +801,9 @@ } }, "node_modules/@rolldown/binding-linux-s390x-gnu": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.9.tgz", - "integrity": "sha512-OalO94fqj7IWRn3VdXWty75jC5dk4C197AWEuMhIpvVv2lw9fiPhud0+bW2ctCxb3YoBZor71QHbY+9/WToadA==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.0-rc.10.tgz", + "integrity": "sha512-gSlmVS1FZJSRicA6IyjoRoKAFK7IIHBs7xJuHRSmjImqk3mPPWbR7RhbnfH2G6bcmMEllCt2vQ/7u9e6bBnByg==", "cpu": [ "s390x" ], @@ -342,9 +817,9 @@ } }, "node_modules/@rolldown/binding-linux-x64-gnu": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.9.tgz", - "integrity": "sha512-cVEl1vZtBsBZna3YMjGXNvnYYrOJ7RzuWvZU0ffvJUexWkukMaDuGhUXn0rjnV0ptzGVkvc+vW9Yqy6h8YX4pg==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.10.tgz", + "integrity": "sha512-eOCKUpluKgfObT2pHjztnaWEIbUabWzk3qPZ5PuacuPmr4+JtQG4k2vGTY0H15edaTnicgU428XW/IH6AimcQw==", "cpu": [ "x64" ], @@ -358,9 +833,9 @@ } }, "node_modules/@rolldown/binding-linux-x64-musl": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.9.tgz", - "integrity": "sha512-UzYnKCIIc4heAKgI4PZ3dfBGUZefGCJ1TPDuLHoCzgrMYPb5Rv6TLFuYtyM4rWyHM7hymNdsg5ik2C+UD9VDbA==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.10.tgz", + "integrity": "sha512-Xdf2jQbfQowJnLcgYfD/m0Uu0Qj5OdxKallD78/IPPfzaiaI4KRAwZzHcKQ4ig1gtg1SuzC7jovNiM2TzQsBXA==", "cpu": [ "x64" ], @@ -374,9 +849,9 @@ } }, "node_modules/@rolldown/binding-openharmony-arm64": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.9.tgz", - "integrity": "sha512-+6zoiF+RRyf5cdlFQP7nm58mq7+/2PFaY2DNQeD4B87N36JzfF/l9mdBkkmTvSYcYPE8tMh/o3cRlsx1ldLfog==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.10.tgz", + "integrity": "sha512-o1hYe8hLi1EY6jgPFyxQgQ1wcycX+qz8eEbVmot2hFkgUzPxy9+kF0u0NIQBeDq+Mko47AkaFFaChcvZa9UX9Q==", "cpu": [ "arm64" ], @@ -390,9 +865,9 @@ } }, "node_modules/@rolldown/binding-wasm32-wasi": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.9.tgz", - "integrity": "sha512-rgFN6sA/dyebil3YTlL2evvi/M+ivhfnyxec7AccTpRPccno/rPoNlqybEZQBkcbZu8Hy+eqNJCqfBR8P7Pg8g==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.10.tgz", + "integrity": "sha512-Ugv9o7qYJudqQO5Y5y2N2SOo6S4WiqiNOpuQyoPInnhVzCY+wi/GHltcLHypG9DEUYMB0iTB/huJrpadiAcNcA==", "cpu": [ "wasm32" ], @@ -406,9 +881,9 @@ } }, "node_modules/@rolldown/binding-win32-arm64-msvc": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.9.tgz", - "integrity": "sha512-lHVNUG/8nlF1IQk1C0Ci574qKYyty2goMiPlRqkC5R+3LkXDkL5Dhx8ytbxq35m+pkHVIvIxviD+TWLdfeuadA==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.10.tgz", + "integrity": "sha512-7UODQb4fQUNT/vmgDZBl3XOBAIOutP5R3O/rkxg0aLfEGQ4opbCgU5vOw/scPe4xOqBwL9fw7/RP1vAMZ6QlAQ==", "cpu": [ "arm64" ], @@ -422,9 +897,9 @@ } }, "node_modules/@rolldown/binding-win32-x64-msvc": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.9.tgz", - "integrity": "sha512-G0oA4+w1iY5AGi5HcDTxWsoxF509hrFIPB2rduV5aDqS9FtDg1CAfa7V34qImbjfhIcA8C+RekocJZA96EarwQ==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.10.tgz", + "integrity": "sha512-PYxKHMVHOb5NJuDL53vBUl1VwUjymDcYI6rzpIni0C9+9mTiJedvUxSk7/RPp7OOAm3v+EjgMu9bIy3N6b408w==", "cpu": [ "x64" ], @@ -438,9 +913,9 @@ } }, "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.9.tgz", - "integrity": "sha512-w6oiRWgEBl04QkFZgmW+jnU1EC9b57Oihi2ot3HNWIQRqgHp5PnYDia5iZ5FF7rpa4EQdiqMDXjlqKGXBhsoXw==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.10.tgz", + "integrity": "sha512-UkVDEFk1w3mveXeKgaTuYfKWtPbvgck1dT8TUG3bnccrH0XtLTuAyfCoks4Q/M5ZGToSVJTIQYCzy2g/atAOeg==", "license": "MIT" }, "node_modules/@standard-schema/spec": { @@ -451,6 +926,8 @@ }, "node_modules/@svta/common-media-library": { "version": "0.12.4", + "resolved": "https://registry.npmjs.org/@svta/common-media-library/-/common-media-library-0.12.4.tgz", + "integrity": "sha512-9EuOoaNmz7JrfGwjsrD9SxF9otU5TNMnbLu1yU4BeLK0W5cDxVXXR58Z89q9u2AnHjIctscjMTYdlqQ1gojTuw==", "license": "Apache-2.0" }, "node_modules/@tybys/wasm-util": { @@ -495,10 +972,13 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "24.0.10", + "version": "24.12.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.0.tgz", + "integrity": "sha512-GYDxsZi3ChgmckRT9HPU0WEhKLP08ev/Yfcq2AstjrDASOYCSXeyjDsHg4v5t4jOj7cyDX3vmprafKlWIG9MXQ==", "license": "MIT", + "peer": true, "dependencies": { - "undici-types": "~7.8.0" + "undici-types": "~7.16.0" } }, "node_modules/@vitest/expect": { @@ -592,14 +1072,20 @@ }, "node_modules/app-module-path": { "version": "2.2.0", + "resolved": "https://registry.npmjs.org/app-module-path/-/app-module-path-2.2.0.tgz", + "integrity": "sha512-gkco+qxENJV+8vFcDiiFhuoSvRXb2a/QPqpSoWhVz829VNJfOTnELbBmPmNKFxf3xdNnw4DWCkzkDaavcX/1YQ==", "license": "BSD-2-Clause" }, "node_modules/argly": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/argly/-/argly-1.2.0.tgz", + "integrity": "sha512-+F3InkcH2XOGK7Jf/ZQis4cwZ4wbfmpBKo5J+SAA9bglT1gVd0e9hroHWarU076pJrAfs8JKuRPwDqwPBOKHnw==", "license": "MIT" }, "node_modules/assertion-error": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", "license": "MIT", "engines": { "node": "*" @@ -607,17 +1093,14 @@ }, "node_modules/balanced-match": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "license": "MIT" }, - "node_modules/baseline-browser-mapping": { - "version": "2.9.19", - "license": "Apache-2.0", - "bin": { - "baseline-browser-mapping": "dist/cli.js" - } - }, "node_modules/bcp-47": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/bcp-47/-/bcp-47-2.1.0.tgz", + "integrity": "sha512-9IIS3UPrvIa1Ej+lVDdDwO7zLehjqsaByECw0bu2RRGP73jALm6FYbzI5gWbgHLvNdkvfXB5YrSbocZdOS0c0w==", "license": "MIT", "dependencies": { "is-alphabetical": "^2.0.0", @@ -631,6 +1114,8 @@ }, "node_modules/bcp-47-match": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/bcp-47-match/-/bcp-47-match-2.0.3.tgz", + "integrity": "sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==", "license": "MIT", "funding": { "type": "github", @@ -639,6 +1124,8 @@ }, "node_modules/bcp-47-normalize": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/bcp-47-normalize/-/bcp-47-normalize-2.3.0.tgz", + "integrity": "sha512-8I/wfzqQvttUFz7HVJgIZ7+dj3vUaIyIxYXaTRP1YWoSDfzt6TUmxaKZeuXR62qBmYr+nvuWINFRl6pZ5DlN4Q==", "license": "MIT", "dependencies": { "bcp-47": "^2.0.0", @@ -651,6 +1138,8 @@ }, "node_modules/brace-expansion": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" @@ -658,63 +1147,20 @@ }, "node_modules/browser-refresh-client": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/browser-refresh-client/-/browser-refresh-client-1.1.4.tgz", + "integrity": "sha512-FM/UzMFsG7wJ1ocxCSl6U7qGAIWASEk+tlvfJLP2Pd1JfS4kQ1r4d5f+nNmQI8fB8sXSD8+u/mWErEkAMxUu3w==", "license": "MIT" }, - "node_modules/browserslist": { - "version": "4.28.1", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "baseline-browser-mapping": "^2.9.0", - "caniuse-lite": "^1.0.30001759", - "electron-to-chromium": "^1.5.263", - "node-releases": "^2.0.27", - "update-browserslist-db": "^1.2.0" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, "node_modules/buffer-from": { "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "license": "MIT" }, - "node_modules/caniuse-lite": { - "version": "1.0.30001770", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, "node_modules/chai": { "version": "3.5.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-3.5.0.tgz", + "integrity": "sha512-eRYY0vPS2a9zt5w5Z0aCeWbrXTEyvk7u/Xf71EzNObrjSCPgMm1Nku/D/u2tiqHBX5j40wWhj54YJLtgn8g55A==", "license": "MIT", "dependencies": { "assertion-error": "^1.0.1", @@ -727,10 +1173,14 @@ }, "node_modules/codem-isoboxer": { "version": "0.3.10", + "resolved": "https://registry.npmjs.org/codem-isoboxer/-/codem-isoboxer-0.3.10.tgz", + "integrity": "sha512-eNk3TRV+xQMJ1PEj0FQGY8KD4m0GPxT487XJ+Iftm7mVa9WpPFDMWqPt+46buiP5j5Wzqe5oMIhqBcAeKfygSA==", "license": "MIT" }, "node_modules/complain": { "version": "1.6.1", + "resolved": "https://registry.npmjs.org/complain/-/complain-1.6.1.tgz", + "integrity": "sha512-WsiVAbAPcPSwyC5k8g/PLceaW0MXJUw61KqBd9uiyDOSuDIC6Ho/EbyhdFjeV6wq44R2g/b8IFpvV/1ZyXiqUQ==", "license": "MIT", "dependencies": { "error-stack-parser": "^2.0.1" @@ -744,10 +1194,14 @@ }, "node_modules/csstype": { "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", "license": "MIT" }, "node_modules/dashjs": { "version": "5.0.3", + "resolved": "https://registry.npmjs.org/dashjs/-/dashjs-5.0.3.tgz", + "integrity": "sha512-TXndNnCUjFjF2nYBxDVba+hWRpVkadkQ8flLp7kHkem+5+wZTfRShJCnVkPUosmjS0YPE9fVNLbYPJxHBeQZvA==", "license": "BSD-3-Clause", "dependencies": { "@svta/common-media-library": "^0.12.4", @@ -764,6 +1218,8 @@ }, "node_modules/deep-eql": { "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-0.1.3.tgz", + "integrity": "sha512-6sEotTRGBFiNcqVoeHwnfopbSpi5NbH1VWJmYCVkmxMmaVTT0bUTrNaGyBwhgP4MZL012W/mkzIn3Da+iDYweg==", "license": "MIT", "dependencies": { "type-detect": "0.1.1" @@ -774,28 +1230,32 @@ }, "node_modules/deep-eql/node_modules/type-detect": { "version": "0.1.1", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-0.1.1.tgz", + "integrity": "sha512-5rqszGVwYgBoDkIm2oUtvkfZMQ0vk29iDMU0W2qCa3rG0vPDNczCMT4hV/bLBgLg8k8ri6+u3Zbt+S/14eMzlA==", "license": "MIT", "engines": { "node": "*" } }, "node_modules/detect-libc": { - "version": "2.0.4", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", "license": "Apache-2.0", "engines": { "node": ">=8" } }, "node_modules/devalue": { - "version": "5.6.2", + "version": "5.6.4", + "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.6.4.tgz", + "integrity": "sha512-Gp6rDldRsFh/7XuouDbxMH3Mx8GMCcgzIb1pDTvNyn8pZGQ22u+Wa+lGV9dQCltFQ7uVw0MhRyb8XDskNFOReA==", "license": "MIT" }, - "node_modules/electron-to-chromium": { - "version": "1.5.286", - "license": "ISC" - }, "node_modules/error-stack-parser": { "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", "license": "MIT", "dependencies": { "stackframe": "^1.3.4" @@ -809,8 +1269,11 @@ }, "node_modules/esbuild": { "version": "0.25.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.5.tgz", + "integrity": "sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==", "hasInstallScript": true, "license": "MIT", + "peer": true, "bin": { "esbuild": "bin/esbuild" }, @@ -845,397 +1308,6 @@ "@esbuild/win32-x64": "0.25.5" } }, - "node_modules/esbuild/node_modules/@esbuild/aix-ppc64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.5.tgz", - "integrity": "sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==", - "cpu": [ - "ppc64" - ], - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/android-arm": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.5.tgz", - "integrity": "sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/android-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.5.tgz", - "integrity": "sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/android-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.5.tgz", - "integrity": "sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/darwin-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.5.tgz", - "integrity": "sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.5.tgz", - "integrity": "sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/freebsd-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.5.tgz", - "integrity": "sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-arm": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.5.tgz", - "integrity": "sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==", - "cpu": [ - "arm" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.5.tgz", - "integrity": "sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-ia32": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.5.tgz", - "integrity": "sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==", - "cpu": [ - "ia32" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-loong64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.5.tgz", - "integrity": "sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==", - "cpu": [ - "loong64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-mips64el": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.5.tgz", - "integrity": "sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==", - "cpu": [ - "mips64el" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-ppc64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.5.tgz", - "integrity": "sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==", - "cpu": [ - "ppc64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-riscv64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.5.tgz", - "integrity": "sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==", - "cpu": [ - "riscv64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-s390x": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.5.tgz", - "integrity": "sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==", - "cpu": [ - "s390x" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.5.tgz", - "integrity": "sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.5.tgz", - "integrity": "sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/netbsd-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.5.tgz", - "integrity": "sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.5.tgz", - "integrity": "sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/openbsd-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.5.tgz", - "integrity": "sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/sunos-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.5.tgz", - "integrity": "sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/win32-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.5.tgz", - "integrity": "sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/win32-ia32": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.5.tgz", - "integrity": "sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==", - "cpu": [ - "ia32" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild/node_modules/@esbuild/win32-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.5.tgz", - "integrity": "sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/estree-walker": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", @@ -1247,6 +1319,8 @@ }, "node_modules/events-light": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/events-light/-/events-light-1.0.5.tgz", + "integrity": "sha512-jF51LJzg5W+tkJgfZbjlbFCLcyVFEtOjU+xMCBylrXG13X5XHvfp6lNGfyBLF9u1mRTpUsMVYqSDukvpZff1mQ==", "license": "MIT", "dependencies": { "chai": "^3.5.0" @@ -1263,8 +1337,19 @@ }, "node_modules/fast-deep-equal": { "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "license": "MIT" }, + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "license": "MIT", + "engines": { + "node": ">= 4.9.1" + } + }, "node_modules/fdir": { "version": "6.5.0", "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", @@ -1284,6 +1369,9 @@ }, "node_modules/fsevents": { "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, "license": "MIT", "optional": true, "os": [ @@ -1295,6 +1383,8 @@ }, "node_modules/he": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", "license": "MIT", "bin": { "he": "bin/he" @@ -1302,17 +1392,24 @@ }, "node_modules/hls.js": { "version": "1.6.5", + "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.6.5.tgz", + "integrity": "sha512-KMn5n7JBK+olC342740hDPHnGWfE8FiHtGMOdJPfUjRdARTWj9OB+8c13fnsf9sk1VtpuU2fKSgUjHvg4rNbzQ==", "license": "Apache-2.0" }, "node_modules/hono": { - "version": "4.11.9", + "version": "4.12.8", + "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.8.tgz", + "integrity": "sha512-VJCEvtrezO1IAR+kqEYnxUOoStaQPGrCmX3j4wDTNOcD1uRPFpGlwQUIW8niPuvHXaTUxeOUl5MMDGrl+tmO9A==", "license": "MIT", + "peer": true, "engines": { "node": ">=16.9.0" } }, "node_modules/html-entities": { "version": "2.6.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", "funding": [ { "type": "github", @@ -1326,15 +1423,21 @@ "license": "MIT" }, "node_modules/htmljs-parser": { - "version": "5.10.0", + "version": "5.10.2", + "resolved": "https://registry.npmjs.org/htmljs-parser/-/htmljs-parser-5.10.2.tgz", + "integrity": "sha512-Db/pHZehPxGD8Cy0NvACoMfnVQqfgEiK7z+7cuEDOeJdnzuomyaw3I31A+1uoZmS6IjvTD5iuFA+XL2LE+SieA==", "license": "MIT" }, "node_modules/immediate": { "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "license": "MIT" }, "node_modules/imsc": { "version": "1.1.5", + "resolved": "https://registry.npmjs.org/imsc/-/imsc-1.1.5.tgz", + "integrity": "sha512-V8je+CGkcvGhgl2C1GlhqFFiUOIEdwXbXLiu1Fcubvvbo+g9inauqT3l0pNYXGoLPBj3jxtZz9t+wCopMkwadQ==", "license": "BSD-2-Clause", "dependencies": { "sax": "1.2.1" @@ -1342,6 +1445,8 @@ }, "node_modules/is-alphabetical": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", + "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", "license": "MIT", "funding": { "type": "github", @@ -1350,6 +1455,8 @@ }, "node_modules/is-alphanumerical": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", + "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", "license": "MIT", "dependencies": { "is-alphabetical": "^2.0.0", @@ -1362,6 +1469,8 @@ }, "node_modules/is-decimal": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", + "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", "license": "MIT", "funding": { "type": "github", @@ -1370,6 +1479,8 @@ }, "node_modules/jsesc": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "license": "MIT", "bin": { "jsesc": "bin/jsesc" @@ -1380,6 +1491,8 @@ }, "node_modules/kleur": { "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", "license": "MIT", "engines": { "node": ">=6" @@ -1387,6 +1500,8 @@ }, "node_modules/lasso-caching-fs": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/lasso-caching-fs/-/lasso-caching-fs-1.0.2.tgz", + "integrity": "sha512-mudop0s8U3tLm3Fn9lhiZsiELpLeJToEo6RlDLdph7vWRxL9Sz0o+9WUw1IwlpCYXv/P0CLsMYWFgPwIKWEYvg==", "license": "Apache-2.0", "dependencies": { "raptor-async": "^1.1.2" @@ -1394,6 +1509,8 @@ }, "node_modules/lasso-package-root": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lasso-package-root/-/lasso-package-root-1.0.1.tgz", + "integrity": "sha512-j6LnauNCldqSDvOxoKpD6sTzudPGMiwcZQbySoF9KvJ0lD9Dp2t6QZF8kC0jbUDHuQPiAo5RuQ/mC3AGXscUYA==", "license": "Apache-2.0", "dependencies": { "lasso-caching-fs": "^1.0.0" @@ -1401,6 +1518,8 @@ }, "node_modules/lie": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", + "integrity": "sha512-RiNhHysUjhrDQntfYSfY4MU24coXXdEOgw9WGcKHNeEwffDYbF//u87M1EWaMGzuFoSbqW0C9C6lEEhDOAswfw==", "license": "MIT", "dependencies": { "immediate": "~3.0.5" @@ -1657,10 +1776,14 @@ }, "node_modules/listener-tracker": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/listener-tracker/-/listener-tracker-2.0.0.tgz", + "integrity": "sha512-U6NLzBRyrAsJs9AAjuBYifXtNYnAIDPIp81rNpxNoypXBR7qi/LhsuUWX5399zuTg1sBEQyOnWDYFrBQ28vk/w==", "license": "Apache-2.0" }, "node_modules/localforage": { "version": "1.10.0", + "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.10.0.tgz", + "integrity": "sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==", "license": "Apache-2.0", "dependencies": { "lie": "3.1.1" @@ -1668,17 +1791,21 @@ }, "node_modules/magic-string": { "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", "license": "MIT", "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "node_modules/marko": { - "version": "5.38.24", + "version": "5.38.33", + "resolved": "https://registry.npmjs.org/marko/-/marko-5.38.33.tgz", + "integrity": "sha512-e056TGqKjTE9CyO76eSlYLKk7P9z9uu0VGXt1Z3OrceCz728SCP/UhTas55ru9sNqihZEJ+vwv4ApwVwUsbtNg==", "license": "MIT", "dependencies": { - "@marko/compiler": "^5.39.53", - "@marko/runtime-tags": "^6.0.145", + "@marko/compiler": "^5.39.62", + "@marko/runtime-tags": "^6.0.159", "app-module-path": "^2.2.0", "argly": "^1.2.0", "browser-refresh-client": "1.1.4", @@ -1701,10 +1828,12 @@ } }, "node_modules/minimatch": { - "version": "9.0.5", + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", + "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", "license": "ISC", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^2.0.2" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -1715,6 +1844,8 @@ }, "node_modules/msgpackr": { "version": "1.11.5", + "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.11.5.tgz", + "integrity": "sha512-UjkUHN0yqp9RWKy0Lplhh+wlpdt9oQBYgULZOiFhV3VclSF1JnSQWZ5r9gORQlNYaUKQoR8itv7g7z1xDDuACA==", "license": "MIT", "optionalDependencies": { "msgpackr-extract": "^3.0.2" @@ -1722,6 +1853,8 @@ }, "node_modules/msgpackr-extract": { "version": "3.0.3", + "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.3.tgz", + "integrity": "sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==", "hasInstallScript": true, "license": "MIT", "optional": true, @@ -1760,6 +1893,8 @@ }, "node_modules/node-gyp-build-optional-packages": { "version": "5.2.2", + "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.2.2.tgz", + "integrity": "sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw==", "license": "MIT", "optional": true, "dependencies": { @@ -1771,10 +1906,6 @@ "node-gyp-build-optional-packages-test": "build-test.js" } }, - "node_modules/node-releases": { - "version": "2.0.27", - "license": "MIT" - }, "node_modules/obug": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/obug/-/obug-2.1.1.tgz", @@ -1787,6 +1918,8 @@ }, "node_modules/path-browserify": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", "license": "MIT" }, "node_modules/pathe": { @@ -1797,6 +1930,8 @@ }, "node_modules/picocolors": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "license": "ISC" }, "node_modules/picomatch": { @@ -1804,6 +1939,7 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "license": "MIT", + "peer": true, "engines": { "node": ">=12" }, @@ -1813,6 +1949,8 @@ }, "node_modules/playwright": { "version": "1.58.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.58.2.tgz", + "integrity": "sha512-vA30H8Nvkq/cPBnNw4Q8TWz1EJyqgpuinBcHET0YVJVFldr8JDNiU9LaWAE1KqSkRYazuaBhTpB5ZzShOezQ6A==", "license": "Apache-2.0", "dependencies": { "playwright-core": "1.58.2" @@ -1829,6 +1967,8 @@ }, "node_modules/playwright-core": { "version": "1.58.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.58.2.tgz", + "integrity": "sha512-yZkEtftgwS8CsfYo7nm0KE8jsvm6i/PTgVtB8DL726wNf6H2IMsDuxCpJj59KDaxCtSnrWan2AeDqM7JBaultg==", "license": "Apache-2.0", "bin": { "playwright-core": "cli.js" @@ -1867,35 +2007,45 @@ }, "node_modules/raptor-async": { "version": "1.1.3", + "resolved": "https://registry.npmjs.org/raptor-async/-/raptor-async-1.1.3.tgz", + "integrity": "sha512-VZCxygWMjW9lKqnApK9D2QbfyzRn7ehiTqnXWwMCLBXANSy+xbnYfbX/5f8YX3bZXu+g+JESmqWPchIQrZj2ig==", "license": "Apache License v2.0" }, "node_modules/raptor-regexp": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/raptor-regexp/-/raptor-regexp-1.0.1.tgz", + "integrity": "sha512-DqC7ViHJUs3jLIxJI1/HVvCu3yPJaP8CM7PGsHvjimg7yJ3lLOdCBxlPE0G2Q8OJgUA8Pe7nvhm6lcQ3hZepow==", "license": "Apache License v2.0" }, "node_modules/raptor-util": { "version": "3.2.0", + "resolved": "https://registry.npmjs.org/raptor-util/-/raptor-util-3.2.0.tgz", + "integrity": "sha512-uEDMMkBCJvjTqYMBnJNxn+neiS6a0rhybQNA9RaexGor1uvKjwyHA5VcbZMZEuqXhKUWbL+WNS7PhuZVZNB7pw==", "license": "Apache-2.0" }, "node_modules/relative-import-path": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/relative-import-path/-/relative-import-path-1.0.0.tgz", + "integrity": "sha512-ZvbtoduKQmD4PZeJPfH6Ql21qUWhaMxiHkIsH+FUnZqKDwNIXBtGg5zRZyHWomiGYk8n5+KMBPK7Mi4D0XWfNg==", "license": "MIT" }, "node_modules/resolve-from": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/rolldown": { - "version": "1.0.0-rc.9", - "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.9.tgz", - "integrity": "sha512-9EbgWge7ZH+yqb4d2EnELAntgPTWbfL8ajiTW+SyhJEC4qhBbkCKbqFV4Ge4zmu5ziQuVbWxb/XwLZ+RIO7E8Q==", + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.10.tgz", + "integrity": "sha512-q7j6vvarRFmKpgJUT8HCAUljkgzEp4LAhPlJUvQhA5LA1SUL36s5QCysMutErzL3EbNOZOkoziSx9iZC4FddKA==", "license": "MIT", "dependencies": { - "@oxc-project/types": "=0.115.0", - "@rolldown/pluginutils": "1.0.0-rc.9" + "@oxc-project/types": "=0.120.0", + "@rolldown/pluginutils": "1.0.0-rc.10" }, "bin": { "rolldown": "bin/cli.mjs" @@ -1904,29 +2054,33 @@ "node": "^20.19.0 || >=22.12.0" }, "optionalDependencies": { - "@rolldown/binding-android-arm64": "1.0.0-rc.9", - "@rolldown/binding-darwin-arm64": "1.0.0-rc.9", - "@rolldown/binding-darwin-x64": "1.0.0-rc.9", - "@rolldown/binding-freebsd-x64": "1.0.0-rc.9", - "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.9", - "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.9", - "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.9", - "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.9", - "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.9", - "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.9", - "@rolldown/binding-linux-x64-musl": "1.0.0-rc.9", - "@rolldown/binding-openharmony-arm64": "1.0.0-rc.9", - "@rolldown/binding-wasm32-wasi": "1.0.0-rc.9", - "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.9", - "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.9" + "@rolldown/binding-android-arm64": "1.0.0-rc.10", + "@rolldown/binding-darwin-arm64": "1.0.0-rc.10", + "@rolldown/binding-darwin-x64": "1.0.0-rc.10", + "@rolldown/binding-freebsd-x64": "1.0.0-rc.10", + "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.10", + "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.10", + "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.10", + "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.10", + "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.10", + "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.10", + "@rolldown/binding-linux-x64-musl": "1.0.0-rc.10", + "@rolldown/binding-openharmony-arm64": "1.0.0-rc.10", + "@rolldown/binding-wasm32-wasi": "1.0.0-rc.10", + "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.10", + "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.10" } }, "node_modules/sax": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", + "integrity": "sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==", "license": "ISC" }, "node_modules/self-closing-tags": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/self-closing-tags/-/self-closing-tags-1.0.1.tgz", + "integrity": "sha512-7t6hNbYMxM+VHXTgJmxwgZgLGktuXtVVD5AivWzNTdJBM4DBjnDKDzkf2SrNjihaArpeJYNjxkELBu1evI4lQA==", "license": "MIT", "engines": { "node": ">=0.12.0" @@ -1938,6 +2092,15 @@ "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", "license": "ISC" }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/source-map-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", @@ -1949,19 +2112,14 @@ }, "node_modules/source-map-support": { "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "license": "MIT", "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" } }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/stackback": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", @@ -1970,6 +2128,8 @@ }, "node_modules/stackframe": { "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", "license": "MIT" }, "node_modules/std-env": { @@ -2027,6 +2187,8 @@ }, "node_modules/type-detect": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-1.0.0.tgz", + "integrity": "sha512-f9Uv6ezcpvCQjJU0Zqbg+65qdcszv3qUQsZfjdRbWiZ7AMenrX1u0lNk9EoWWX6e1F+NULyg27mtdeZ5WhpljA==", "license": "MIT", "engines": { "node": "*" @@ -2047,6 +2209,8 @@ }, "node_modules/ua-parser-js": { "version": "1.0.41", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.41.tgz", + "integrity": "sha512-LbBDqdIC5s8iROCUjMbW1f5dJQTEFB1+KO9ogbvlb3nm9n4YHa5p4KTvFPWvh2Hs8gZMBuiB1/8+pdfe/tDPug==", "funding": [ { "type": "opencollective", @@ -2070,44 +2234,20 @@ } }, "node_modules/undici-types": { - "version": "7.8.0", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", "license": "MIT" }, "node_modules/unique-names-generator": { "version": "4.7.1", + "resolved": "https://registry.npmjs.org/unique-names-generator/-/unique-names-generator-4.7.1.tgz", + "integrity": "sha512-lMx9dX+KRmG8sq6gulYYpKWZc9RlGsgBR6aoO8Qsm3qvkSJ+3rAymr+TnV8EDMrIrwuFJ4kruzMWM/OpYzPoow==", "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/update-browserslist-db": { - "version": "1.2.3", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.1" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, "node_modules/vitest": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.1.0.tgz", @@ -2189,6 +2329,406 @@ } } }, + "node_modules/vitest/node_modules/@esbuild/aix-ppc64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.4.tgz", + "integrity": "sha512-cQPwL2mp2nSmHHJlCyoXgHGhbEPMrEEU5xhkcy3Hs/O7nGZqEpZ2sUtLaL9MORLtDfRvVl2/3PAuEkYZH0Ty8Q==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-arm": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.4.tgz", + "integrity": "sha512-X9bUgvxiC8CHAGKYufLIHGXPJWnr0OCdR0anD2e21vdvgCI8lIfqFbnoeOz7lBjdrAGUhqLZLcQo6MLhTO2DKQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.4.tgz", + "integrity": "sha512-gdLscB7v75wRfu7QSm/zg6Rx29VLdy9eTr2t44sfTW7CxwAtQghZ4ZnqHk3/ogz7xao0QAgrkradbBzcqFPasw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/android-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.4.tgz", + "integrity": "sha512-PzPFnBNVF292sfpfhiyiXCGSn9HZg5BcAz+ivBuSsl6Rk4ga1oEXAamhOXRFyMcjwr2DVtm40G65N3GLeH1Lvw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/darwin-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.4.tgz", + "integrity": "sha512-b7xaGIwdJlht8ZFCvMkpDN6uiSmnxxK56N2GDTMYPr2/gzvfdQN8rTfBsvVKmIVY/X7EM+/hJKEIbbHs9oA4tQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/darwin-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.4.tgz", + "integrity": "sha512-sR+OiKLwd15nmCdqpXMnuJ9W2kpy0KigzqScqHI3Hqwr7IXxBp3Yva+yJwoqh7rE8V77tdoheRYataNKL4QrPw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/freebsd-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.4.tgz", + "integrity": "sha512-jnfpKe+p79tCnm4GVav68A7tUFeKQwQyLgESwEAUzyxk/TJr4QdGog9sqWNcUbr/bZt/O/HXouspuQDd9JxFSw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/freebsd-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.4.tgz", + "integrity": "sha512-2kb4ceA/CpfUrIcTUl1wrP/9ad9Atrp5J94Lq69w7UwOMolPIGrfLSvAKJp0RTvkPPyn6CIWrNy13kyLikZRZQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-arm": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.4.tgz", + "integrity": "sha512-aBYgcIxX/wd5n2ys0yESGeYMGF+pv6g0DhZr3G1ZG4jMfruU9Tl1i2Z+Wnj9/KjGz1lTLCcorqE2viePZqj4Eg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.4.tgz", + "integrity": "sha512-7nQOttdzVGth1iz57kxg9uCz57dxQLHWxopL6mYuYthohPKEK0vU0C3O21CcBK6KDlkYVcnDXY099HcCDXd9dA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-ia32": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.4.tgz", + "integrity": "sha512-oPtixtAIzgvzYcKBQM/qZ3R+9TEUd1aNJQu0HhGyqtx6oS7qTpvjheIWBbes4+qu1bNlo2V4cbkISr8q6gRBFA==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-loong64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.4.tgz", + "integrity": "sha512-8mL/vh8qeCoRcFH2nM8wm5uJP+ZcVYGGayMavi8GmRJjuI3g1v6Z7Ni0JJKAJW+m0EtUuARb6Lmp4hMjzCBWzA==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-mips64el": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.4.tgz", + "integrity": "sha512-1RdrWFFiiLIW7LQq9Q2NES+HiD4NyT8Itj9AUeCl0IVCA459WnPhREKgwrpaIfTOe+/2rdntisegiPWn/r/aAw==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-ppc64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.4.tgz", + "integrity": "sha512-tLCwNG47l3sd9lpfyx9LAGEGItCUeRCWeAx6x2Jmbav65nAwoPXfewtAdtbtit/pJFLUWOhpv0FpS6GQAmPrHA==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-riscv64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.4.tgz", + "integrity": "sha512-BnASypppbUWyqjd1KIpU4AUBiIhVr6YlHx/cnPgqEkNoVOhHg+YiSVxM1RLfiy4t9cAulbRGTNCKOcqHrEQLIw==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-s390x": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.4.tgz", + "integrity": "sha512-+eUqgb/Z7vxVLezG8bVB9SfBie89gMueS+I0xYh2tJdw3vqA/0ImZJ2ROeWwVJN59ihBeZ7Tu92dF/5dy5FttA==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/linux-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.4.tgz", + "integrity": "sha512-S5qOXrKV8BQEzJPVxAwnryi2+Iq5pB40gTEIT69BQONqR7JH1EPIcQ/Uiv9mCnn05jff9umq/5nqzxlqTOg9NA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/netbsd-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.4.tgz", + "integrity": "sha512-xHT8X4sb0GS8qTqiwzHqpY00C95DPAq7nAwX35Ie/s+LO9830hrMd3oX0ZMKLvy7vsonee73x0lmcdOVXFzd6Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/netbsd-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.4.tgz", + "integrity": "sha512-RugOvOdXfdyi5Tyv40kgQnI0byv66BFgAqjdgtAKqHoZTbTF2QqfQrFwa7cHEORJf6X2ht+l9ABLMP0dnKYsgg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/openbsd-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.4.tgz", + "integrity": "sha512-2MyL3IAaTX+1/qP0O1SwskwcwCoOI4kV2IBX1xYnDDqthmq5ArrW94qSIKCAuRraMgPOmG0RDTA74mzYNQA9ow==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/openbsd-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.4.tgz", + "integrity": "sha512-u8fg/jQ5aQDfsnIV6+KwLOf1CmJnfu1ShpwqdwC0uA7ZPwFws55Ngc12vBdeUdnuWoQYx/SOQLGDcdlfXhYmXQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/sunos-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.4.tgz", + "integrity": "sha512-/gOzgaewZJfeJTlsWhvUEmUG4tWEY2Spp5M20INYRg2ZKl9QPO3QEEgPeRtLjEWSW8FilRNacPOg8R1uaYkA6g==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-arm64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.4.tgz", + "integrity": "sha512-Z9SExBg2y32smoDQdf1HRwHRt6vAHLXcxD2uGgO/v2jK7Y718Ix4ndsbNMU/+1Qiem9OiOdaqitioZwxivhXYg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-ia32": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.4.tgz", + "integrity": "sha512-DAyGLS0Jz5G5iixEbMHi5KdiApqHBWMGzTtMiJ72ZOLhbu/bzxgAe8Ue8CTS3n3HbIUHQz/L51yMdGMeoxXNJw==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/vitest/node_modules/@esbuild/win32-x64": { + "version": "0.27.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.4.tgz", + "integrity": "sha512-+knoa0BDoeXgkNvvV1vvbZX4+hizelrkwmGJBdT17t8FNPwG2lKemmuMZlmaNQ3ws3DKKCxpb4zRZEIp3UxFCg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, "node_modules/vitest/node_modules/@vitest/mocker": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.1.0.tgz", @@ -2230,16 +2770,16 @@ } }, "node_modules/vitest/node_modules/vite": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.0.tgz", - "integrity": "sha512-fPGaRNj9Zytaf8LEiBhY7Z6ijnFKdzU/+mL8EFBaKr7Vw1/FWcTBAMW0wLPJAGMPX38ZPVCVgLceWiEqeoqL2Q==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.1.tgz", + "integrity": "sha512-wt+Z2qIhfFt85uiyRt5LPU4oVEJBXj8hZNWKeqFG4gRG/0RaRGJ7njQCwzFVjO+v4+Ipmf5CY7VdmZRAYYBPHw==", "license": "MIT", + "peer": true, "dependencies": { - "@oxc-project/runtime": "0.115.0", "lightningcss": "^1.32.0", "picomatch": "^4.0.3", "postcss": "^8.5.8", - "rolldown": "1.0.0-rc.9", + "rolldown": "1.0.0-rc.10", "tinyglobby": "^0.2.15" }, "bin": { @@ -2256,7 +2796,7 @@ }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", - "@vitejs/devtools": "^0.0.0-alpha.31", + "@vitejs/devtools": "^0.1.0", "esbuild": "^0.27.0", "jiti": ">=1.21.0", "less": "^4.0.0", @@ -2309,14 +2849,20 @@ }, "node_modules/vscode-oniguruma": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-2.0.1.tgz", + "integrity": "sha512-poJU8iHIWnC3vgphJnrLZyI3YdqRlR27xzqDmpPXYzA93R4Gk8z7T6oqDzDoHjoikA2aS82crdXFkjELCdJsjQ==", "license": "MIT" }, "node_modules/vscode-textmate": { "version": "9.2.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-9.2.0.tgz", + "integrity": "sha512-rkvG4SraZQaPSN/5XjwKswdU0OP9MF28QjrYzUBbhb8QyG3ljB1Ky996m++jiI7KdiAP2CkBiQZd9pqEDTClqA==", "license": "MIT" }, "node_modules/warp10": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/warp10/-/warp10-2.1.0.tgz", + "integrity": "sha512-krhkqzJdUxAZv2Cx0Gz6dN1r7TTrG9RDewkDHBbJQIqbNTCdB5ZUHVh7VkA4DgrKW4ZXPPUQKCwmI/3btDse9A==", "license": "MIT" }, "node_modules/why-is-node-running": { diff --git a/package.json b/package.json index fb3b5fbf9f36526bd4b06fe8a16fae2336d57e96..4cfacaf0cba601acbccdf6169ce2ed2930fab93f 100644 --- a/package.json +++ b/package.json @@ -3,16 +3,15 @@ "dependencies": { "@clo/lib": "file:lib", "@clo/markodown": "npm:@paperclover/markodown", - "@hono/node-server": "1.14.3", - "@marko/compiler": "^5.39.55", - "@types/node": "24.0.10", - "browserslist": "4.28.1", + "@hono/node-server": "1.19.11", + "@marko/compiler": "5.39.62", + "@types/node": "^24.12.0", "dashjs": "5.0.3", - "devalue": "5.6.2", + "devalue": "5.6.4", "esbuild": "0.25.5", "hls.js": "1.6.5", - "hono": "4.11.9", - "marko": "^5.38.24", + "hono": "4.12.8", + "marko": "5.38.33", "msgpackr": "1.11.5", "playwright": "1.58.2", "source-map-support": "0.5.21", diff --git a/src/backend.ts b/src/backend.ts index 1bccfa6770eb11d794c88d2f8feb37db36ec8abc..dd8050ac18a7d45f0953e6622d69cd2af33b53a1 100644 --- a/src/backend.ts +++ b/src/backend.ts @@ -64,4 +64,4 @@ import { logger } from "hono/logger"; import { trimTrailingSlash } from "hono/trailing-slash"; import * as assets from "#sitegen/assets"; import * as admin from "./admin.ts"; -import * as log from "@clo/lib/log.ts"; +import * as log from "@clo/lib/log"; diff --git a/src/bin/deploy.ts b/src/bin/deploy.ts index 354ff94c5983cee7c86d185a12a3e2a2ca115568..a645a8089fe38fe6572d229a51ee937712fd13e6 100644 --- a/src/bin/deploy.ts +++ b/src/bin/deploy.ts @@ -55,7 +55,7 @@ export async function main() { import * as incr from "../../framework/incremental.ts"; import { generate } from "../../framework/generate.ts"; -import * as progress from "@clo/lib/progress.ts"; -import * as subprocess from "@clo/lib/subprocess.ts"; +import * as progress from "@clo/lib/progress"; +import * as subprocess from "@clo/lib/subprocess"; import * as rsync from "../file-viewer/rsync.ts"; import { Path } from "#sitegen/path"; diff --git a/src/bin/download-db.ts b/src/bin/download-db.ts index 4ade011611d097ef12b32306fb6ed94b6737a8c6..05751e859620811ab95e106b25095785f8b65f90 100644 --- a/src/bin/download-db.ts +++ b/src/bin/download-db.ts @@ -21,6 +21,6 @@ export async function main() { }); } -import * as progress from "@clo/lib/progress.ts"; +import * as progress from "@clo/lib/progress"; import * as rsync from "../file-viewer/rsync.ts"; import { Path } from "#sitegen/path"; diff --git a/src/bin/package-lib.ts b/src/bin/package-lib.ts index a98b2e96f9e39d256f4a67e04539d43bf52e025e..9e855df124509690838b22fd10b5f4006b8874c5 100644 --- a/src/bin/package-lib.ts +++ b/src/bin/package-lib.ts @@ -10,9 +10,9 @@ export async function updateJsrPackageExportsToAll( const newExports: Record = {}; for (const subPath of await fs.readdir(absPath, { recursive: true })) { if (!subPath.match(/\.tsx?$/)) continue; - if (subPath.match(/\.(test|sample)\.tsx?$/)) continue; + if (subPath.startsWith('examples') || subPath.match(/\.(test|sample)\.tsx?$/)) continue; if (subPath.startsWith("dist")) continue; - newExports["./" + subPath] = "./" + subPath; + newExports["./" + subPath.replace(/\.tsx?$/, '')] = "./" + subPath; } deno.exports = Object.fromEntries( Object.entries(newExports).sort(([a], [b]) => a.localeCompare(b)), @@ -21,10 +21,10 @@ export async function updateJsrPackageExportsToAll( } export async function main() { - const main = path.resolve("@clo/lib"); + const main = path.resolve("./lib"); await updateJsrPackageExportsToAll(main, progress); } -import * as progress from "@clo/lib/progress.ts"; +import * as progress from "@clo/lib/progress"; import * as path from "node:path"; import * as fs from "node:fs/promises"; diff --git a/src/blog/localization.tsx b/src/blog/localization.tsx index 6d54ed349e64f597787f41a1f3408aa3232cc3b1..16859e225863daad941858fa1af7899c0925037b 100644 --- a/src/blog/localization.tsx +++ b/src/blog/localization.tsx @@ -31,4 +31,4 @@ export const languages: LanguageMap = { }, }; -import * as render from "@clo/lib/render.ts"; +import * as render from "@clo/lib/render"; diff --git a/src/blog/pages/webdev/one-year-next-app-router/en.mdo b/src/blog/pages/webdev/one-year-next-app-router/en.mdo index 8a188586e809bb49bd6a68f7839b18bdc99bb540..1411f210d1be871de8f63b0de75999e0d105aaaa 100644 --- a/src/blog/pages/webdev/one-year-next-app-router/en.mdo +++ b/src/blog/pages/webdev/one-year-next-app-router/en.mdo @@ -604,7 +604,7 @@ or simply copied into your project. ```tsx // once in your project -import * as meta from "@clo/lib/meta.ts"; +import * as meta from "@clo/lib/meta"; export const defineHead = meta.toTags.bind(null, { // site-wide options diff --git a/src/blog/pages/webdev/one-year-next-app-router/es.mdo b/src/blog/pages/webdev/one-year-next-app-router/es.mdo index caa0d6443c83c58f0f831c7227af78f0fdf74c15..924372014b30c4e71b05ffa04d8fc8bd57cb2345 100644 --- a/src/blog/pages/webdev/one-year-next-app-router/es.mdo +++ b/src/blog/pages/webdev/one-year-next-app-router/es.mdo @@ -628,7 +628,7 @@ una API `meta.toTags` compatible con TanStack que puede instalarse desde ```tsx // una vez en tu proyecto -import * as meta from "@clo/lib/meta.ts"; +import * as meta from "@clo/lib/meta"; export const defineHead = meta.toTags.bind(null, { // opciones para todo el sitio diff --git a/src/blog/pages/webdev/one-year-next-app-router/ko.mdo b/src/blog/pages/webdev/one-year-next-app-router/ko.mdo index 52e5b1a168e496b69604a18f41c769b1cdc3af48..f6169481a949cbbcec7ca57c17aac81bbaa657ea 100644 --- a/src/blog/pages/webdev/one-year-next-app-router/ko.mdo +++ b/src/blog/pages/webdev/one-year-next-app-router/ko.mdo @@ -438,7 +438,7 @@ export default function LinkAdapter({ href, ...rest }: LinkProps) { ```tsx // 프로젝트에 한 번만 -import * as meta from "@clo/lib/meta.ts"; +import * as meta from "@clo/lib/meta"; export const defineHead = meta.toTags.bind(null, { // 사이트 전체 옵션 diff --git a/src/blog/tags/blog-layout.marko b/src/blog/tags/blog-layout.marko index 39df53190a5e66c61a412f2d26871ec5a1b530f8..bf042ff3f071de1a2106ec5daa1976d82dd0f694 100644 --- a/src/blog/tags/blog-layout.marko +++ b/src/blog/tags/blog-layout.marko @@ -104,4 +104,4 @@ import * as markodown from "@clo/markodown"; import Heading from "./heading.marko"; import CodeBlock from "./code-block.marko"; import { Path } from "#sitegen/path"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/src/file-viewer/backend.tsx b/src/file-viewer/backend.tsx index 095dd49391d242f64baf51c04f33123591cd5213..5a39a7ebe9f32845e099eb8799f648fdd707b840 100644 --- a/src/file-viewer/backend.tsx +++ b/src/file-viewer/backend.tsx @@ -313,10 +313,10 @@ function getPartialPage(c: Context, rawFilePath: string) { import { type Context, Hono } from "hono"; -import * as render from "@clo/lib/render.ts"; +import * as render from "@clo/lib/render"; import { etagMatches, serveAsset } from "#sitegen/assets"; import * as view from "#sitegen/view"; -import * as mime from "@clo/lib/mime.ts"; +import * as mime from "@clo/lib/mime"; import { getForFile, requireFriendAuth } from "#src/friend-auth.ts"; import { MediaFile, MediaFileKind } from "#src/file-viewer/models/MediaFile.ts"; @@ -325,5 +325,5 @@ import { MediaPanel } from "#src/file-viewer/views/clofi.tsx"; import { Speedbump } from "#src/file-viewer/cotyledon.tsx"; import * as cache from "#src/file-viewer/cache.ts"; import * as derived from "#src/file-viewer/models/derived.ts"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; import { escapeUri } from "./format.ts"; diff --git a/src/file-viewer/bin/file-scan.ts b/src/file-viewer/bin/file-scan.ts index 3ba5aa34ea81188264d40673ef5663c7f0d1e49d..a04f15dda74d9ee0b28274a90ccc7a224a599a78 100644 --- a/src/file-viewer/bin/file-scan.ts +++ b/src/file-viewer/bin/file-scan.ts @@ -15,7 +15,7 @@ const sotToken = process.env.CLOVER_SOT_KEY; export async function main() { const start = performance.now(); using _ = log.startWidget({ - format: (now) => + format: ({now}) => `paper clover's file scanner [${((now - start) / 1000).toFixed(1)}s]`, }); @@ -49,7 +49,7 @@ export async function main() { const items = (await path.readDir()) .filter((child) => !skipBasename(child.base)) .map((child) => (promises.push(scanDirectory(child)), child.base)); - dirsNode.estimate += items.length; + dirsNode.total += items.length; for (const child of mediaFile?.getChildren() ?? []) { if (items.includes(child.basename)) continue; @@ -186,7 +186,7 @@ export async function main() { using errorHandler = new DisposableStack(); errorHandler.use(node); - node.showEstimate = false; + node.showTotal = false; node.passive = true; const ext = mediaFile.extensionNonEmpty.toLowerCase(); @@ -1024,14 +1024,14 @@ async function scrubLocationMetadata( const monthMilliseconds = 30 * 24 * 60 * 60 * 1000; -import * as async from "@clo/lib/async.ts"; +import * as async from "@clo/lib/async"; import * as fs from "#sitegen/fs"; -import * as subprocess from "@clo/lib/subprocess.ts"; +import * as subprocess from "@clo/lib/subprocess"; import { Path } from "#sitegen/path"; -import * as queue from "../../../lib/queue.ts"; -import * as log from "../../../lib/log.ts"; -import * as progress from "@clo/lib/progress.ts"; -import * as ts from "../../../lib/ts.ts"; +import * as queue from "@clo/lib/queue"; +import * as log from "@clo/lib/log"; +import * as progress from "@clo/lib/progress"; +import * as ts from "@clo/lib/ts"; import * as child_process from "node:child_process"; import * as crypto from "node:crypto"; @@ -1049,10 +1049,10 @@ import { } from "#src/file-viewer/format.ts"; import * as rules from "#src/file-viewer/rules.ts"; import * as highlight from "#src/file-viewer/highlight.ts"; -import * as ffmpeg from "@clo/lib/subprocess/ffmpeg.ts"; +import * as ffmpeg from "@clo/lib/subprocess/ffmpeg"; import * as rsync from "#src/file-viewer/rsync.ts"; import * as derived from "#src/file-viewer/models/derived.ts"; import * as transcodeRules from "#src/file-viewer/transcode-rules.ts"; import { rawFileRoot as root } from "../paths.ts"; -import { ASSERT, UNWRAP } from "@clo/lib/assert.ts"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; diff --git a/src/file-viewer/bin/file-trim.ts b/src/file-viewer/bin/file-trim.ts index e4c411d5e1b86a6a1fbc479ffce8c7d3b378c532..a7780d8195b90c0e4b1ffac7b016a955ccfe1e90 100644 --- a/src/file-viewer/bin/file-trim.ts +++ b/src/file-viewer/bin/file-trim.ts @@ -14,5 +14,5 @@ export async function main() { // TODO: delete unreferenced files } -import * as log from "@clo/lib/log.ts"; +import * as log from "@clo/lib/log"; import * as derived from "../models/derived.ts"; diff --git a/src/file-viewer/cache.ts b/src/file-viewer/cache.ts index 47bb3f002c8d1d08b05d83d7b86e13e2be937239..7d3c7d0223a5af36dd1a1eb3bb6e916b0accd150 100644 --- a/src/file-viewer/cache.ts +++ b/src/file-viewer/cache.ts @@ -600,17 +600,17 @@ async function writeStream( import * as util from "node:util"; import * as fsCallbacks from "node:fs"; import * as fs from "#sitegen/fs"; -import * as async from "@clo/lib/async.ts"; -import * as error from "@clo/lib/error.ts"; +import * as async from "@clo/lib/async"; +import * as error from "@clo/lib/error"; import * as stream from "node:stream"; import * as crypto from "node:crypto"; import * as http from "node:http"; import * as https from "node:https"; import * as paths from "./paths.ts"; -import * as log from "@clo/lib/log.ts"; +import * as log from "@clo/lib/log"; import { MediaFile } from "./models/MediaFile.ts"; import type { ReadableStream } from "node:stream/web"; -import { Lru } from "@clo/lib/Lru.ts"; +import { Lru } from "@clo/lib/Lru"; import { Path } from "#sitegen/path"; -import { ASSERT, UNWRAP } from "@clo/lib/assert.ts"; -import * as ts from "@clo/lib/ts.ts"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; +import * as ts from "@clo/lib/ts"; diff --git a/src/file-viewer/format.ts b/src/file-viewer/format.ts index d4df13bc5c9569ae08464ec9e3406b964e7ba379..b1100d684677514b151825161387c664e90539a6 100644 --- a/src/file-viewer/format.ts +++ b/src/file-viewer/format.ts @@ -288,4 +288,4 @@ export function formatDate(dateTime: Date) { } import type { MediaFile } from "#src/file-viewer/models/MediaFile.ts"; -import { escapeHtml } from "@clo/lib/render.ts"; +import { escapeHtml } from "@clo/lib/render"; diff --git a/src/file-viewer/highlight.ts b/src/file-viewer/highlight.ts index 94e6f340e312456a7ee55282e1b2c84d5415569b..b960076260f4f29bd6d7bae54985427a3ac6eb50 100644 --- a/src/file-viewer/highlight.ts +++ b/src/file-viewer/highlight.ts @@ -215,9 +215,9 @@ export async function highlightCode(code: string, language: Language) { // "tsx", // ); // -import * as async from "@clo/lib/async.ts"; +import * as async from "@clo/lib/async"; import * as fs from "#sitegen/fs"; import * as path from "node:path"; import * as oniguruma from "vscode-oniguruma"; import * as textmate from "vscode-textmate"; -import * as render from "@clo/lib/render.ts"; +import * as render from "@clo/lib/render"; diff --git a/src/file-viewer/models/MediaFile.ts b/src/file-viewer/models/MediaFile.ts index 7d4e2a1c0e987d77db4d6104441c0387524dd921..ef4f919d0cedc3653483e747a5d1c0b8a2c66df2 100644 --- a/src/file-viewer/models/MediaFile.ts +++ b/src/file-viewer/models/MediaFile.ts @@ -464,4 +464,4 @@ const getDirectoriesToReindexQuery = db.prepare(` import { getDb } from "#sitegen/sqlite"; import * as path from "node:path/posix"; import { FilePermissions } from "./FilePermissions.ts"; -import { ASSERT } from "@clo/lib/assert.ts"; +import { ASSERT } from "@clo/lib/assert"; diff --git a/src/file-viewer/models/derived.ts b/src/file-viewer/models/derived.ts index 7549707a50865abe0723fd9c01a12f6cbe94bb5e..899994e7e06c3d0f0ddcbbad9d49f346c1d6c796 100644 --- a/src/file-viewer/models/derived.ts +++ b/src/file-viewer/models/derived.ts @@ -217,6 +217,6 @@ import type { MediaFile } from "./MediaFile.ts"; import { Path } from "#sitegen/path"; import * as fs from "node:fs"; import * as crypto from "node:crypto"; -import * as queue from "@clo/lib/queue.ts"; -import * as progress from "@clo/lib/progress.ts"; -import { ASSERT } from "@clo/lib/assert.ts"; +import * as queue from "@clo/lib/queue"; +import * as progress from "@clo/lib/progress"; +import { ASSERT } from "@clo/lib/assert"; diff --git a/src/file-viewer/rsync.ts b/src/file-viewer/rsync.ts index 73d89300184f6e5bf56c88ecefc0470635b37918..dab380f8827cb3b938849bf6fa9f4753adff5c17 100644 --- a/src/file-viewer/rsync.ts +++ b/src/file-viewer/rsync.ts @@ -183,7 +183,7 @@ export class Parse { import * as child_process from "node:child_process"; import * as readline from "node:readline"; import events from "node:events"; -import * as progress from "@clo/lib/progress.ts"; +import * as progress from "@clo/lib/progress"; import { formatSize } from "#src/file-viewer/format.ts"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; import { Path } from "#sitegen/path"; diff --git a/src/file-viewer/transcode-rules.ts b/src/file-viewer/transcode-rules.ts index 8626d7e2b2991f031a579a6cb42be8cf01eb6a18..4c81c55bb360d8eb6617606d420460377575fad8 100644 --- a/src/file-viewer/transcode-rules.ts +++ b/src/file-viewer/transcode-rules.ts @@ -314,4 +314,4 @@ export function getH264HlsArgs( } import type { Path } from "#sitegen/path"; -import * as ffmpeg from "@clo/lib/subprocess/ffmpeg.ts"; +import * as ffmpeg from "@clo/lib/subprocess/ffmpeg"; diff --git a/src/file-viewer/views/clofi.tsx b/src/file-viewer/views/clofi.tsx index 7e629176c06c9e40fc40d46954c5ca8fb653b1cc..4ee2b09691b7185c412e70449ef2899cae963465 100644 --- a/src/file-viewer/views/clofi.tsx +++ b/src/file-viewer/views/clofi.tsx @@ -936,9 +936,9 @@ import { highlightLinksInTextView, } from "#src/file-viewer/format.ts"; import { ForEveryone } from "#src/file-viewer/cotyledon.tsx"; -import * as mime from "@clo/lib/mime.ts"; +import * as mime from "@clo/lib/mime"; import * as sort from "../sort.ts"; import CloverVideo from "#src/tags/clover-video.marko"; import Image from "#src/tags/image.tsx"; -import * as render from "@clo/lib/render.ts"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import * as render from "@clo/lib/render"; +import { UNWRAP } from "@clo/lib/assert"; diff --git a/src/pages/log.mdo b/src/pages/log.mdo index 0b3fcff0aa62ea751b366917d10b99144b80d827..52402fc3df611c0d4671f162647988ad7e7999a1 100644 --- a/src/pages/log.mdo +++ b/src/pages/log.mdo @@ -10,7 +10,7 @@ static const repo = "${repo}"; [home infra]: https://git.paperclover.net/clo/home-infra [name paint bot]: https://git.paperclover.net/clo/discord-name-painter [next.js blog post]: /blog/webdev/one-year-next-app-router -[progress.ts]: https://jsr.io/@clo/lib/doc/progress.ts +[progress.ts]: https://jsr.io/@clo/lib/doc/progress [this site]: https://paperclover.net/ [todo tracker]: https://git.paperclover.net/clo/todo-tracker [ts lie detector]: https://git.paperclover.net/clo/ts-lie-detector @@ -543,7 +543,7 @@ doing worldbuilding in a song. the imagery is that good. tags: [progress.ts], [todo tracker] -i finished streaming io on the @clo/lib/[progress.ts]. very proud of it. my git +i finished streaming io on [progress.ts]. very proud of it. my git commits describe the tech better than me reiterating. > ## feat(lib/progress): implement streaming wire protocol diff --git a/src/q+a/image.tsx b/src/q+a/image.tsx index 1423eb70c8134ad7817084e4cc17ecd77c64293e..7788bc0a26b28bed5e84f4f7eb24b4e2efa70ecd 100644 --- a/src/q+a/image.tsx +++ b/src/q+a/image.tsx @@ -74,6 +74,6 @@ import * as crypto from "node:crypto"; import * as fs from "#sitegen/fs"; import * as path from "node:path"; import { Question } from "#src/q+a/models/Question.ts"; -import { RefCountedExpirable } from "@clo/lib/async.ts"; +import { RefCountedExpirable } from "@clo/lib/async"; import * as view from "#sitegen/view"; import * as playwright from "playwright"; diff --git a/src/q+a/markdown.tsx b/src/q+a/markdown.tsx index f54e433866a294f1f62cd9c9a1165789bd27c73f..38e3814b4c190dbafce3c036dbf3eed9fe9132b3 100644 --- a/src/q+a/markdown.tsx +++ b/src/q+a/markdown.tsx @@ -76,6 +76,6 @@ export function renderMarkdown(source: string) { } import * as markodown from "@clo/markodown"; -import * as render from "@clo/lib/render.ts"; +import * as render from "@clo/lib/render"; import { artifactMap } from "./artifacts.ts"; import { formatQuestionTimestamp, questionIdToTimestamp } from "./format.ts"; diff --git a/src/q+a/tags/question-layout.marko b/src/q+a/tags/question-layout.marko index df7de2238a4e208db39ad9d77713ddbcc0ecde41..52b21c991171c82c9899d277d3a3a4a4cf5c8d3a 100644 --- a/src/q+a/tags/question-layout.marko +++ b/src/q+a/tags/question-layout.marko @@ -19,4 +19,4 @@ export const theme = { }; import { addScript } from "#sitegen"; -import * as render from "@clo/lib/render.ts"; +import * as render from "@clo/lib/render"; diff --git a/src/site.ts b/src/site.ts index 4492d578b347d37a89c3a771530f1b422eb108c1..1bc8731d5656b33130f7bcecb937482fe9da0835 100644 --- a/src/site.ts +++ b/src/site.ts @@ -123,6 +123,6 @@ export const fonts: sg.Font[] = [ ]; import * as path from "node:path"; -import type { Template as MetaTemplate } from "@clo/lib/render/meta.ts"; +import type { Template as MetaTemplate } from "@clo/lib/render/meta"; import type * as sg from "#sitegen"; import { nasRoot } from "./file-viewer/paths.ts"; diff --git a/src/source-of-truth.ts b/src/source-of-truth.ts index 52fab2e2308562736d0ba5a0573535a99a40d424..7d158fe2ca71e0c5a543ab970c267a59664a77dd 100644 --- a/src/source-of-truth.ts +++ b/src/source-of-truth.ts @@ -111,6 +111,6 @@ import * as fs from "#sitegen/fs"; import * as fsCallbacks from "node:fs"; import * as util from "node:util"; import * as stream from "node:stream"; -import * as mime from "@clo/lib/mime.ts"; +import * as mime from "@clo/lib/mime"; import { derivedFileRoot, rawFileRoot } from "./file-viewer/paths.ts"; -import { ASSERT, UNWRAP } from "@clo/lib/assert.ts"; +import { ASSERT, UNWRAP } from "@clo/lib/assert"; diff --git a/src/tags/clover-video.marko b/src/tags/clover-video.marko index 7018e8ce824666f8834483427756d7a54bc6894a..9995c1004445f7a4f80bef2a2410ae680e3eceba 100644 --- a/src/tags/clover-video.marko +++ b/src/tags/clover-video.marko @@ -70,4 +70,4 @@ export interface Input { client import "./clover-video.client.ts"; import { MediaFile } from "#src/file-viewer/models/MediaFile.ts"; -import { UNWRAP, ASSERT } from "@clo/lib/assert.ts"; +import { UNWRAP, ASSERT } from "@clo/lib/assert"; diff --git a/src/tags/image.tsx b/src/tags/image.tsx index 31b7b1f24fa7df50ef7d6c3b62b916be0e5708c2..92aec5968512fa0116226a4569795e8bb8446f2b 100644 --- a/src/tags/image.tsx +++ b/src/tags/image.tsx @@ -60,6 +60,6 @@ export default function Image( import * as transcodeRules from "#src/file-viewer/transcode-rules.ts"; import { MediaFile } from "#src/file-viewer/models/MediaFile.ts"; import { escapeUri } from "#src/file-viewer/format.ts"; -import { UNWRAP } from "@clo/lib/assert.ts"; +import { UNWRAP } from "@clo/lib/assert"; import { extsVideo } from "#src/file-viewer/rules.ts"; import CloverVideo from "./clover-video.marko"; diff --git a/src/tags/photo-grid.tsx b/src/tags/photo-grid.tsx index 4532da21046c2a3cac63d7c5633f4fd8f32c042e..447ef74fb12ee5878b85fff63c3e941080b9ab12 100644 --- a/src/tags/photo-grid.tsx +++ b/src/tags/photo-grid.tsx @@ -139,4 +139,4 @@ import "./photo-grid.css"; import { MediaFile } from "#src/file-viewer/models/MediaFile.ts"; import Image from "./image.tsx"; import * as path from "node:path"; -import { ASSERT } from "@clo/lib/assert.ts"; +import { ASSERT } from "@clo/lib/assert"; diff --git a/tsconfig.json b/tsconfig.json index 7e507ff7cf07ff22d91286df2a65cc7a48f603e4..7810b1ee4725da3579165b8650a0541c11ccdc04 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,7 +5,7 @@ "incremental": true, "jsx": "react-jsxdev", "jsxImportSource": "#jsx", - "@clo/lib": ["esnext", "es2024", "dom", "dom.iterable"], + "lib": ["esnext", "es2024", "dom", "dom.iterable"], "module": "nodenext", "noEmit": true, "outDir": ".clover/ts", @@ -18,5 +18,5 @@ "resolveJsonModule": true, "types": ["marko"] }, - "include": ["@clo/lib/**/*", "src/**/*", "framework/**/*"] + "include": ["./lib/**/*", "src/**/*", "framework/**/*"] }