diff --git a/.github/workflows/monkey-ci.yml b/.github/workflows/monkey-ci.yml
index 02217993414e..7038729134ec 100644
--- a/.github/workflows/monkey-ci.yml
+++ b/.github/workflows/monkey-ci.yml
@@ -7,8 +7,6 @@ env:
permissions:
contents: read
- issues: write
- pull-requests: write
on:
pull_request:
@@ -39,7 +37,7 @@ jobs:
if: github.event_name != 'pull_request'
- name: Detect changes
- uses: dorny/paths-filter@v3
+ uses: dorny/paths-filter@v4
id: filter
with:
filters: |
@@ -55,17 +53,11 @@ jobs:
- 'packages/**/*'
anti-cheat:
- 'backend/**/anticheat/**'
- workflows:
- - '.github/workflows/**/*'
- name: Check Anti-cheat
if: steps.filter.outputs.anti-cheat == 'true' && !contains(github.event.pull_request.labels.*.name, 'force-ci') && !contains(github.event.pull_request.labels.*.name, 'force-full-ci')
run: exit 1
- - name: Check Workflow Changes
- if: steps.filter.outputs.workflows == 'true' && !contains(github.event.pull_request.labels.*.name, 'force-ci') && !contains(github.event.pull_request.labels.*.name, 'force-full-ci')
- run: exit 1
-
- name: Export changes
id: export-changes
run: |
@@ -232,7 +224,7 @@ jobs:
frontend
packages
- - uses: dorny/paths-filter@v3
+ - uses: dorny/paths-filter@v4
id: filter
with:
filters: |
@@ -336,7 +328,6 @@ jobs:
run: npm run test-pkg
on-failure:
- permissions: write-all
name: on-failure
runs-on: ubuntu-latest
needs: [ci-be, ci-fe, ci-assets, ci-pkg]
diff --git a/backend/__tests__/api/controllers/user.spec.ts b/backend/__tests__/api/controllers/user.spec.ts
index 0a20e957523f..d9e0cf7610e5 100644
--- a/backend/__tests__/api/controllers/user.spec.ts
+++ b/backend/__tests__/api/controllers/user.spec.ts
@@ -193,7 +193,7 @@ describe("user controller test", () => {
],
});
});
- it("should fail if username contains profanity", async () => {
+ it("should fail if username contains disallowed word", async () => {
//GIVEN
const newUser = {
uid: uid,
@@ -212,7 +212,7 @@ describe("user controller test", () => {
expect(body).toEqual({
message: "Invalid request data schema",
validationErrors: [
- '"name" Profanity detected. Please remove it. If you believe this is a mistake, please contact us. (miodec)',
+ '"name" Disallowed word detected. Please remove it. If you believe this is a mistake, please contact us (miodec).',
],
});
});
@@ -277,7 +277,7 @@ describe("user controller test", () => {
});
expect(userIsNameAvailableMock).toHaveBeenCalledWith("bob", uid);
});
- it("returns 422 if username contains profanity", async () => {
+ it("returns 422 if username contains disallowed word", async () => {
await mockApp
.get("/users/checkName/newMiodec")
//no authentication required
@@ -1139,7 +1139,7 @@ describe("user controller test", () => {
validationErrors: ["Unrecognized key(s) in object: 'extra'"],
});
});
- it("should fail if username contains profanity", async () => {
+ it("should fail if username contains disallowed word", async () => {
//WHEN
const { body } = await mockApp
.patch("/users/name")
@@ -1151,7 +1151,7 @@ describe("user controller test", () => {
expect(body).toEqual({
message: "Invalid request data schema",
validationErrors: [
- '"name" Profanity detected. Please remove it. If you believe this is a mistake, please contact us. (miodec)',
+ '"name" Disallowed word detected. Please remove it. If you believe this is a mistake, please contact us (miodec).',
],
});
});
@@ -3310,7 +3310,7 @@ describe("user controller test", () => {
expect.objectContaining({}),
);
});
- it("should fail with profanity", async () => {
+ it("should fail with disallowed word", async () => {
//WHEN
const { body } = await mockApp
.patch("/users/profile")
@@ -3330,11 +3330,11 @@ describe("user controller test", () => {
expect(body).toEqual({
message: "Invalid request data schema",
validationErrors: [
- '"bio" Profanity detected. Please remove it. If you believe this is a mistake, please contact us. (miodec)',
- '"keyboard" Profanity detected. Please remove it. If you believe this is a mistake, please contact us. (miodec)',
- '"socialProfiles.twitter" Profanity detected. Please remove it. If you believe this is a mistake, please contact us. (miodec)',
- '"socialProfiles.github" Profanity detected. Please remove it. If you believe this is a mistake, please contact us. (miodec)',
- '"socialProfiles.website" Profanity detected. Please remove it. If you believe this is a mistake, please contact us. (https://i-luv-miodec.com)',
+ '"bio" Disallowed word detected. Please remove it. If you believe this is a mistake, please contact us (miodec).',
+ '"keyboard" Disallowed word detected. Please remove it. If you believe this is a mistake, please contact us (miodec).',
+ '"socialProfiles.twitter" Disallowed word detected. Please remove it. If you believe this is a mistake, please contact us (miodec).',
+ '"socialProfiles.github" Disallowed word detected. Please remove it. If you believe this is a mistake, please contact us (miodec).',
+ '"socialProfiles.website" Disallowed word detected. Please remove it. If you believe this is a mistake, please contact us (https://i-luv-miodec.com).',
],
});
});
diff --git a/backend/package.json b/backend/package.json
index e61c6aa79af4..b6e74485af04 100644
--- a/backend/package.json
+++ b/backend/package.json
@@ -15,8 +15,8 @@
"integration-test": "vitest run --project=integration --project=integration-isolated",
"test-coverage": "vitest run --coverage",
"dev": "concurrently -p none \"tsx watch --clear-screen=false --inspect ./src/server.ts\" \"tsc --preserveWatchOutput --noEmit --watch\" \"esw src/ -w --ext .ts --cache --color\"",
- "docker-db-only": "docker compose -f docker/compose.db-only.yml up",
- "docker": "docker compose -f docker/compose.yml up",
+ "docker-db-only": "docker compose --env-file .env -f docker/compose.db-only.yml up",
+ "docker": "docker compose --env-file .env -f docker/compose.yml up",
"gen-docs": "tsx scripts/openapi.ts dist/static/api/openapi.json && redocly build-docs -o dist/static/api/internal.html internal@v2 && redocly bundle -o dist/static/api/public.json public-filter && redocly build-docs -o dist/static/api/public.html public@v2"
},
"dependencies": {
@@ -45,7 +45,7 @@
"mjml": "4.15.0",
"mongodb": "6.3.0",
"mustache": "4.2.0",
- "nodemailer": "7.0.11",
+ "nodemailer": "8.0.4",
"object-hash": "3.0.0",
"prom-client": "15.1.3",
"rate-limiter-flexible": "5.0.3",
diff --git a/docs/CONTRIBUTING_ADVANCED.md b/docs/CONTRIBUTING_ADVANCED.md
index d0cf0dd7899d..242e1940023a 100644
--- a/docs/CONTRIBUTING_ADVANCED.md
+++ b/docs/CONTRIBUTING_ADVANCED.md
@@ -102,6 +102,8 @@ Follow these steps if you want to work on anything involving the database/accoun
1. Inside the backend folder, copy `example.env` to `.env` in the same directory.
+ - The backend Docker scripts read port bindings from this file. If `27017`, `6379`, or `5005` are already in use on your machine, update `DOCKER_DB_PORT`, `DOCKER_REDIS_PORT`, and `DOCKER_SERVER_PORT` before starting Docker.
+
2. Setup the database server
| Manual | Docker (recommended) |
@@ -139,7 +141,7 @@ npm run dev
| ---------------- | ------------------------------- |
| `npm run dev-fe` | `cd frontend && npm run docker` |
-These commands will start a local development website on [port 3000](http://localhost:3000) and a local development server on [port 5005](http://localhost:5005). They will automatically rebuild the website/server when you make changes in the `src/` directory. Use Ctrl+C to stop them.
+By default, these commands will start a local development website on [port 3000](http://localhost:3000) and a local development server on [port 5005](http://localhost:5005). They will automatically rebuild the website/server when you make changes in the `src/` directory. Use Ctrl+C to stop them.
> [!NOTE]
> Rebuilding doesn't happen instantaneously and depends on your machine, so be patient for changes to appear.
diff --git a/frontend/__tests__/components/ui/form/InputField.spec.tsx b/frontend/__tests__/components/ui/form/InputField.spec.tsx
index 4e79a6509cea..0bd301410072 100644
--- a/frontend/__tests__/components/ui/form/InputField.spec.tsx
+++ b/frontend/__tests__/components/ui/form/InputField.spec.tsx
@@ -23,13 +23,6 @@ function makeField(name: string, value = "") {
}
describe("InputField", () => {
- it("uses field name as default placeholder", () => {
- const field = makeField("username");
- render(() => field} />);
-
- expect(screen.getByPlaceholderText("username")).toBeInTheDocument();
- });
-
it("uses custom placeholder when provided", () => {
const field = makeField("email");
render(() => field} placeholder="Enter email" />);
diff --git a/frontend/package.json b/frontend/package.json
index 4a2fe35290e1..e00e56ad219d 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -101,7 +101,7 @@
"eslint-plugin-solid": "0.14.5",
"firebase-tools": "13.15.1",
"fontawesome-subset": "4.4.0",
- "happy-dom": "20.0.10",
+ "happy-dom": "20.8.9",
"jsdom": "27.4.0",
"madge": "8.0.0",
"magic-string": "0.30.17",
@@ -117,7 +117,7 @@
"tsx": "4.21.0",
"typescript": "6.0.2",
"unplugin-inject-preload": "3.0.0",
- "vite": "8.0.1",
+ "vite": "8.0.5",
"vite-bundle-visualizer": "1.2.1",
"vite-plugin-html-inject": "1.1.2",
"vite-plugin-inspect": "11.3.3",
diff --git a/frontend/src/ts/commandline/commandline.ts b/frontend/src/ts/commandline/commandline.ts
index baddf180a06d..d542fabbe132 100644
--- a/frontend/src/ts/commandline/commandline.ts
+++ b/frontend/src/ts/commandline/commandline.ts
@@ -172,6 +172,7 @@ export function show(
await showCommands();
await updateActiveCommand();
setTimeout(() => {
+ lastActiveIndex = undefined;
keepActiveCommandInView();
if (showInputCommand) {
const escaped =
@@ -488,6 +489,11 @@ async function showCommands(): Promise {
for (const command of list) {
if (command.found !== true) continue;
+
+ if (command.isActive && firstActive === null && inputValue === "") {
+ firstActive = index;
+ }
+
let customStyle = "";
if (command.customStyle !== undefined && command.customStyle !== "") {
customStyle = command.customStyle;
diff --git a/frontend/src/ts/components/modals/CustomTextModal.tsx b/frontend/src/ts/components/modals/CustomTextModal.tsx
index efad688d7f52..ae856a66868d 100644
--- a/frontend/src/ts/components/modals/CustomTextModal.tsx
+++ b/frontend/src/ts/components/modals/CustomTextModal.tsx
@@ -481,6 +481,7 @@ export function CustomTextModal(): JSXElement {
min length
- {(field) => (
-
- )}
+ {(field) => }
max length
- {(field) => (
-
- )}
+ {(field) => }
include
- {(field) => }
+ {(field) => }
exclude
{(field) => (
-
+
)}
diff --git a/frontend/src/ts/components/pages/login/Login.tsx b/frontend/src/ts/components/pages/login/Login.tsx
index 32c5636c728e..c07e9b44c9e3 100644
--- a/frontend/src/ts/components/pages/login/Login.tsx
+++ b/frontend/src/ts/components/pages/login/Login.tsx
@@ -106,6 +106,7 @@ export function Login(): JSXElement {
children={(field) => (
@@ -116,6 +117,7 @@ export function Login(): JSXElement {
children={(field) => (
(
(
(
(
props.field().handleBlur()}
onInput={(e) => props.field().handleChange(e.currentTarget.value)}
diff --git a/frontend/src/ts/constants/languages.ts b/frontend/src/ts/constants/languages.ts
index d4e645a9bc91..99ef9860be58 100644
--- a/frontend/src/ts/constants/languages.ts
+++ b/frontend/src/ts/constants/languages.ts
@@ -374,6 +374,7 @@ export const LanguageGroups: Record = {
"code_cuda",
],
viossa: ["viossa", "viossa_njutro"],
+ kokanu: ["kokanu", "likanu"],
};
export type LanguageGroupName = keyof typeof LanguageGroups;
diff --git a/frontend/src/ts/db.ts b/frontend/src/ts/db.ts
index 5468b27c9b92..d07e2f126c58 100644
--- a/frontend/src/ts/db.ts
+++ b/frontend/src/ts/db.ts
@@ -218,7 +218,7 @@ export async function initSnapshot(): Promise {
snap.tags =
userData.tags?.map((tag) => ({
...tag,
- display: tag.name.replaceAll("_", " "),
+ display: tag.name.replace(/_/g, " "),
})) ?? [];
snap.tags = snap.tags?.sort((a, b) => {
@@ -235,7 +235,7 @@ export async function initSnapshot(): Promise {
const presetsWithDisplay = presetsData.map((preset) => {
return {
...preset,
- display: preset.name.replace(/_/gi, " "),
+ display: preset.name.replace(/_/g, " "),
};
}) as SnapshotPreset[];
snap.presets = presetsWithDisplay;
diff --git a/frontend/src/ts/elements/account/result-filters.ts b/frontend/src/ts/elements/account/result-filters.ts
index cc1a78ea7065..e2ccf7ecc702 100644
--- a/frontend/src/ts/elements/account/result-filters.ts
+++ b/frontend/src/ts/elements/account/result-filters.ts
@@ -187,7 +187,6 @@ function addFilterPresetToSnapshot(filter: ResultFilters): void {
export async function createFilterPreset(
name: string,
): Promise {
- name = name.replace(/ /g, "_");
showLoaderBar();
const result = await Ape.users.addResultFilterPreset({
body: { ...filters, name },
diff --git a/frontend/src/ts/input/handlers/insert-text.ts b/frontend/src/ts/input/handlers/insert-text.ts
index 4b577eece08c..6c0eef3c833b 100644
--- a/frontend/src/ts/input/handlers/insert-text.ts
+++ b/frontend/src/ts/input/handlers/insert-text.ts
@@ -174,7 +174,7 @@ export async function onInsertText(options: OnInsertTextParams): Promise {
if (Config.keymapMode === "react") {
flash(data, correct);
}
- if (testInput.length === 0) {
+ if (testInput.length === 0 && !isCompositionEnding) {
TestInput.setBurstStart(now);
}
if (!shouldGoToNextWord) {
diff --git a/frontend/src/ts/input/listeners/composition.ts b/frontend/src/ts/input/listeners/composition.ts
index f8ed5ebda1e0..c43568e1b6a7 100644
--- a/frontend/src/ts/input/listeners/composition.ts
+++ b/frontend/src/ts/input/listeners/composition.ts
@@ -2,6 +2,7 @@ import { getInputElement } from "../input-element";
import * as CompositionState from "../../legacy-states/composition";
import * as TestState from "../../test/test-state";
import * as TestLogic from "../../test/test-logic";
+import * as TestInput from "../../test/test-input";
import { setLastInsertCompositionTextData } from "../state";
import * as CompositionDisplay from "../../elements/composition-display";
import { onInsertText } from "../handlers/insert-text";
@@ -22,6 +23,9 @@ inputEl.addEventListener("compositionstart", (event) => {
if (!TestState.isActive) {
TestLogic.startTest(performance.now());
}
+ if (TestInput.input.current.length === 0) {
+ TestInput.setBurstStart(performance.now());
+ }
});
inputEl.addEventListener("compositionupdate", (event) => {
diff --git a/frontend/src/ts/modals/edit-preset.ts b/frontend/src/ts/modals/edit-preset.ts
index de8d82d4b574..6b4d3f6e54d7 100644
--- a/frontend/src/ts/modals/edit-preset.ts
+++ b/frontend/src/ts/modals/edit-preset.ts
@@ -26,6 +26,7 @@ import { ValidatedHtmlInputElement } from "../elements/input-validation";
import { ElementWithUtils } from "../utils/dom";
import { configMetadata } from "../config/metadata";
import { getConfigChanges as getConfigChangesFromConfig } from "../config/utils";
+import { normalizeName } from "../utils/strings";
const state = {
presetType: "full" as PresetType,
@@ -46,7 +47,12 @@ export function show(action: string, id?: string, name?: string): void {
presetNameEl ??= new ValidatedHtmlInputElement(
modalEl.qsr("input[type=text]"),
{
- schema: PresetNameSchema,
+ isValid: async (name) => {
+ const parsed = PresetNameSchema.safeParse(normalizeName(name));
+ if (parsed.success) return true;
+ return parsed.error.errors.map((err) => err.message).join(", ");
+ },
+ debounceDelay: 0,
},
);
if (action === "add") {
@@ -66,7 +72,7 @@ export function show(action: string, id?: string, name?: string): void {
modalEl.setAttribute("data-preset-id", id);
modalEl.qsr(".popupTitle").setHtml("Edit preset");
modalEl.qsr(".submit").setHtml(`save`);
- presetNameEl?.setValue(name.replaceAll(" ", "_"));
+ presetNameEl?.setValue(name);
presetNameEl?.getParent()?.show();
modalEl.qsa("input").show();
@@ -221,7 +227,7 @@ function hide(): void {
async function apply(): Promise {
const modalEl = modal.getModal();
const action = modalEl.getAttribute("data-action");
- const presetName = modalEl
+ const propPresetName = modalEl
.qsr(".group input[title='presets']")
.getValue() as string;
const presetId = modalEl.getAttribute("data-preset-id") as string;
@@ -248,22 +254,24 @@ async function apply(): Promise {
}
const addOrEditAction = action === "add" || action === "edit";
- if (addOrEditAction) {
- //validate the preset name only in add or edit mode
- const noPresetName: boolean =
- presetName.replace(/^_+|_+$/g, "").length === 0; //all whitespace names are rejected
- if (noPresetName) {
- showNoticeNotification("Preset name cannot be empty");
- return;
- }
+ if (addOrEditAction && propPresetName.trim().length === 0) {
+ showNoticeNotification("Preset name cannot be empty");
+ return;
+ }
- if (presetNameEl?.getValidationResult().status === "failed") {
- showNoticeNotification("Preset name is not valid");
- return;
- }
+ const cleanedPresetName = normalizeName(propPresetName);
+ const parsedPresetName = addOrEditAction
+ ? PresetNameSchema.safeParse(cleanedPresetName)
+ : null;
+
+ if (parsedPresetName && !parsedPresetName.success) {
+ showNoticeNotification("Preset name is not valid");
+ return;
}
+ const presetName = parsedPresetName?.data ?? "";
+
hide();
showLoaderBar();
@@ -291,7 +299,7 @@ async function apply(): Promise {
...(state.presetType === "partial" && {
settingGroups: activeSettingGroups,
}),
- display: presetName.replaceAll("_", " "),
+ display: presetName.replace(/_/g, " "),
_id: response.body.data.presetId,
} as SnapshotPreset);
}
@@ -323,7 +331,7 @@ async function apply(): Promise {
showSuccessNotification("Preset updated");
preset.name = presetName;
- preset.display = presetName.replaceAll("_", " ");
+ preset.display = presetName.replace(/_/g, " ");
if (updateConfig) {
preset.config = configChanges;
if (state.presetType === "partial") {
diff --git a/frontend/src/ts/modals/edit-tag.ts b/frontend/src/ts/modals/edit-tag.ts
index 41bda4879a13..d42507fd7d76 100644
--- a/frontend/src/ts/modals/edit-tag.ts
+++ b/frontend/src/ts/modals/edit-tag.ts
@@ -6,14 +6,14 @@ import { SimpleModal, TextInput } from "../elements/simple-modal";
import { TagNameSchema } from "@monkeytype/schemas/users";
import { SnapshotUserTag } from "../constants/default-snapshot";
import { IsValidResponse } from "../types/validation";
+import { normalizeName } from "../utils/strings";
function getTagFromSnapshot(tagId: string): SnapshotUserTag | undefined {
return DB.getSnapshot()?.tags.find((tag) => tag._id === tagId);
}
-const cleanTagName = (tagName: string): string => tagName.replaceAll(" ", "_");
const tagNameValidation = async (tagName: string): Promise => {
- const validationResult = TagNameSchema.safeParse(cleanTagName(tagName));
+ const validationResult = TagNameSchema.safeParse(normalizeName(tagName));
if (validationResult.success) return true;
return validationResult.error.errors.map((err) => err.message).join(", ");
};
@@ -32,7 +32,7 @@ const actionModals: Record = {
],
buttonText: "add",
execFn: async (_thisPopup, propTagName) => {
- const tagName = cleanTagName(propTagName);
+ const tagName = TagNameSchema.parse(normalizeName(propTagName));
const response = await Ape.users.createTag({ body: { tagName } });
if (response.status !== 200) {
@@ -46,8 +46,8 @@ const actionModals: Record = {
}
DB.getSnapshot()?.tags?.push({
- display: propTagName,
- name: response.body.data.name,
+ display: tagName.replace(/_/g, " "),
+ name: tagName,
_id: response.body.data._id,
personalBests: {
time: {},
@@ -77,7 +77,7 @@ const actionModals: Record = {
(_thisPopup.inputs[0] as TextInput).initVal = _thisPopup.parameters[0];
},
execFn: async (_thisPopup, propTagName) => {
- const tagName = cleanTagName(propTagName);
+ const tagName = TagNameSchema.parse(normalizeName(propTagName));
const tagId = _thisPopup.parameters[1] as string;
const response = await Ape.users.editTag({
@@ -96,7 +96,7 @@ const actionModals: Record = {
if (matchingTag !== undefined) {
matchingTag.name = tagName;
- matchingTag.display = propTagName;
+ matchingTag.display = tagName.replace(/_/g, " ");
}
void Settings.update();
diff --git a/frontend/src/ts/modals/new-filter-preset.ts b/frontend/src/ts/modals/new-filter-preset.ts
index 3cd94d5b6e23..7a6b6c0efab8 100644
--- a/frontend/src/ts/modals/new-filter-preset.ts
+++ b/frontend/src/ts/modals/new-filter-preset.ts
@@ -1,6 +1,7 @@
import { ResultFiltersSchema } from "@monkeytype/schemas/users";
import { createFilterPreset } from "../elements/account/result-filters";
import { SimpleModal } from "../elements/simple-modal";
+import { normalizeName } from "../utils/strings";
export function show(): void {
newFilterPresetModal.show(undefined, {});
@@ -15,13 +16,23 @@ const newFilterPresetModal = new SimpleModal({
type: "text",
initVal: "",
validation: {
- schema: ResultFiltersSchema.shape.name,
+ isValid: async (name) => {
+ const parsed = ResultFiltersSchema.shape.name.safeParse(
+ normalizeName(name),
+ );
+ if (parsed.success) return true;
+ return parsed.error.errors.map((err) => err.message).join(", ");
+ },
+ debounceDelay: 0,
},
},
],
buttonText: "add",
execFn: async (_thisPopup, name) => {
- const status = await createFilterPreset(name);
+ const cleanedName = ResultFiltersSchema.shape.name.parse(
+ normalizeName(name),
+ );
+ const status = await createFilterPreset(cleanedName);
if (status === 1) {
return { status: "success", message: "Filter preset created" };
diff --git a/frontend/src/ts/test/test-stats.ts b/frontend/src/ts/test/test-stats.ts
index 09b1822c59b5..392683b16781 100644
--- a/frontend/src/ts/test/test-stats.ts
+++ b/frontend/src/ts/test/test-stats.ts
@@ -215,6 +215,7 @@ export function setLastSecondNotRound(): void {
export function calculateBurst(endTime: number = performance.now()): number {
const containsKorean = TestInput.input.getKoreanStatus();
const timeToWrite = (endTime - TestInput.currentBurstStart) / 1000;
+ if (timeToWrite <= 0) return 0;
let wordLength: number;
wordLength = !containsKorean
? TestInput.input.current.length
diff --git a/frontend/src/ts/utils/misc.ts b/frontend/src/ts/utils/misc.ts
index 7428c0d6fca9..0bc03a48e08e 100644
--- a/frontend/src/ts/utils/misc.ts
+++ b/frontend/src/ts/utils/misc.ts
@@ -2,7 +2,7 @@ import { lastElementFromArray } from "./arrays";
import { Config } from "@monkeytype/schemas/configs";
import { Mode, Mode2, PersonalBests } from "@monkeytype/schemas/shared";
import { Result } from "@monkeytype/schemas/results";
-import { RankAndCount } from "@monkeytype/schemas/users";
+import { RankAndCount, UserNameSchema } from "@monkeytype/schemas/users";
import { roundTo2 } from "@monkeytype/util/numbers";
import { animate, AnimationParams } from "animejs";
import { ElementWithUtils } from "./dom";
@@ -147,11 +147,7 @@ export function escapeHTML(str: T): T {
export function isUsernameValid(name: string): boolean {
if (name === null || name === undefined || name === "") return false;
- if (name.toLowerCase().includes("miodec")) return false;
- if (name.toLowerCase().includes("bitly")) return false;
- if (name.length > 14) return false;
- if (/^\..*/.test(name.toLowerCase())) return false;
- return /^[0-9a-zA-Z_.-]+$/.test(name);
+ return UserNameSchema.safeParse(name).success;
}
export function clearTimeouts(timeouts: (number | NodeJS.Timeout)[]): void {
diff --git a/frontend/src/ts/utils/strings.ts b/frontend/src/ts/utils/strings.ts
index 6d134f881407..a79458f176ea 100644
--- a/frontend/src/ts/utils/strings.ts
+++ b/frontend/src/ts/utils/strings.ts
@@ -68,6 +68,14 @@ export function capitalizeFirstLetter(str: string): string {
return str.charAt(0).toUpperCase() + str.slice(1);
}
+/**
+ * Normalizes free-form names to canonical storage format.
+ * Trims edge whitespace and collapses all inner whitespace runs to underscores.
+ */
+export function normalizeName(name: string): string {
+ return name.trim().replace(/\s+/g, "_");
+}
+
/**
* @param text String to split
* @param delimiters Single character delimiters.
@@ -320,10 +328,17 @@ export function areCharactersVisuallyEqual(
}
export function toHex(buffer: ArrayBuffer): string {
- if (Uint8Array.prototype.toHex !== undefined) {
- return new Uint8Array(buffer).toHex();
+ const u8 = new Uint8Array(buffer);
+
+ // Use native toHex if available (modern browsers / future runtimes)
+ if (
+ "toHex" in u8 &&
+ typeof (u8 as { toHex?: unknown }).toHex === "function"
+ ) {
+ return (u8 as unknown as { toHex(): string }).toHex();
}
- const hashArray = Array.from(new Uint8Array(buffer));
+
+ const hashArray = Array.from(u8);
const hashHex = hashArray
.map((b) => b.toString(16).padStart(2, "0"))
.join("");
diff --git a/frontend/static/languages/kokanu.json b/frontend/static/languages/kokanu.json
new file mode 100644
index 000000000000..2c09ab582522
--- /dev/null
+++ b/frontend/static/languages/kokanu.json
@@ -0,0 +1,390 @@
+{
+ "name": "kokanu",
+ "rightToLeft": false,
+ "ligatures": false,
+ "orderedByFrequency": false,
+ "bcp47": "xxs-Lat",
+ "words": [
+ "akala",
+ "akasa",
+ "alu",
+ "amo",
+ "anan",
+ "ani",
+ "ankolo",
+ "anpipi",
+ "antomi",
+ "anwije",
+ "apaki",
+ "asa",
+ "asete",
+ "cakuwa",
+ "canu",
+ "canwa",
+ "cawapu",
+ "ceke",
+ "cele",
+ "cenci",
+ "cenpo",
+ "ci",
+ "cimi",
+ "cina",
+ "cohi",
+ "con",
+ "conca",
+ "conpu",
+ "conto",
+ "cuma",
+ "cune",
+ "cuwi",
+ "eme",
+ "enteken",
+ "etu",
+ "ewin",
+ "ha",
+ "haja",
+ "hakiki",
+ "hakoli",
+ "haluko",
+ "han",
+ "hapijo",
+ "haso",
+ "he",
+ "hela",
+ "hen",
+ "henelo",
+ "hinpan",
+ "hon",
+ "honja",
+ "hoton",
+ "hu",
+ "hukun",
+ "hunsi",
+ "husu",
+ "huwa",
+ "huwonho",
+ "ihamo",
+ "ikama",
+ "ikasi",
+ "ili",
+ "iman",
+ "in",
+ "inalo",
+ "inatan",
+ "inpali",
+ "insu",
+ "ipinto",
+ "ipuwe",
+ "iwe",
+ "ja",
+ "jamin",
+ "jan",
+ "janlu",
+ "jatan",
+ "jati",
+ "je",
+ "joli",
+ "jon",
+ "jone",
+ "ju",
+ "juka",
+ "jutu",
+ "ka",
+ "kaki",
+ "kalan",
+ "kalawa",
+ "kali",
+ "kan",
+ "kanisa",
+ "kanta",
+ "kapan",
+ "kapu",
+ "kate",
+ "katin",
+ "kawa",
+ "kela",
+ "kemika",
+ "kenca",
+ "ki",
+ "kijeta",
+ "kiju",
+ "kike",
+ "kikolo",
+ "kikuwa",
+ "kilima",
+ "kin",
+ "kisa",
+ "kisowa",
+ "ko",
+ "koman",
+ "konco",
+ "konen",
+ "konje",
+ "konkulen",
+ "konpa",
+ "konpute",
+ "kontatu",
+ "kosan",
+ "kosomo",
+ "kota",
+ "kujo",
+ "kuku",
+ "kula",
+ "kumi",
+ "kumon",
+ "kun",
+ "kusa",
+ "kuto",
+ "kuwan",
+ "kuwekan",
+ "kuwosi",
+ "la",
+ "lacito",
+ "laha",
+ "laki",
+ "lamo",
+ "lan",
+ "lanki",
+ "lansa",
+ "lantan",
+ "le",
+ "lekin",
+ "len",
+ "lenka",
+ "leseka",
+ "lije",
+ "lijule",
+ "lika",
+ "lili",
+ "lima",
+ "limijen",
+ "lipan",
+ "lipu",
+ "lisi",
+ "lito",
+ "lo",
+ "loku",
+ "loso",
+ "luka",
+ "lun",
+ "lunti",
+ "luwa",
+ "maciko",
+ "macun",
+ "makan",
+ "maku",
+ "malo",
+ "mamaki",
+ "mani",
+ "matija",
+ "matin",
+ "matuwa",
+ "meja",
+ "melon",
+ "men",
+ "menu",
+ "menwo",
+ "mepu",
+ "mese",
+ "mi",
+ "micin",
+ "mijalo",
+ "mita",
+ "momu",
+ "mona",
+ "moto",
+ "mu",
+ "muku",
+ "mulu",
+ "muncu",
+ "musi",
+ "mutakin",
+ "muwesi",
+ "na",
+ "naki",
+ "nalan",
+ "nalinca",
+ "namu",
+ "namuna",
+ "nan",
+ "nankin",
+ "nanku",
+ "napa",
+ "nase",
+ "ne",
+ "neje",
+ "nelo",
+ "nenka",
+ "nepa",
+ "neso",
+ "niju",
+ "niku",
+ "nile",
+ "nin",
+ "niwa",
+ "no",
+ "non",
+ "nula",
+ "o",
+ "ocota",
+ "oke",
+ "okutu",
+ "onin",
+ "onko",
+ "onton",
+ "opoki",
+ "opotu",
+ "osa",
+ "osole",
+ "otawe",
+ "oti",
+ "pa",
+ "pajan",
+ "pan",
+ "pani",
+ "pankosi",
+ "panli",
+ "pansin",
+ "panta",
+ "papon",
+ "pasan",
+ "pasu",
+ "pata",
+ "patun",
+ "pawo",
+ "peko",
+ "pela",
+ "pelete",
+ "peman",
+ "pen",
+ "penpe",
+ "pese",
+ "pesuwan",
+ "pi",
+ "pice",
+ "picijo",
+ "pijen",
+ "pikante",
+ "pilu",
+ "pinko",
+ "pintu",
+ "po",
+ "polan",
+ "poloko",
+ "polota",
+ "pon",
+ "posa",
+ "powele",
+ "pucon",
+ "puka",
+ "pula",
+ "pulusi",
+ "pumi",
+ "sa",
+ "saka",
+ "sala",
+ "salila",
+ "saman",
+ "saminta",
+ "samo",
+ "san",
+ "sankan",
+ "santi",
+ "sapi",
+ "sapole",
+ "satalan",
+ "satilu",
+ "satu",
+ "se",
+ "sekano",
+ "sema",
+ "sepo",
+ "setan",
+ "sijen",
+ "sikin",
+ "sila",
+ "sin",
+ "sincuwan",
+ "sinsasu",
+ "sinsi",
+ "sipa",
+ "sitija",
+ "sito",
+ "so",
+ "solu",
+ "sone",
+ "sopa",
+ "soto",
+ "suki",
+ "sula",
+ "sun",
+ "sunaja",
+ "sunkan",
+ "suwina",
+ "ta",
+ "tajali",
+ "tajen",
+ "takaha",
+ "takilo",
+ "talika",
+ "talili",
+ "talun",
+ "tamaka",
+ "tamin",
+ "tan",
+ "tapala",
+ "tason",
+ "tasuwi",
+ "tati",
+ "tawawa",
+ "tawe",
+ "te",
+ "teka",
+ "ten",
+ "tene",
+ "teneme",
+ "tenja",
+ "tepu",
+ "tijante",
+ "tiju",
+ "tiku",
+ "tile",
+ "tinki",
+ "tipa",
+ "titan",
+ "titi",
+ "tolu",
+ "tomiwa",
+ "tonko",
+ "tope",
+ "tu",
+ "tuko",
+ "tula",
+ "tun",
+ "tuntan",
+ "tusa",
+ "ujanu",
+ "ukama",
+ "ukiki",
+ "uli",
+ "ulokan",
+ "umami",
+ "umo",
+ "un",
+ "unitu",
+ "usen",
+ "uta",
+ "wa",
+ "waju",
+ "wala",
+ "wan",
+ "wanku",
+ "watan",
+ "wen",
+ "wi",
+ "wija",
+ "wiki",
+ "wisan",
+ "wonpa"
+ ]
+}
diff --git a/frontend/static/languages/likanu.json b/frontend/static/languages/likanu.json
new file mode 100644
index 000000000000..81c5f24189ef
--- /dev/null
+++ b/frontend/static/languages/likanu.json
@@ -0,0 +1,390 @@
+{
+ "name": "likanu",
+ "rightToLeft": false,
+ "ligatures": true,
+ "orderedByFrequency": false,
+ "bcp47": "xxs-Uixs",
+ "words": [
+ "oxʋ",
+ "oxɤ",
+ "oʋſ",
+ "oɞʃ",
+ "oƨ̄",
+ "oƨı",
+ "ōxʃʋʃ",
+ "ōʜıʜı",
+ "ōʌʃɞı",
+ "ōɕıɂȷ",
+ "oʜxı",
+ "oɤ",
+ "oɤȷʌȷ",
+ "ɛxſɕ",
+ "ɛƨſ",
+ "ɛ̄ɕ",
+ "ɛɕʜſ",
+ "ɛȷxȷ",
+ "ɛȷʋȷ",
+ "ɛ̄ȷɛı",
+ "ɛ̄ȷʜʃ",
+ "ɛı",
+ "ɛıɞı",
+ "ɛıƨ",
+ "ɛʃɵı",
+ "ɛ̄ʃ",
+ "ɛ̄ʃɛ",
+ "ɛ̄ʃʜſ",
+ "ɛ̄ʃʌʃ",
+ "ɛſɞ",
+ "ɛſƨȷ",
+ "ɛſɕı",
+ "oȷɞȷ",
+ "ōȷʌȷx̄ȷ",
+ "oȷʌſ",
+ "oȷɕ̄ı",
+ "ɵ",
+ "ɵɂ",
+ "ɵxıxı",
+ "ɵxʃʋı",
+ "ɵʋſxʃ",
+ "ɵ̄",
+ "ɵʜıɂʃ",
+ "ɵɤʃ",
+ "ɵȷ",
+ "ɵȷʋ",
+ "ɵ̄ȷ",
+ "ɵȷƨȷʋʃ",
+ "ɵ̄ıʜ̄",
+ "ɵ̄ʃ",
+ "ɵ̄ʃɂ",
+ "ɵʃʌ̄ʃ",
+ "ɵſ",
+ "ɵſx̄ſ",
+ "ɵ̄ſɤı",
+ "ɵſɤſ",
+ "ɵſɕ",
+ "ɵſɕ̄ʃɵʃ",
+ "oıɵɞʃ",
+ "oıxɞ",
+ "oıxɤı",
+ "oıʋı",
+ "oıɞ̄",
+ "ōı",
+ "oıƨʋʃ",
+ "oıƨʌ̄",
+ "ōıʜʋı",
+ "ōıɤſ",
+ "oıʜ̄ıʌʃ",
+ "oıʜſɕȷ",
+ "oıɕȷ",
+ "ɂ",
+ "ɂɞ̄ı",
+ "ɂ̄",
+ "ɂ̄ʋſ",
+ "ɂʌ̄",
+ "ɂʌı",
+ "ɂȷ",
+ "ɂʃʋı",
+ "ɂ̄ʃ",
+ "ɂʃƨȷ",
+ "ɂſ",
+ "ɂſx",
+ "ɂſʌſ",
+ "x",
+ "xxı",
+ "xʋ̄",
+ "xʋɕ",
+ "xʋı",
+ "x̄",
+ "xƨıɤ",
+ "x̄ʌ",
+ "xʜ̄",
+ "xʜſ",
+ "xʌȷ",
+ "xʌ̄ı",
+ "xɕ",
+ "xȷʋ",
+ "xȷɞıx",
+ "x̄ȷɛ",
+ "xı",
+ "xıɂȷʌ",
+ "xıɂſ",
+ "xıxȷ",
+ "xıxʃʋʃ",
+ "xıxſɕ",
+ "xıʋıɞ",
+ "x̄ı",
+ "xıɤ",
+ "xıɤʃɕ",
+ "xʃ",
+ "xʃɞ̄",
+ "x̄ʃɛʃ",
+ "xʃƨ̄ȷ",
+ "x̄ʃɂȷ",
+ "x̄ʃxſʋ̄ȷ",
+ "x̄ʃʜ",
+ "x̄ʃʜſʌȷ",
+ "x̄ʃʌʌſ",
+ "xʃɤ̄",
+ "xʃɤʃɞʃ",
+ "xʃʌ",
+ "xſɂʃ",
+ "xſxſ",
+ "xſʋ",
+ "xſɞı",
+ "xſɞ̄ʃ",
+ "x̄ſ",
+ "xſɤ",
+ "xſʌʃ",
+ "xſɕ̄",
+ "xſɕȷx̄",
+ "xſɕʃɤı",
+ "ʋ",
+ "ʋɛıʌʃ",
+ "ʋɵ",
+ "ʋxı",
+ "ʋɞʃ",
+ "ʋ̄",
+ "ʋ̄xı",
+ "ʋ̄ɤ",
+ "ʋ̄ʌ̄",
+ "ʋȷ",
+ "ʋȷx̄ı",
+ "ʋ̄ȷ",
+ "ʋ̄ȷx",
+ "ʋȷɤȷx",
+ "ʋıɂȷ",
+ "ʋıɂſʋȷ",
+ "ʋıx",
+ "ʋıʋı",
+ "ʋıɞ",
+ "ʋıɞıɂ̄ȷ",
+ "ʋıʜ̄",
+ "ʋıʜſ",
+ "ʋıɤı",
+ "ʋıʌʃ",
+ "ʋʃ",
+ "ʋʃxſ",
+ "ʋʃɤʃ",
+ "ʋſx",
+ "ʋ̄ſ",
+ "ʋ̄ſʌı",
+ "ʋſɕ",
+ "ɞɛıxʃ",
+ "ɞɛ̄ſ",
+ "ɞx̄",
+ "ɞxſ",
+ "ɞʋʃ",
+ "ɞɞxı",
+ "ɞƨı",
+ "ɞʌıɂ",
+ "ɞʌ̄ı",
+ "ɞʌſɕ",
+ "ɞȷɂ",
+ "ɞȷʋ̄ʃ",
+ "ɞ̄ȷ",
+ "ɞȷƨſ",
+ "ɞ̄ȷɕʃ",
+ "ɞȷʜſ",
+ "ɞȷɤȷ",
+ "ɞı",
+ "ɞıɛ̄ı",
+ "ɞıɂʋʃ",
+ "ɞıʌ",
+ "ɞʃɞſ",
+ "ɞʃƨ",
+ "ɞʃʌʃ",
+ "ɞſ",
+ "ɞſxſ",
+ "ɞſʋſ",
+ "ɞ̄ſɛſ",
+ "ɞſɤı",
+ "ɞſʌx̄ı",
+ "ɞſɕȷɤı",
+ "ƨ",
+ "ƨxı",
+ "ƨʋ̄",
+ "ƨʋ̄ıɛ",
+ "ƨɞſ",
+ "ƨɞſƨ",
+ "ƨ̄",
+ "ƨ̄x̄ı",
+ "ƨ̄xſ",
+ "ƨʜ",
+ "ƨɤȷ",
+ "ƨȷ",
+ "ƨȷɂȷ",
+ "ƨȷʋʃ",
+ "ƨ̄ȷx",
+ "ƨȷʜ",
+ "ƨȷɤʃ",
+ "ƨıɂſ",
+ "ƨıxſ",
+ "ƨıʋȷ",
+ "ƨ̄ı",
+ "ƨıɕ",
+ "ƨʃ",
+ "ƨ̄ʃ",
+ "ƨſʋ",
+ "oʃ",
+ "oʃɛʃʌ",
+ "oʃxȷ",
+ "oʃxſʌſ",
+ "oʃƨ̄ı",
+ "ōʃxʃ",
+ "ōʃʌ̄ʃ",
+ "oʃʜʃxı",
+ "oʃʜʃʌſ",
+ "oʃɤ",
+ "oʃɤʃʋȷ",
+ "oʃʌɕȷ",
+ "oʃʌı",
+ "ʜ",
+ "ʜɂ̄",
+ "ʜ̄",
+ "ʜƨı",
+ "ʜ̄xʃɤı",
+ "ʜ̄ʋı",
+ "ʜ̄ɤ̄ı",
+ "ʜ̄ʌ",
+ "ʜʜ̄ʃ",
+ "ʜɤ̄",
+ "ʜɤſ",
+ "ʜʌ",
+ "ʜʌ̄ſ",
+ "ʜɕʃ",
+ "ʜȷxʃ",
+ "ʜȷʋ",
+ "ʜȷʋȷʌȷ",
+ "ʜȷɞ̄",
+ "ʜ̄ȷ",
+ "ʜ̄ȷʜȷ",
+ "ʜȷɤȷ",
+ "ʜȷɤſɕ̄",
+ "ʜı",
+ "ʜıɛȷ",
+ "ʜıɛıɂʃ",
+ "ʜıɂ̄ȷ",
+ "ʜıx̄ʌȷ",
+ "ʜıʋſ",
+ "ʜ̄ıxʃ",
+ "ʜ̄ıʌſ",
+ "ʜʃ",
+ "ʜʃʋ̄",
+ "ʜʃʋʃxʃ",
+ "ʜʃʋʃʌ",
+ "ʜ̄ʃ",
+ "ʜʃɤ",
+ "ʜʃɕȷʋȷ",
+ "ʜſɛ̄ʃ",
+ "ʜſx",
+ "ʜſʋ",
+ "ʜſʋſɤı",
+ "ʜſɞı",
+ "ɤ",
+ "ɤx",
+ "ɤʋ",
+ "ɤʋıʋ",
+ "ɤɞ̄",
+ "ɤɞ̄ıʌ",
+ "ɤɞʃ",
+ "ɤ̄",
+ "ɤ̄x̄",
+ "ɤ̄ʌı",
+ "ɤʜı",
+ "ɤʜʃʋȷ",
+ "ɤʌʋ̄",
+ "ɤʌıʋſ",
+ "ɤʌſ",
+ "ɤȷ",
+ "ɤȷxƨʃ",
+ "ɤȷɞ",
+ "ɤȷʜʃ",
+ "ɤȷʌ̄",
+ "ɤıɂ̄ȷ",
+ "ɤıx̄ı",
+ "ɤıʋ",
+ "ɤ̄ı",
+ "ɤ̄ıɛſɕ̄",
+ "ɤ̄ıɤɤſ",
+ "ɤ̄ıɤı",
+ "ɤıʜ",
+ "ɤıʌıɂ",
+ "ɤıʌʃ",
+ "ɤʃ",
+ "ɤʃʋſ",
+ "ɤʃƨȷ",
+ "ɤʃʜ",
+ "ɤʃʌʃ",
+ "ɤſxı",
+ "ɤſʋ",
+ "ɤ̄ſ",
+ "ɤſƨɂ",
+ "ɤ̄ſx̄",
+ "ɤſɕıƨ",
+ "ʌ",
+ "ʌɂʋı",
+ "ʌɂ̄ȷ",
+ "ʌxɵ",
+ "ʌxıʋʃ",
+ "ʌʋıx",
+ "ʌʋıʋı",
+ "ʌʋ̄ſ",
+ "ʌɞx",
+ "ʌɞ̄ı",
+ "ʌ̄",
+ "ʌʜʋ",
+ "ʌɤ̄ʃ",
+ "ʌɤſɕı",
+ "ʌʌı",
+ "ʌɕɕ",
+ "ʌɕȷ",
+ "ʌȷ",
+ "ʌȷx",
+ "ʌ̄ȷ",
+ "ʌȷƨȷ",
+ "ʌȷƨȷɞȷ",
+ "ʌ̄ȷɂ",
+ "ʌȷʜſ",
+ "ʌıɂ̄ʌȷ",
+ "ʌıɂſ",
+ "ʌıxſ",
+ "ʌıʋȷ",
+ "ʌ̄ıxı",
+ "ʌıʜ",
+ "ʌıʌ̄",
+ "ʌıʌı",
+ "ʌʃʋſ",
+ "ʌʃɞıɕ",
+ "ʌ̄ʃxʃ",
+ "ʌʃʜȷ",
+ "ʌſ",
+ "ʌſxʃ",
+ "ʌſʋ",
+ "ʌ̄ſ",
+ "ʌ̄ſʌ̄",
+ "ʌſɤ",
+ "oſɂƨſ",
+ "oſxɞ",
+ "oſxıxı",
+ "oſʋı",
+ "oſʋʃx̄",
+ "oſɞɞı",
+ "oſɞʃ",
+ "ōſ",
+ "oſƨıʌſ",
+ "oſɤ̄ȷ",
+ "oſʌ",
+ "ɕ",
+ "ɕɂſ",
+ "ɕʋ",
+ "ɕ̄",
+ "ɕ̄xſ",
+ "ɕʌ̄",
+ "ɕ̄ȷ",
+ "ɕı",
+ "ɕıɂ",
+ "ɕıxı",
+ "ɕıɤ̄",
+ "ɕ̄ʃʜ"
+ ]
+}
diff --git a/frontend/static/quotes/oromo.json b/frontend/static/quotes/oromo.json
new file mode 100644
index 000000000000..4fa0ccf9eb59
--- /dev/null
+++ b/frontend/static/quotes/oromo.json
@@ -0,0 +1,1037 @@
+{
+ "language": "oromo",
+ "groups": [
+ [0, 100],
+ [101, 300],
+ [301, 600],
+ [601, 9999]
+ ],
+ "quotes": [
+ {
+ "text": "Kaan obsaa, kaan immoo gorsaa, mul'ata keetti adeemuu qabda.",
+ "source": "Mammaaksa Oromoo",
+ "id": 1,
+ "length": 60
+ },
+ {
+ "text": "Obsaan mi'eessa, obsaan hojii baasa, obsaan rakkoos of irraa fageessa, obsi namaa qabeenya inni dhoksaa qabuu ti.",
+ "source": "Mammaaksa Oromoo",
+ "id": 2,
+ "length": 113
+ },
+ {
+ "text": "Murtoo murteessuuf dudduuba hin deebi'an. Murtoon jireenya keessatti barbaachisaadha, namoonni mo'atoon ni murteessu.",
+ "source": "Mammaaksa Oromoo",
+ "id": 3,
+ "length": 117
+ },
+ {
+ "text": "Bubbeen cimaan muka jabaataa hin buqqaatu, namni rakkoo keessa guddatee jabaate dhumarratti moo'ichaan ba'a yeroo hunda.",
+ "source": "Mammaaksa Oromoo",
+ "id": 4,
+ "length": 120
+ },
+ {
+ "text": "Muka biyya jiruun mana ijaaran, nama biyya jiruun biyya ijaaran jedha oromoon yommuu mammaaku.",
+ "source": "Mammaaksa Oromoo",
+ "id": 5,
+ "length": 94
+ },
+ {
+ "text": "Namarra yaaduuf yaali garuu nama hundumarra beekaadha, ofiin hin jedhin.",
+ "source": "Mammaaksa Oromoo",
+ "id": 6,
+ "length": 72
+ },
+ {
+ "text": "Daakaniif hin marqan, dharra'aniif hin argatan, Waaqni yoo kenne malee bu'aa hin qabu.",
+ "source": "Mammaaksa Oromoo",
+ "id": 7,
+ "length": 86
+ },
+ {
+ "text": "Galaanni Gibee guutus daaktuuf bidiruun nama ceesisaa garaan jaallate hin rafu.",
+ "source": "Haacaaluu Hundeessaa — Sanyii Mootii",
+ "length": 79,
+ "id": 8
+ },
+ {
+ "text": "Gara galgala, murtoo hin qabu, murtoon ariitidhaan ykn yeroo sirrii hin taane keessatti fudhatamu sirrii miti.",
+ "source": "Mammaaksa Oromoo",
+ "id": 9,
+ "length": 110
+ },
+ {
+ "text": "Nama Waaqni uffise hattuun hin saamu, nama Waaqayyo eegu eegumsi addunyaa kanaa isa hin barbaachisu gonkumaa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 10,
+ "length": 109
+ },
+ {
+ "text": "Biyya hin beektu, nyaata hin argattu, kanaaf bakka deemtu hunda haala isaa qorachuun barbaachisaa dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 11,
+ "length": 102
+ },
+ {
+ "text": "Harkaan dhaabanii miilaan dhiituun amaluma dhala namaati, gaarummaa oolanii hammeenyaan deebisuun gocha badaadha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 12,
+ "length": 113
+ },
+ {
+ "text": "Meeshaa nama kamuu irraa ergifatte namichi osoo sin gaafatin dursii deebisiif. Maallaqa dabalatee.",
+ "source": "Mammaaksa Oromoo",
+ "id": 13,
+ "length": 98
+ },
+ {
+ "text": "Ejersa halaalaarra qobboo qe'ee wayya, fira fagoorra ollaa dhihootti dhimma ba'uun baay'ee wayya jedhan.",
+ "source": "Mammaaksa Oromoo",
+ "id": 14,
+ "length": 104
+ },
+ {
+ "text": "Hirriibni baay'een duumessa hiyyummaati, namni rafuu jaallatu qabeenya hin horatu jedhan.",
+ "source": "Oromo Work Ethic Proverb",
+ "id": 15,
+ "length": 89
+ },
+ {
+ "text": "Maqaan baduu mannaa mataa baduu wayya, jette goondaan ciniintee haftee mataan cite.",
+ "source": "Traditional Oromo Proverb",
+ "id": 16,
+ "length": 83
+ },
+ {
+ "text": "Dharaan nutti duulanii kaleessa hoganamu awwaala cabse ka'ee dhugaan hin haguugamu.",
+ "source": "Kemer Yousuf — Irreecha",
+ "length": 83,
+ "id": 17
+ },
+ {
+ "text": "Dhugaan ilmoo waaqaati, dhugaa dubbachuun aadaa Oromoo keessatti bakka guddaa qaba, Waaqayyo dhugaa jaalata.",
+ "source": "Mammaaksa Oromoo",
+ "id": 18,
+ "length": 108
+ },
+ {
+ "text": "Jiruun dachee kuni furiidha gaafa sana gaaffii hin hanqattu.",
+ "source": "Haacaaluu Hundeessaa — Ajaa'iba",
+ "length": 60,
+ "id": 19
+ },
+ {
+ "text": "Dubbiin baay'atetti harreetti hin fe'ani, dhugaan haasaa gabaabaa keessatti ifa baati jedhan.",
+ "source": "Mammaaksa Oromoo",
+ "id": 20,
+ "length": 93
+ },
+ {
+ "text": "Jimma jirtattin quban si qabaa biyyaa hin fagaannee yaada keetaniin kophaa gungumaa malee hin maraannee.",
+ "source": "Haacaaluu Hundeessaa — Sanyii Mootii",
+ "length": 104,
+ "id": 21
+ },
+ {
+ "text": "Bofa mataa dhahan eegeen isaa lafa hin lolu, diina cimaa yommuu of irraa ittisan madda isaa dhaabuu qabu dhugaa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 22,
+ "length": 112
+ },
+ {
+ "text": "Afaan hamii bare utubaatti hasaasa, namni hamii bare yeroo hunda hamachuu hin dhiisu kanaaf irraa eeggadhu.",
+ "source": "Mammaaksa Oromoo",
+ "id": 23,
+ "length": 107
+ },
+ {
+ "text": "Eeboo darbatani jinfuu hin qabatani, waan harka keetii ba'e deebisuun waan hin danda'amneef dura yaadi.",
+ "source": "Mammaaksa Oromoo",
+ "id": 24,
+ "length": 103
+ },
+ {
+ "text": "Namni abdataan wuulii nyaatee, lafati abdaatani sanyii nyaatee.",
+ "source": "Obsa",
+ "id": 25,
+ "length": 63
+ },
+ {
+ "text": "Waan nama duuba jiru hin jedhu, kanaafuu waan hojjennu yeroo hunda of eeggannoodhaan yaaduu qabna dhugumatti.",
+ "source": "Mammaaksa Oromoo",
+ "id": 26,
+ "length": 109
+ },
+ {
+ "text": "Teessoo na gaafannaan je'een Oromiyaa dhiiga lafee tiyyaa biyya abbaa kiyyaa.",
+ "source": "Kemer Yousuf — Oromia",
+ "length": 77,
+ "id": 27
+ },
+ {
+ "text": "Namni Waaqa waliin deemu gufuun isa hin rukutu, daandii jireenyaa keessatti eegumsa argachuuf dhugaan deemi.",
+ "source": "Mammaaksa Oromoo",
+ "id": 28,
+ "length": 108
+ },
+ {
+ "text": "Firaan boonu malee firatti hin boonan, namni fira isaatti boone qofaa dhabatee hafa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 29,
+ "length": 84
+ },
+ {
+ "text": "Ijibbaata beelaa eelee sagal dhaabu, yoo tokko bade kaanitti fayyadamuuf yaaduudhaan.",
+ "source": "Oromo Oral Tradition",
+ "id": 30,
+ "length": 85
+ },
+ {
+ "text": "Haadha laalii intala fuudhi, waan garaan kee barbaadu obsaan itti yaaddee raawwadhu.",
+ "source": "Oromo Wisdom Literature",
+ "id": 31,
+ "length": 84
+ },
+ {
+ "text": "Namni ija tokkoo biyyoo itti hin taphatu, wanta xiqqoo qabnu of eeggannoodhaan eeggachuu fi kunuunsuu qabna.",
+ "source": "Mammaaksa Oromoo",
+ "id": 32,
+ "length": 108
+ },
+ {
+ "text": "Kan koo lapheen sumaaf nuugii tumaa, natti taate kaa akka suusii bunaa.",
+ "source": "Haacaaluu Hundeessaa — Sanyii Mootii",
+ "length": 71,
+ "id": 33
+ },
+ {
+ "text": "Kan kaffalu nama biroodha jettee nyaata guddaas ta'e dhugaatii guddaa hin ajajatin.",
+ "source": "Mammaaksa Oromoo",
+ "id": 34,
+ "length": 83
+ },
+ {
+ "text": "Jette jettee dhuugoomsanii karra shanan balleessanii dallaa nu gidduutt ijaranii.",
+ "source": "Andualem Gosa — Ayyaantuu",
+ "length": 81,
+ "id": 35
+ },
+ {
+ "text": "Dhiiga ofii, fooni hin dhokatu, eenyummaan dhugaa fi sanyiin namaa yeroo hunda ifatti kan mul'atu dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 36,
+ "length": 102
+ },
+ {
+ "text": "Onnee koo irraa ture kanan si jaallee ayyaana laallattummaan kee yoom naaf galee.",
+ "source": "Abdi Nuressa — Ayyaana Laallattuu",
+ "length": 81,
+ "id": 37
+ },
+ {
+ "text": "Nama beekumsaan guutame hattuun hin saamuuf dandahamuu danda'u, kanaafuu beekumsa horachuuf tattaaffadhu yeroo hunda.",
+ "source": "Mammaaksa Oromoo",
+ "id": 38,
+ "length": 117
+ },
+ {
+ "text": "Soogidda, ofii jettu mi'aayi anaa jettu dhagaa tahi, ofii keetif of kabaji jalqaba kabaja argachuuf.",
+ "source": "Mammaaksa Oromoo",
+ "id": 39,
+ "length": 100
+ },
+ {
+ "text": "Waraabessi biyya ofii nama haa nyaatuu, alagaa biyya ormaa irra fira yaraatu wayya jedhan.",
+ "source": "Oromo Wisdom Literature",
+ "id": 40,
+ "length": 90
+ },
+ {
+ "text": "Kan garaa koo Rabbii na hin dhowwatu namummaa kootti ishee na jaalattuu.",
+ "source": "Abdi Nuressa — Ayyaana Laallattuu",
+ "length": 72,
+ "id": 41
+ },
+ {
+ "text": "Mana ormaa bareedaarra, godoo ofii keessa jiraatan tu caala jedha mammaaksi Oromoo.",
+ "source": "Mammaaksa Oromoo",
+ "id": 42,
+ "length": 83
+ },
+ {
+ "text": "Najjoo gidduu lafaa yaa tessoo jajjabe nagaan sitti dhaamam yoon dhufuu dadhabe.",
+ "source": "Gamme Borena",
+ "id": 43,
+ "length": 80
+ },
+ {
+ "text": "Biyyi abbaa qabdu alagaadhaan hin bitamtu, ummanni tokkummaa qabu humna alaarra dhufe kamiyyuu ni injifata dhugaa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 44,
+ "length": 114
+ },
+ {
+ "text": "Waan warri waarii jedhu ijoolleen waaree jetti, ijoolleen daawwitii maatii isheeti jedhan.",
+ "source": "Oromo Wisdom Literature",
+ "id": 45,
+ "length": 90
+ },
+ {
+ "text": "Kan abdatan irra kan argatantu caala, waan harka kee keessa jiru sirriitti eeggadhu.",
+ "source": "Traditional Oromo Proverb",
+ "id": 46,
+ "length": 84
+ },
+ {
+ "text": "Fardi ija qabu boolla hin seenu, namni sammuu qabuu fi fagootti yaadu rakkoo keessa of hin galchu jedhan oromoon.",
+ "source": "Mammaaksa Oromoo",
+ "id": 47,
+ "length": 113
+ },
+ {
+ "text": "Namni kufe ka'uu hin dhiisu, gara fuula durattis itti fufee deema, kukkufuun dhumaa miti injifannoon isaa fuuldura jira.",
+ "source": "Mammaaksa Oromoo",
+ "id": 48,
+ "length": 120
+ },
+ {
+ "text": "Kan citaa hin qabneef kan citu baasti, rakkoon nama hiyyeessaa yeroo hunda walitti fufa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 49,
+ "length": 88
+ },
+ {
+ "text": "Maraatanii biyya hin bulchan, mari'atanii bulchan malee namni tokko ofiin hin danda'u.",
+ "source": "Traditional Oromo Proverb",
+ "id": 50,
+ "length": 86
+ },
+ {
+ "text": "Wacitii abbaan cabsee kaa'e, kan dhiqee kaa'e itti kakata, balleessaan kan abbaati jedhan.",
+ "source": "Mammaaksa Oromoo",
+ "id": 51,
+ "length": 90
+ },
+ {
+ "text": "Sirni Gadaa walqixxummaa fi bilisummaa irratti ijaarameera, kanaafuu sirna kana eeguun dirqama dhaloota hunda ti.",
+ "source": "Gadaa Principle",
+ "id": 52,
+ "length": 113
+ },
+ {
+ "text": "Namni mana isaa keessatti guddaan, alatti yoo ba'u salphachuu in danda'a jedhan oromoon.",
+ "source": "Traditional Oromo Proverb",
+ "id": 53,
+ "length": 88
+ },
+ {
+ "text": "Yaadaa fi yaaddoo keetiin halkan ciisa dhabe waanuma kee yaadutti maaf hirriba dhaba.",
+ "source": "Haacaaluu Hundeessaa — Kuullee koo",
+ "length": 85,
+ "id": 54
+ },
+ {
+ "text": "Beekumsi qabeenyota addunyaa hundarraa ol ti, qabeenya biraa saamuu ni danda'ama, garuu beekumsa keessa jiru hin saamamu.",
+ "source": "Mammaaksa Oromoo",
+ "id": 55,
+ "length": 121
+ },
+ {
+ "text": "Abbaan Gadaa ummata isaa Waaqa jalatti eeguf kakate, kanaafuu abbootiin Gadaa yeroo hunda dhugaa fi naamusaaf dhaabbatu.",
+ "source": "Gadaa System Wisdom",
+ "id": 56,
+ "length": 120
+ },
+ {
+ "text": "An jaldeessa hin jaallu yaa goota koo enyumat doorsisaa yaa goota koo.",
+ "source": "Haacaaluu Hundeessaa — Goota koo",
+ "length": 70,
+ "id": 57
+ },
+ {
+ "text": "Haa baddu humni onneen bira hin jirre, jedhe leenci waraabessan.",
+ "source": "Mammaaksa Oromoo",
+ "id": 58,
+ "length": 64
+ },
+ {
+ "text": "Yoo namni tokko boolla qotu, ofii isaa keessa bu'a, namni daba hojjetu deebi'ee daba ofiitiin rukutama yeroo hunda.",
+ "source": "Mammaaksa Oromoo",
+ "id": 59,
+ "length": 115
+ },
+ {
+ "text": "Humni qofti hogganummaaf gahaa miti, beekumsa fi dhugummaan hogganummaa dhugaa keessatti murteessoo dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 60,
+ "length": 104
+ },
+ {
+ "text": "Hiika jaalala koo wallaaltee malee badhaadhumnoo in dhufaa olee bubbulee.",
+ "source": "Abdi Nuressa — Ayyaana Laallattuu",
+ "length": 73,
+ "id": 61
+ },
+ {
+ "text": "Oromoon duruu faayaa faayaan babareedani ijoolleen abbaa gadaa wal keessa areedani.",
+ "source": "Kemer Yousuf — Irreecha",
+ "length": 83,
+ "id": 62
+ },
+ {
+ "text": "Rabbi wajjin sooromaafii eenyummaakee nu ilmaan kee si tikfanna.",
+ "source": "Kemer Yousuf — Oromia",
+ "length": 64,
+ "id": 63
+ },
+ {
+ "text": "An sosodaadhe baranna qalbii kootii Gibee gamaan jaalladhee sanyii mootii.",
+ "source": "Haacaaluu Hundeessaa — Sanyii Mootii",
+ "length": 74,
+ "id": 64
+ },
+ {
+ "text": "Barnootni bilisummaa ti, barnootni humna ti, barnootni malee egereen ifa hin qabu jiruu dhala Oromoo keessatti.",
+ "source": "Oromo Cultural Wisdom",
+ "id": 65,
+ "length": 111
+ },
+ {
+ "text": "Abbaan biyyaa yoo dammaqe biyyi hin badu, ummanni of beeku fi mirga isaa eeggedu tasuma garbummaa hin fudhatu.",
+ "source": "Mammaaksa Oromoo",
+ "id": 66,
+ "length": 110
+ },
+ {
+ "text": "Dubbii fi ulee gabaabsuun gaariidha, wanta baay'ee dubbachuurra xiqqoo dubbatanii hojitti agarsiisuu wayya.",
+ "source": "Mammaaksa Oromoo",
+ "id": 67,
+ "length": 107
+ },
+ {
+ "text": "Saba koo saba gamtaan hunda caaluu qe'ee abbaa keenyaa ormi hin dhaaluu.",
+ "source": "Tadele Gemechu — Sanyii Leencaa",
+ "length": 72,
+ "id": 68
+ },
+ {
+ "text": "Tafkiin lafatti walnyaatti, namarratti wal baatti, hiyyeessi yoo wal lolu alagaatti tokko.",
+ "source": "Oromo Wisdom Literature",
+ "id": 69,
+ "length": 90
+ },
+ {
+ "text": "Ilmi abbaa malee hin dhalatuu biyyan qabaa kan na boonsiftu.",
+ "source": "Kemer Yousuf — Oromia",
+ "length": 60,
+ "id": 70
+ },
+ {
+ "text": "Ollaan bultee beeka akka itti bule abbaatu beeka, rakkoo garaa keessaa ofiitu beeka jedhe.",
+ "source": "Traditional Oromo Proverb",
+ "id": 71,
+ "length": 90
+ },
+ {
+ "text": "Salphaa hin seyinii barbada daaraa keessaa lammii tuqanii maaltu walirraa dheessaa.",
+ "source": "Tadele Gemechu — Sanyii Leencaa",
+ "length": 83,
+ "id": 72
+ },
+ {
+ "text": "Barcuma ulfinaa abbaatu of jala baata, nama biraa irraa ulfina eeguun walluuma guddaadha.",
+ "source": "Traditional Oromo Proverb",
+ "id": 73,
+ "length": 89
+ },
+ {
+ "text": "Namichi guyyaa bofa arge halkan gaaddidduu isaa dheessa, namni waan hamaan irra ga'e yeroo hunda ni sodaata.",
+ "source": "Mammaaksa Oromoo",
+ "id": 74,
+ "length": 108
+ },
+ {
+ "text": "Kormi biyya ofiitti baroodu biyya ormaatti ni mar'ata, kanaaf biyya ofii jaalachuun baay'ee murteessaa dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 75,
+ "length": 107
+ },
+ {
+ "text": "Humna qarqa baasuufi soora ganna baasu abbaatu beeka, nama biraatu ofitti firoomsa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 76,
+ "length": 83
+ },
+ {
+ "text": "Nama hogganu sodaa malee dhugaa dubbachuu danda'u barbaadi, hogganaan sodaattu biyya isaa dhumarra balleessa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 77,
+ "length": 109
+ },
+ {
+ "text": "Hiriyyaan wal hinamanne, malkaa ceetutti wal kakti, shakkii jidduu firootaatti uumamu balleessuun ulfaataa dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 78,
+ "length": 111
+ },
+ {
+ "text": "Kan gabaan suuqii hin qabne, gabaa dhaqee maal godha yoo gatii gabaa hin beekne.",
+ "source": "Mammaaksa Oromoo",
+ "id": 79,
+ "length": 80
+ },
+ {
+ "text": "Hoggantichi ummata isaa dursee of dursa malee, kanaafuu hogganaa gaarii barbaadda taanaan gara namaatti ilaali.",
+ "source": "Mammaaksa Oromoo",
+ "id": 80,
+ "length": 111
+ },
+ {
+ "text": "Kan ilkaan hin qabne akaawwii hawwatti, wanta humni ishee hin dandeenye yaaddi gowwaan.",
+ "source": "Mammaaksa Oromoo",
+ "id": 81,
+ "length": 87
+ },
+ {
+ "text": "Mukni tokkichi ni aara malee hin buba'u, namni kophaa isaa rakkoo baachuu hin danda'u kanaaf tokkummaan wayya.",
+ "source": "Mammaaksa Oromoo",
+ "id": 82,
+ "length": 110
+ },
+ {
+ "text": "Diiganii gaara sanaa gaara diigamuu hin mallee nu baasan addaan baanee nu addaan bahuu hin mallee.",
+ "source": "Haacaaluu Hundeessaa — Maalaan Jira",
+ "length": 98,
+ "id": 83
+ },
+ {
+ "text": "Gadaatu qaroomina qarooma jabeeffanna irreechi irree keenyaa waaqa galatoomffanna.",
+ "source": "Kemer Yousuf — Irreecha",
+ "length": 82,
+ "id": 84
+ },
+ {
+ "text": "Waaqa fi lafa gargar baasuun hin danda'amu, akkasuma Oromoo fi aadaa isaa gargar baasuun waan hin danda'amne.",
+ "source": "Oromo Cultural Wisdom",
+ "id": 85,
+ "length": 109
+ },
+ {
+ "text": "Jireenya mataa kee oofuu yoo hin dandeenye jireenya namaa irratti imalaa taata. Kanaaf kan ormaa dhiisi kan kee gaggeeffadhu!",
+ "source": "Jechoota Afaan Oromoo",
+ "id": 86,
+ "length": 125
+ },
+ {
+ "text": "Yaa soogidda, ofii jettu mi'aa'i, ta'uu baannaan dhagaadha jedhanii si darbu.",
+ "source": "Oromo Community",
+ "id": 87,
+ "length": 77
+ },
+ {
+ "text": "Daa'imni barnoota barate guddatee biyya isaa ni ijaara, kanaafuu ijoollee barsiisuu dirqama maatii fi biyyaa ti.",
+ "source": "Mammaaksa Oromoo",
+ "id": 88,
+ "length": 112
+ },
+ {
+ "text": "Laga tokko qarqara dhaabatanii ce'uun hin danda'amu, kanaafuu tarkaanfii fudhachuun barbaachisaa dha yeroo hunda.",
+ "source": "Mammaaksa Oromoo",
+ "id": 89,
+ "length": 113
+ },
+ {
+ "text": "Shiran shiranii garaaf qalbii kiyya hatanii akkan sirraa cituuf yaadanii.",
+ "source": "Haacaaluu Hundeessaa — Jirra",
+ "length": 73,
+ "id": 90
+ },
+ {
+ "text": "Namoota hojii isaaniif dinqisiifadhu. Hamaa yoo dalagan immoo qophaatti haasofsiisi.",
+ "source": "Mammaaksa Oromoo",
+ "id": 91,
+ "length": 84
+ },
+ {
+ "text": "Galaanni bakka bultii hin qabne, gudeelcha guuree deema, iddoo qubatu dhabuudhaan.",
+ "source": "Mammaaksa Oromoo",
+ "id": 92,
+ "length": 82
+ },
+ {
+ "text": "Osoo horiin hin galin, hattuun mooraa guutte jette haati ijoolleen ishee jalaa dhumte.",
+ "source": "Traditional Oromo Proverb",
+ "id": 93,
+ "length": 86
+ },
+ {
+ "text": "Yoollee si lixxee qoraatii dhoqee keessaa hin yaadda'inii lammitu gumaa baasaa.",
+ "source": "Tadele Gemechu — Sanyii Leencaa",
+ "length": 79,
+ "id": 94
+ },
+ {
+ "text": "Kan mana qabu mala hin dhabu, iddoo itti dhokatu fi itti boqotu waan qabuuf dhiibbaa danda'a.",
+ "source": "Traditional Oromo Proverb",
+ "id": 95,
+ "length": 93
+ },
+ {
+ "text": "Adala gowwoomsuun suuta suutan, ariifannaan waan yaadame hunda hin milkeessu matumaa.",
+ "source": "Traditional Oromo Proverb",
+ "id": 96,
+ "length": 85
+ },
+ {
+ "text": "Beekumsa tuffachuun dhumarratti nama gadaanessaatti geessa, kanaafuu barnootaaf kabajaa fi jaalala qabaachuu qabna.",
+ "source": "Mammaaksa Oromoo",
+ "id": 97,
+ "length": 115
+ },
+ {
+ "text": "Wallaggaa yaa lixa biiftuu, dhagaan Gibee konkolaatee, waldhabne kaa shurrubbee koo, garaan didee tokko yaadee.",
+ "source": "Abbitaw Kabbada",
+ "id": 98,
+ "length": 111
+ },
+ {
+ "text": "Onneen koo cimee sitti obsa karoorsaa, anatti anaan araarsita kottuu jiruu kiyya situ haaromsaa.",
+ "source": "Andualem Gosa — Ayyaantuu",
+ "length": 96,
+ "id": 99
+ },
+ {
+ "text": "Afaan koo afaan Oromoo, eenyummaa koo ibsa, aadaa koo mul'isa, utuu afaan koo hin jiraatin anillee hin jiru.",
+ "source": "Ali Birra",
+ "id": 100,
+ "length": 108
+ },
+ {
+ "text": "Aak jedhan waa tufan, mammaakan waa himan, dubbiin mammaaksa hin qabne soogidda dhabe.",
+ "source": "Oromo Wisdom Literature",
+ "id": 101,
+ "length": 86
+ },
+ {
+ "text": "Dhiiga dhangala'aa, harka harka, namni gocha ofiitiif itti gaafatamummaa fudhachuun dirqama dhala namaati.",
+ "source": "Mammaaksa Oromoo",
+ "id": 102,
+ "length": 106
+ },
+ {
+ "text": "Maal taanaa, maal taanaa, yoo isin hin jirre nuti maal taanaa? Eenyummaan keenya saba keenya waliin jiraata.",
+ "source": "Hachalu Hundessa",
+ "id": 103,
+ "length": 108
+ },
+ {
+ "text": "Ilmoo bineensaa foontu gara bosonaa heda, uumamni uumama isaa hin dhiisu matumaa jedhan.",
+ "source": "Oromo Wisdom Literature",
+ "id": 104,
+ "length": 88
+ },
+ {
+ "text": "Yayyaba walaabuu maddite yaa Taliila bishaan ganamaa lixee daakee ba'uu dadhabe danbalii yaada keen raafama.",
+ "source": "Haacaaluu Hundeessaa — Kuullee koo",
+ "length": 108,
+ "id": 105
+ },
+ {
+ "text": "Hamma namaa hin geessuu cabsa namaa hin teessu, dubbii namaa fiduun hamaa dha waan ta'eef irraa fagaadhu.",
+ "source": "Mammaaksa Oromoo",
+ "id": 106,
+ "length": 105
+ },
+ {
+ "text": "Hojiin jabina barbaada, obboleettiin jabinaa immoo obsa ti, obsa malee jabinni dhugaan argamuu hin danda'u gonkumaa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 107,
+ "length": 116
+ },
+ {
+ "text": "Ulfeessaniit ulfaatu, jettet haati ilmaaf farda qabdee lafa irra teessee of salphiste.",
+ "source": "Oromo Wisdom Literature",
+ "id": 108,
+ "length": 86
+ },
+ {
+ "text": "Hayyummaa Gadaa haa beeku hundii kan quba hin qabneetu hoo hoqa gadii.",
+ "source": "Galaanaa Gaaromsaa — Kush",
+ "length": 70,
+ "id": 109
+ },
+ {
+ "text": "Ofii jettu mi'aa'i, yoo kaan dhagaa jedhanii si gatu jedhe namichi dammaan dubbatee.",
+ "source": "Oromo Wisdom Literature",
+ "id": 110,
+ "length": 84
+ },
+ {
+ "text": "Abbaa gabaabaa ijoolleen hiriyyaa seeti, nama guddaas yoo salphatu xiqqaatti ilaalti.",
+ "source": "Mammaaksa Oromoo",
+ "id": 111,
+ "length": 85
+ },
+ {
+ "text": "Ilmi baratu abbaa isaa kabajsiisa, beekumsi ijoollee yeroo hunda maatii fi saba isaaf eebbaa guddaa fi ulfinaa ti.",
+ "source": "Mammaaksa Oromoo",
+ "id": 112,
+ "length": 114
+ },
+ {
+ "text": "Ilkaan walitti aaree lafee caccabsa, namoonni yommuu tokko ta'an rakkoo cimaa kamiyyuu mo'achuu ni danda'u.",
+ "source": "Mammaaksa Oromoo",
+ "id": 113,
+ "length": 107
+ },
+ {
+ "text": "Kan akka fardaa nyaatu gaafa waan nyaatu dhabe du'a, kanaafuu yeroo qabnu qusachuun ogummaa guddaa dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 114,
+ "length": 103
+ },
+ {
+ "text": "Osoo namni sitti haasa'uu haasaa isaa addaan hin kutin, ha xumuruu. Namni kamuu waan keessasaa jiru haasa'uuf mirga qaba.",
+ "source": "Jechoota Afaan Oromoo",
+ "id": 115,
+ "length": 121
+ },
+ {
+ "text": "Waan dabruuf maqaa hin dabarre hin fuudhan, rakkoo yeroof jedhanii kabaja ofii dhabuun sirrii miti gonkumaa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 116,
+ "length": 108
+ },
+ {
+ "text": "Of bira si dhabee naa onneen cabee yaa furtuukoo karra jaalalaa si qabaachuun hunda caalaa.",
+ "source": "Andualem Gosa — Ayyaantuu",
+ "length": 91,
+ "id": 117
+ },
+ {
+ "text": "Moluu tiyya boruufuu si'abdadhe jedhe jaarsi aduun mataa dhoofte.",
+ "source": "Oromo Community",
+ "id": 118,
+ "length": 65
+ },
+ {
+ "text": "Hogganni gaarii akka bishaan madda qabaatu ti, hundaaf dansaa fi qulqulluu, qixxummaan raabsuun waanjoo isaa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 119,
+ "length": 109
+ },
+ {
+ "text": "Hiriyyaan garaa walii hin beekne malkaa ceetu maratti walkaksiifti.",
+ "source": "Oromo Community",
+ "id": 120,
+ "length": 67
+ },
+ {
+ "text": "Bariin durii fi dubbiin durii deebitee hin argamtu, waan darbe yaaduun hin barbaachisu.",
+ "source": "Oromo Wisdom Literature (Sumner, 1995)",
+ "id": 121,
+ "length": 87
+ },
+ {
+ "text": "Of hin agarre raafuu lagatti, namni of hin beekne waan xixiqqoo tuffata ta'ullee ofii isaa gatii hin qabu.",
+ "source": "Mammaaksa Oromoo",
+ "id": 122,
+ "length": 106
+ },
+ {
+ "text": "Jaalalti anaaf haaraa dha kanaaf keessi koo miidhame natti hin murteessin.",
+ "source": "Haacaaluu Hundeessaa — Ajaa'iba",
+ "length": 74,
+ "id": 123
+ },
+ {
+ "text": "Hin bari'u seetee manatti hagde, bariinaan salphina isheetiif daaraa itti naqatte jette.",
+ "source": "Oromo Oral Tradition",
+ "id": 124,
+ "length": 88
+ },
+ {
+ "text": "Lakkii mee lakkii gocha kee kanas hubadhu an sirraa citee hafuu dhaaf.",
+ "source": "Haacaaluu Hundeessaa — Ajaa'iba",
+ "length": 70,
+ "id": 125
+ },
+ {
+ "text": "Bishaan darbe hin waraaban, dubbii darbe hin kaasani, yoo dammaqan malee jedhan warri.",
+ "source": "Oromo Oral Tradition",
+ "id": 126,
+ "length": 86
+ },
+ {
+ "text": "Kan qaban qaba hin guunne, gadhiisan bakkee guutti, jedhan warri dhugaa kana hubatan.",
+ "source": "Oromo Oral Tradition",
+ "id": 127,
+ "length": 85
+ },
+ {
+ "text": "Guyyaan ija qaba, halkan gurra qaba, yeroo hunda of eeggannoodhaan dubbachuun amala nama bilchaataa ti yeroo hunda.",
+ "source": "Mammaaksa Oromoo",
+ "id": 128,
+ "length": 115
+ },
+ {
+ "text": "Lolli kee inni hamaan waan beektuu fi miira sitti dhaga'amu gidduudha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 129,
+ "length": 70
+ },
+ {
+ "text": "Soddaa jiruu sanuu, balbala jiruu wal hin lolan, wal kabajuun aadaa saba Oromoo bal'aati.",
+ "source": "Oromo Societal Norms",
+ "id": 130,
+ "length": 89
+ },
+ {
+ "text": "Iyyaniif dhalcha hin ta'u, jedhe korbeessi hoolaa korbeessa re'eetiin lafa dhiitee.",
+ "source": "Mammaaksa Oromoo",
+ "id": 131,
+ "length": 83
+ },
+ {
+ "text": "Bishaan lagaa dhume jennaan boosettiin ilil jette, sababni ishees qulqullina jibbuudha.",
+ "source": "Oromo Oral Tradition",
+ "id": 132,
+ "length": 87
+ },
+ {
+ "text": "Bara quufaa waraabessi adurree ciniina, yommuu nagaa fi quufni jiru namni waan hin taane hojjeta jedhan warri.",
+ "source": "Mammaaksa Oromoo",
+ "id": 133,
+ "length": 110
+ },
+ {
+ "text": "Cinqiin yeroo baayyee kan maddu sababa humnaa ol yaaduutiin, yeroo humnaa ol yaadnu sammuun teenya rakkinoota hin jirre hedduu waan uumuuf.",
+ "source": "Mammaaksa Oromoo",
+ "id": 134,
+ "length": 139
+ },
+ {
+ "text": "Namni akka ofii isaa beeku eenyuyyuu isa hin beeku, of-baruu fi dhugaa ofii beekuun mallattoo qaroominaati.",
+ "source": "Mammaaksa Oromoo",
+ "id": 135,
+ "length": 107
+ },
+ {
+ "text": "Sirni Gadaa sirna dimokiraasii fi walqixxummaa irratti hundaa'e dha, namni hunduu mirga guutuu qaba Oromoo keessatti.",
+ "source": "Gadaa System Principle",
+ "id": 136,
+ "length": 117
+ },
+ {
+ "text": "Harki tokko ni dhiqa malee, hin qulqulleessu, harka lamaan waliin dhiquutu xurii baasa.",
+ "source": "Oromo Wisdom Literature",
+ "id": 137,
+ "length": 87
+ },
+ {
+ "text": "Yeroo dheeraaf bishaaniin tuqamu dhagaan caccabuun hin ooluu, kanaafuu tattaaffiin xiqqoo yeroo dheeraan gurguddaa galma gaha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 138,
+ "length": 126
+ },
+ {
+ "text": "Utuu horiin hin galin, hattuun mooraa guutte, utuu qabeenyi hin argamin eegdonni baay'achuun rakkoo fida.",
+ "source": "Mammaaksa Oromoo",
+ "id": 139,
+ "length": 105
+ },
+ {
+ "text": "Nyaadhe fixuu yoon dadhabe hadhee fixuun hin dadhabu jette lukkuun.",
+ "source": "Mammaaksa Oromoo",
+ "id": 140,
+ "length": 67
+ },
+ {
+ "text": "Firri wallola malee gaafa rakkoo wal irratti hin ilaalu, dhiigni dhiiguma ta'a yoomiyyuu.",
+ "source": "Oromo Societal Norms",
+ "id": 141,
+ "length": 89
+ },
+ {
+ "text": "Hiyyeessaa fi ibiddi tuttuqaa hin jaalatu, kanaafuu nama harka dhalleeyyii akka malee dhiibuu fi tuquun hamaa dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 142,
+ "length": 114
+ },
+ {
+ "text": "Mallaqnii wanta hundaaf debbi ta'uu hin danda'uu garu jijiirama fida.",
+ "source": "Mammaaksa Oromoo",
+ "id": 143,
+ "length": 69
+ },
+ {
+ "text": "Haatee durbaa jennaan dur kaa jedhe mucaan, namni waan beeku dubbata waan ta'eef dhugaa dubbachuu qabna.",
+ "source": "Mammaaksa Oromoo",
+ "id": 144,
+ "length": 104
+ },
+ {
+ "text": "Fuulli fi nyaanni dhoksaa hin qabu, garaa keessa wanti jiru fuula irraa sirriitti mul'ata.",
+ "source": "Traditional Oromo Proverb",
+ "id": 145,
+ "length": 90
+ },
+ {
+ "text": "Ijoolleen haadha jalatti baratte iddoo biraatti hin boonu, aadaa fi safuu warra irraa barachuun baay'ee faayidaa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 146,
+ "length": 113
+ },
+ {
+ "text": "Harreen ofiifuu hin galtuu, loon galchitiiree yoo ofii ishee karaa mana ishee wallaalte?",
+ "source": "Oromo Oral Tradition",
+ "id": 147,
+ "length": 88
+ },
+ {
+ "text": "Haati hattuun intala hin amantu, yeroo hunda waan hannaatiin shakkiti malee.",
+ "source": "Oromo Wisdom Literature",
+ "id": 148,
+ "length": 76
+ },
+ {
+ "text": "Namni rakkoo fuuldura dhaabachuu danda'u duwwaa dha milkaa'inni isaa itti argamu, salphaatti hin argamu yeroo hunda.",
+ "source": "Mammaaksa Oromoo",
+ "id": 149,
+ "length": 116
+ },
+ {
+ "text": "Dorgomaa cimaa waliin dorgomuu nama jajjabeessa fi guddisa, kanaafuu nama cimaa waliin dorgomuu irraa gonkumaa hin baqatin.",
+ "source": "Mammaaksa Oromoo",
+ "id": 150,
+ "length": 123
+ },
+ {
+ "text": "Kan argatanirra kan abdatantu caala, abdii qabaachuun jireenya keessatti furtuu milkaa'inaa ti jedha oromoon.",
+ "source": "Mammaaksa Oromoo",
+ "id": 151,
+ "length": 109
+ },
+ {
+ "text": "Kan darbe yaadatani, isa gara fuula duraa itti yaadan, seenaa ofii beekuun egeree ofii ijaaruuf murteessaa dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 152,
+ "length": 111
+ },
+ {
+ "text": "Bulchaa gaarii argachuuf ummanni yeroo hunda dammaqee jiraachuu qaba, bulchaan badaan ummata rafaa jiru balleessa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 153,
+ "length": 114
+ },
+ {
+ "text": "Kan lafatti walii hin galle muka irratti wal hin gargaaru, yommuu nagaa qabnu waliigaluu baannaan rakkoo ta'a.",
+ "source": "Mammaaksa Oromoo",
+ "id": 154,
+ "length": 110
+ },
+ {
+ "text": "Garaan dhiibee yoo quufu, sammuun dammaqee waa yaada, nyaatanii quufuun qofti gahaa miti hojjechuu qabna.",
+ "source": "Mammaaksa Oromoo",
+ "id": 155,
+ "length": 105
+ },
+ {
+ "text": "Adaamiin olla agamsaa, imimmaan hin qoorfattu, waraansa ollaa isheerraa kan ka'e boo'icha.",
+ "source": "Oromo Wisdom Literature",
+ "id": 156,
+ "length": 90
+ },
+ {
+ "text": "Firri dhufe jedhanii dhabaa hin dhalanii, waan qaban dhiheessuun dirqama namummootaati.",
+ "source": "Traditional Oromo Proverb",
+ "id": 157,
+ "length": 87
+ },
+ {
+ "text": "Harkaan hojjetanii afaanitti dhiheeffachuun aadaa oromooti, hiyyummaa balleessuuf hojii jaalachuun murteessa.",
+ "source": "Mammaaksa Oromoo",
+ "id": 158,
+ "length": 109
+ },
+ {
+ "text": "Midhaan dura facaasan simbirri nyaatti, nama dura dubbate namni komata jedhan maanguddoon.",
+ "source": "Traditional Oromo Proverb",
+ "id": 159,
+ "length": 90
+ },
+ {
+ "text": "Rabbi moo namumaa kan seera jallisee? Haati keenya takka maaltu addaan nu baase?",
+ "source": "Ali Birra",
+ "id": 160,
+ "length": 80
+ },
+ {
+ "text": "Kaayyoon keenya saba keenya bilisa baasuu dha, kanaaf immoo wareegama barbaachisu hunda ni kaffalla dhugumatti.",
+ "source": "Elemo Qilxu",
+ "id": 161,
+ "length": 111
+ },
+ {
+ "text": "Nama cimaa ta'i jechuun hin kufiin jechuu miti, kuftee ka'uu danda'uu qabda jechuudha malee.",
+ "source": "Mammaaksa Oromoo",
+ "id": 162,
+ "length": 92
+ },
+ {
+ "text": "Tuulamanii taa'anii Waaqa ofii hin komatan, ofiin hojjetanii of qabuu wayya jedhan.",
+ "source": "Gadaa Work Ethic Saying",
+ "id": 163,
+ "length": 83
+ },
+ {
+ "text": "Biyya lafaarratti yommuu jiraannu, nagaa fi jaalalaan waliin jiraachuun furtuu jireenyaa isa guddaa dha jedha oromoon.",
+ "source": "Oromo Cultural Wisdom",
+ "id": 164,
+ "length": 118
+ },
+ {
+ "text": "Salphinni abbaa lafaa bara midhaan bade, yeroo hiyyummaa nama hundaatu salphata jedhan.",
+ "source": "Gadaa Proverb",
+ "id": 165,
+ "length": 87
+ },
+ {
+ "text": "Sangaan harree wajjin oole, innyaata dhiisee dhuufuu barata jedhan warri durii mammaakani.",
+ "source": "Oromo Wisdom Literature",
+ "id": 166,
+ "length": 90
+ },
+ {
+ "text": "Ol kaayan malee, ol ka'aniif waan barbaadan sana hin fuudhan, lafa kaa'an yaadachuu qabani.",
+ "source": "Traditional Oromo Proverb",
+ "id": 167,
+ "length": 91
+ },
+ {
+ "text": "Abbaan iyyatu malee ollaan hin birmatu, rakkoo ofii hawaasatti himachuun furmaata fida.",
+ "source": "Traditional Oromo Proverb",
+ "id": 168,
+ "length": 87
+ },
+ {
+ "text": "Galle jette lafoon farda jala galtee, of gowwoomsuun gatii dhabsiisa namaa fida waan ta'eef eeggadhu.",
+ "source": "Mammaaksa Oromoo",
+ "id": 169,
+ "length": 101
+ },
+ {
+ "text": "Obsan malee damma hin nyaatan, wanta gaarii argachuuf obsa qabaachuun ulaagaa isa duraa fi murteessaa dha.",
+ "source": "Mammaaksa Oromoo",
+ "id": 170,
+ "length": 106
+ },
+ {
+ "text": "Oromiyaa, Oromiyaa, biyya abbaa kootii, gammachuun koo hin guutu amma si arguuttii, situ anaaf jira jedhe sirbaan.",
+ "source": "Ali Birra",
+ "id": 171,
+ "length": 114
+ }
+ ]
+}
diff --git a/frontend/static/quotes/tamil_old.json b/frontend/static/quotes/tamil_old.json
new file mode 100644
index 000000000000..76377201fe41
--- /dev/null
+++ b/frontend/static/quotes/tamil_old.json
@@ -0,0 +1,281 @@
+{
+ "language": "tamil_old",
+ "groups": [
+ [0, 100],
+ [101, 300],
+ [301, 600],
+ [601, 9999]
+ ],
+ "quotes": [
+ {
+ "text": "கற்றதனால் ஆய பயன் என்கொல் வால் அறிவன் நல் தாள் தொழாஅர் எனின்",
+ "source": "திருக்குறள்",
+ "id": 1,
+ "length": 60
+ },
+ {
+ "text": "வேண்டுதல் வேண்டாமை இலான் அடி சேர்ந்தார்க்கு யாண்டும் இடும்பை இல",
+ "source": "திருக்குறள்",
+ "id": 2,
+ "length": 63
+ },
+ {
+ "text": "இருள் சேர் இரு வினையும் சேரா இறைவன் பொருள் சேர் புகழ் புரிந்தார்மாட்டு",
+ "source": "திருக்குறள்",
+ "id": 3,
+ "length": 70
+ },
+ {
+ "text": "பொறி வாயில் ஐந்து அவித்தான் பொய் தீர் ஒழுக்க நெறி நின்றார் நீடு வாழ்வார்",
+ "source": "திருக்குறள்",
+ "id": 4,
+ "length": 72
+ },
+ {
+ "text": "தனக்கு உவமை இல்லாதான் தாள் சேர்ந்தார்க்கு அல்லால் மனக் கவலை மாற்றல் அரிது",
+ "source": "திருக்குறள்",
+ "id": 5,
+ "length": 73
+ },
+ {
+ "text": "அற ஆழி அந்தணன் தாள் சேர்ந்தார்க்கு அல்லால் பிற ஆழி நீந்தல் அரிது",
+ "source": "திருக்குறள்",
+ "id": 6,
+ "length": 64
+ },
+ {
+ "text": "வான் நின்று உலகம் வழங்கி வருதலான் தான் அமிழ்தம் என்று உணரல் பாற்று",
+ "source": "திருக்குறள்",
+ "id": 7,
+ "length": 66
+ },
+ {
+ "text": "துப்பார்க்குத் துப்பு ஆய துப்பு ஆக்கி துப்பார்க்குத் துப்பு ஆயதூஉம் மழை",
+ "source": "திருக்குறள்",
+ "id": 8,
+ "length": 71
+ },
+ {
+ "text": "விண் இன்று பொய்ப்பின் விரிநீர் வியன் உலகத்து உள் நின்று உடற்றும் பசி",
+ "source": "திருக்குறள்",
+ "id": 9,
+ "length": 68
+ },
+ {
+ "text": "கெடுப்பதூஉம் கெட்டார்க்குச் சார்வாய் மற்று ஆங்கே எடுப்பதூஉம் எல்லாம் மழை",
+ "source": "திருக்குறள்",
+ "id": 10,
+ "length": 72
+ },
+ {
+ "text": "விசும்பின் துளி வீழின் அல்லால் மற்று ஆங்கே பசும் புல் தலை காண்பு அரிது",
+ "source": "திருக்குறள்",
+ "id": 11,
+ "length": 70
+ },
+ {
+ "text": "நெடுங் கடலும் தன் நீர்மை குன்றும் தடிந்து எழிலி தான் நல்காது ஆகிவிடின்",
+ "source": "திருக்குறள்",
+ "id": 12,
+ "length": 70
+ },
+ {
+ "text": "சிறப்பொடு பூசனை செல்லாது வானம் வறக்குமேல் வானோர்க்கும் ஈண்டு",
+ "source": "திருக்குறள்",
+ "id": 13,
+ "length": 60
+ },
+ {
+ "text": "நீர் இன்று அமையாது உலகு எனின் யார்யார்க்கும் வான் இன்று அமையாது ஒழுக்கு",
+ "source": "திருக்குறள்",
+ "id": 14,
+ "length": 71
+ },
+ {
+ "text": "ஒழுக்கத்து நீத்தார் பெருமை விழுப்பத்து வேண்டும் பனுவல் துணிவு",
+ "source": "திருக்குறள்",
+ "id": 15,
+ "length": 61
+ },
+ {
+ "text": "துறந்தார் பெருமை துணைக்கூறின் வையத்து இறந்தாரை எண்ணிக்கொண்டு அற்று",
+ "source": "திருக்குறள்",
+ "id": 16,
+ "length": 66
+ },
+ {
+ "text": "இருமை வகை தெரிந்து ஈண்டு அறம் பூண்டார் பெருமை பிறங்கிற்று உலகு",
+ "source": "திருக்குறள்",
+ "id": 17,
+ "length": 62
+ },
+ {
+ "text": "உரன் என்னும் தோட்டியான் ஓர் ஐந்தும் காப்பான் வரன் என்னும் வைப்பிற்கு ஓர் வித்து",
+ "source": "திருக்குறள்",
+ "id": 18,
+ "length": 79
+ },
+ {
+ "text": "ஐந்து அவித்தான் ஆற்றல் அகல்விசும்புளார் கோமான் இந்திரனே சாலும் கரி",
+ "source": "திருக்குறள்",
+ "id": 19,
+ "length": 66
+ },
+ {
+ "text": "செயற்கு அரிய செய்வார் பெரியர் சிறியர் செயற்கு அரிய செய்கலாதார்",
+ "source": "திருக்குறள்",
+ "id": 20,
+ "length": 62
+ },
+ {
+ "text": "சுவை ஒளி ஊறு ஓசை நாற்றம் என்று ஐந்தின் வகை தெரிவான்கட்டே உலகு",
+ "source": "திருக்குறள்",
+ "id": 21,
+ "length": 61
+ },
+ {
+ "text": "குணம் என்னும் குன்று ஏறி நின்றார் வெகுளி கணமேயும் காத்தல் அரிது",
+ "source": "திருக்குறள்",
+ "id": 22,
+ "length": 63
+ },
+ {
+ "text": "அந்தணர் என்போர் அறவோர் மற்று எவ்வுயிர்க்கும் செந்தண்மை பூண்டு ஒழுகலான்",
+ "source": "திருக்குறள்",
+ "id": 23,
+ "length": 70
+ },
+ {
+ "text": "சிறப்பு ஈனும் செல்வமும் ஈனும் அறத்தின் ஊஉங்கு ஆக்கம் எவனோ உயிர்க்கு",
+ "source": "திருக்குறள்",
+ "id": 24,
+ "length": 67
+ },
+ {
+ "text": "அறத்தின் ஊஉங்கு ஆக்கமும் இல்லை அதனை மறத்தலின் ஊங்கில்லை கேடு",
+ "source": "திருக்குறள்",
+ "id": 25,
+ "length": 60
+ },
+ {
+ "text": "அழுக்காறு அவாவெகுளி இன்னாச்சொல் நான்கும் இழுக்கா இயன்றது அறம்",
+ "source": "திருக்குறள்",
+ "id": 26,
+ "length": 61
+ },
+ {
+ "text": "அன்றறிவாம் என்னாது அறஞ்செய்க மற்றது பொன்றுங்கால் பொன்றாத் துணை",
+ "source": "திருக்குறள்",
+ "id": 27,
+ "length": 62
+ },
+ {
+ "text": "வீழ்நாள் படாஅமை நன்றாற்றின் அஃதொருவன் வாழ்நாள் வழியடைக்கும் கல்",
+ "source": "திருக்குறள்",
+ "id": 28,
+ "length": 63
+ },
+ {
+ "text": "இல்வாழ்வான் என்பான் இயல்புடைய மூவர்க்கும் நல்லாற்றின் நின்ற துணை",
+ "source": "திருக்குறள்",
+ "id": 29,
+ "length": 64
+ },
+ {
+ "text": "துறந்தார்க்கும் துவ்வாதவர்க்கும் இறந்தார்க்கும் இல்வாழ்வான் என்பான் துணை",
+ "source": "திருக்குறள்",
+ "id": 30,
+ "length": 72
+ },
+ {
+ "text": "தென்புலத்தார் தெய்வம் விருந்து ஒக்கல் தான் என்று ஆங்கு ஐம்புலத்தாறு ஓம்பல் தலை",
+ "source": "திருக்குறள்",
+ "id": 31,
+ "length": 78
+ },
+ {
+ "text": "பழியஞ்சிப் பாத்தூண் உடைத்தாயின் வாழ்க்கை வழிஎஞ்சல் எஞ்ஞான்றும் இல்",
+ "source": "திருக்குறள்",
+ "id": 32,
+ "length": 66
+ },
+ {
+ "text": "அறத்தாற்றின் இல்வாழ்க்கை ஆற்றின் புறத்தாற்றில் போஒய்ப் பெறுவது எவன்",
+ "source": "திருக்குறள்",
+ "id": 33,
+ "length": 67
+ },
+ {
+ "text": "இயல்பினான் இல்வாழ்க்கை வாழ்பவன் என்பான் முயல்வாருள் எல்லாம் தலை",
+ "source": "திருக்குறள்",
+ "id": 34,
+ "length": 63
+ },
+ {
+ "text": "ஆற்றின் ஒழுக்கி அறனிழுக்கா இல்வாழ்க்கை நோற்பாரின் நோன்மை உடைத்து",
+ "source": "திருக்குறள்",
+ "id": 35,
+ "length": 64
+ },
+ {
+ "text": "அறனெனப் பட்டதே இல்வாழ்க்கை அஃதும் பிறன்பழிப்பது இல்லாயின் நன்று",
+ "source": "திருக்குறள்",
+ "id": 36,
+ "length": 63
+ },
+ {
+ "text": "வையத்துள் வாழ்வாங்கு வாழ்பவன் வானுறையும் தெய்வத்துள் வைக்கப்படும்",
+ "source": "திருக்குறள்",
+ "id": 37,
+ "length": 65
+ },
+ {
+ "text": "மனைத்தக்க மாண்புடையள் ஆகித் தற்கொண்டான் வளத்தக்காள் வாழ்க்கைத் துணை",
+ "source": "திருக்குறள்",
+ "id": 38,
+ "length": 67
+ },
+ {
+ "text": "மனைமாட்சி இல்லாள்கண் இல்லாயின் வாழ்க்கை எனைமாட்சித் தாயினும் இல்",
+ "source": "திருக்குறள்",
+ "id": 39,
+ "length": 64
+ },
+ {
+ "text": "பெற்றாற் பெறின் பெறுவர் பெண்டிர் பெருஞ் சிறப்புப் புத்தேளிர் வாழும் உலகு",
+ "source": "திருக்குறள்",
+ "id": 40,
+ "length": 72
+ },
+ {
+ "text": "கல்லாரேயாயினும் கற்றாரைச் சேர்ந்தொழுகின் நல்லறிவு நாளும் தலைப்படுவர் தொல்சிறப்பின் ஒண்ணிறப் பாதிரிப்பூச் சேர்தலாற் புத்தோடு தண்ணீர்க்குத் தான்பயந்தாங்கு",
+ "source": "நாலடியார்",
+ "id": 41,
+ "length": 152
+ },
+ {
+ "text": "கல்வி கரையில கற்பவர் நாள்சில மெல்ல நினைக்கின் பிணிபல தெள்ளிதின் ஆராய்ந்து அமைவுடைய கற்பவே நீரொழியப் பாலுண் குருகின் தெரிந்து",
+ "source": "நாலடியார்",
+ "id": 42,
+ "length": 124
+ },
+ {
+ "text": "கல்லாது நீண்ட ஒருவன் உலகத்து நல்லறிவாளர் இடைப்புக்கு மெல்ல இருப்பினும் நாயிருந்தற்றே இராஅது உரைப்பினும் நாய்குரைத்தற்று",
+ "source": "நாலடியார்",
+ "id": 43,
+ "length": 119
+ },
+ {
+ "text": "உணர உணரும் உணர்வுடையாரைப் புணரிற் புணருமாம் இன்பம் புணரின் தெரியத் தெரியும் தெரிவிலாதாரைப் பிரியப் பிரியுமாம் நோய்",
+ "source": "நாலடியார்",
+ "id": 44,
+ "length": 114
+ },
+ {
+ "text": "கல்லென்று தந்தை கழற அதனையோர் சொல்லென்று கொள்ளாது இகழ்ந்தவன் மெல்ல எழுத்தோலை பல்லார்முன் நீட்ட விளியா வழுக்கோலைக் கொண்டு விடும்",
+ "source": "நாலடியார்",
+ "id": 45,
+ "length": 126
+ }
+ ]
+}
diff --git a/frontend/storybook/package.json b/frontend/storybook/package.json
index 00666bef0dbd..e4c018fb053a 100644
--- a/frontend/storybook/package.json
+++ b/frontend/storybook/package.json
@@ -32,7 +32,7 @@
"solid-js": "^1.9.11",
"storybook": "^10.2.14",
"storybook-solidjs-vite": "^10.0.9",
- "vite": "^7.3.1",
+ "vite": "^7.3.2",
"vitest": "^4.1.0"
}
}
diff --git a/package.json b/package.json
index 8bf9fd701e83..eb4fc0995bbe 100644
--- a/package.json
+++ b/package.json
@@ -74,7 +74,7 @@
"prettier": "3.7.1",
"turbo": "2.7.5",
"vitest": "4.1.0",
- "yaml": "2.8.2"
+ "yaml": "2.8.3"
},
"lint-staged": {
"*": [
diff --git a/packages/contracts/__test__/validation/validation.spec.ts b/packages/contracts/__test__/validation/validation.spec.ts
index 4af8689fc913..b1542883dc13 100644
--- a/packages/contracts/__test__/validation/validation.spec.ts
+++ b/packages/contracts/__test__/validation/validation.spec.ts
@@ -1,8 +1,10 @@
import { describe, it, expect } from "vitest";
import * as Validation from "@monkeytype/schemas/validation/validation";
+const containsDisallowedWords = Validation.__testing.containsDisallowedWords;
+
describe("validation", () => {
- it("containsProfanity", () => {
+ it("containsDisallowedWords", () => {
const testCases = [
{
text: "https://www.fuckyou.com",
@@ -35,7 +37,7 @@ describe("validation", () => {
];
testCases.forEach((testCase) => {
- expect(Validation.containsProfanity(testCase.text, "substring")).toBe(
+ expect(containsDisallowedWords(testCase.text, "substring")).toBe(
testCase.expected,
);
});
diff --git a/packages/release/package.json b/packages/release/package.json
index 179398dfaec0..b9f5baa0e353 100644
--- a/packages/release/package.json
+++ b/packages/release/package.json
@@ -14,7 +14,7 @@
"purge-cf-cache": "./bin/purgeCfCache.sh"
},
"dependencies": {
- "@octokit/rest": "21.1.1",
+ "@octokit/rest": "22.0.1",
"dotenv": "16.4.5",
"readline-sync": "1.4.10"
},
diff --git a/packages/schemas/__tests__/util.spec.ts b/packages/schemas/__tests__/util.spec.ts
new file mode 100644
index 000000000000..8f29eb0496b9
--- /dev/null
+++ b/packages/schemas/__tests__/util.spec.ts
@@ -0,0 +1,56 @@
+import { describe, it, expect } from "vitest";
+import { nameWithSeparators, slug } from "../src/util";
+
+describe("Schema Validation Tests", () => {
+ describe("nameWithSeparators", () => {
+ const schema = nameWithSeparators();
+
+ it("accepts valid names", () => {
+ expect(schema.safeParse("valid_name").success).toBe(true);
+ expect(schema.safeParse("valid-name").success).toBe(true);
+ expect(schema.safeParse("valid123").success).toBe(true);
+ expect(schema.safeParse("Valid_Name-Check").success).toBe(true);
+ });
+
+ it("rejects leading/trailing separators", () => {
+ expect(schema.safeParse("_invalid").success).toBe(false);
+ expect(schema.safeParse("invalid-").success).toBe(false);
+ });
+
+ it("rejects consecutive separators", () => {
+ expect(schema.safeParse("inv__alid").success).toBe(false);
+ expect(schema.safeParse("inv--alid").success).toBe(false);
+ expect(schema.safeParse("inv-_alid").success).toBe(false);
+ });
+
+ it("rejects dots", () => {
+ expect(schema.safeParse("invalid.dot").success).toBe(false);
+ expect(schema.safeParse(".invalid").success).toBe(false);
+ });
+ });
+
+ describe("slug", () => {
+ const schema = slug();
+
+ it("accepts valid slugs", () => {
+ expect(schema.safeParse("valid-slug.123_test").success).toBe(true);
+ expect(schema.safeParse("valid.dots").success).toBe(true);
+ expect(schema.safeParse("_leading_underscore_is_fine").success).toBe(
+ true,
+ );
+ expect(schema.safeParse("-leading_hyphen_is_fine").success).toBe(true);
+ expect(schema.safeParse("trailing_is_fine_in_slug_").success).toBe(true);
+ });
+
+ it("rejects leading dots", () => {
+ expect(schema.safeParse(".invalid").success).toBe(false);
+ });
+
+ it("rejects invalid characters", () => {
+ expect(schema.safeParse("invalid,comma").success).toBe(false);
+ expect(schema.safeParse(",invalid").success).toBe(false);
+ expect(schema.safeParse("invalid space").success).toBe(false);
+ expect(schema.safeParse("invalid#hash").success).toBe(false);
+ });
+ });
+});
diff --git a/packages/schemas/src/ape-keys.ts b/packages/schemas/src/ape-keys.ts
index 146c4cc658a1..1022ea028c73 100644
--- a/packages/schemas/src/ape-keys.ts
+++ b/packages/schemas/src/ape-keys.ts
@@ -1,10 +1,7 @@
import { z } from "zod";
-import { IdSchema } from "./util";
+import { IdSchema, slug } from "./util";
-export const ApeKeyNameSchema = z
- .string()
- .regex(/^[0-9a-zA-Z_.-]+$/)
- .max(20);
+export const ApeKeyNameSchema = slug().max(20);
export const ApeKeyUserDefinedSchema = z.object({
name: ApeKeyNameSchema,
diff --git a/packages/schemas/src/languages.ts b/packages/schemas/src/languages.ts
index 006aea124906..0cd95490e981 100644
--- a/packages/schemas/src/languages.ts
+++ b/packages/schemas/src/languages.ts
@@ -438,6 +438,8 @@ export const LanguageSchema = z.enum(
"code_cuda",
"kinyarwanda",
"pokemon_1k",
+ "kokanu",
+ "likanu",
],
{
errorMap: customEnumErrorHandler("Must be a supported language"),
diff --git a/packages/schemas/src/presets.ts b/packages/schemas/src/presets.ts
index 5faeb2a68224..91de2dad4b14 100644
--- a/packages/schemas/src/presets.ts
+++ b/packages/schemas/src/presets.ts
@@ -1,15 +1,12 @@
import { z } from "zod";
-import { IdSchema, TagSchema } from "./util";
+import { IdSchema, nameWithSeparators, TagSchema } from "./util";
import {
ConfigGroupName,
ConfigGroupNameSchema,
PartialConfigSchema,
} from "./configs";
-export const PresetNameSchema = z
- .string()
- .regex(/^[0-9a-zA-Z_-]+$/)
- .max(16);
+export const PresetNameSchema = nameWithSeparators().max(16);
export type PresetName = z.infer;
export const PresetTypeSchema = z.enum(["full", "partial"]);
diff --git a/packages/schemas/src/users.ts b/packages/schemas/src/users.ts
index e592c1bea026..80286ce739c5 100644
--- a/packages/schemas/src/users.ts
+++ b/packages/schemas/src/users.ts
@@ -1,5 +1,5 @@
import { z, ZodEffects, ZodOptional, ZodString } from "zod";
-import { IdSchema, StringNumberSchema } from "./util";
+import { IdSchema, nameWithSeparators, slug, StringNumberSchema } from "./util";
import { LanguageSchema } from "./languages";
import {
ModeSchema,
@@ -12,16 +12,13 @@ import {
PersonalBestSchema,
} from "./shared";
import { CustomThemeColorsSchema, FunboxNameSchema } from "./configs";
-import { doesNotContainProfanity } from "./validation/validation";
+import { doesNotContainDisallowedWords } from "./validation/validation";
import { ConnectionSchema } from "./connections";
const NoneFilterSchema = z.literal("none");
export const ResultFiltersSchema = z.object({
_id: IdSchema,
- name: z
- .string()
- .regex(/^[0-9a-zA-Z_.-]+$/)
- .max(16),
+ name: slug().max(16),
pb: z
.object({
no: z.boolean(),
@@ -72,11 +69,13 @@ export const UserStreakSchema = z
})
.strict();
export type UserStreak = z.infer;
+export const TagNameSchema = nameWithSeparators().max(16);
+export type TagName = z.infer;
export const UserTagSchema = z
.object({
_id: IdSchema,
- name: z.string(),
+ name: TagNameSchema,
personalBests: PersonalBestsSchema,
})
.strict();
@@ -85,24 +84,18 @@ export type UserTag = z.infer;
function profileDetailsBase(
schema: ZodString,
): ZodEffects>> {
- return doesNotContainProfanity("word", schema)
+ return doesNotContainDisallowedWords("word", schema)
.optional()
.transform((value) => (value === null ? undefined : value));
}
-export const TwitterProfileSchema = profileDetailsBase(
- z
- .string()
- .max(20)
- .regex(/^[0-9a-zA-Z_.-]+$/),
-).or(z.literal(""));
+export const TwitterProfileSchema = profileDetailsBase(slug().max(20)).or(
+ z.literal(""),
+);
-export const GithubProfileSchema = profileDetailsBase(
- z
- .string()
- .max(39)
- .regex(/^[0-9a-zA-Z_.-]+$/),
-).or(z.literal(""));
+export const GithubProfileSchema = profileDetailsBase(slug().max(39)).or(
+ z.literal(""),
+);
export const WebsiteSchema = profileDetailsBase(
z.string().url().max(200).startsWith("https://"),
@@ -125,10 +118,7 @@ export const UserProfileDetailsSchema = z
.strict();
export type UserProfileDetails = z.infer;
-export const CustomThemeNameSchema = z
- .string()
- .regex(/^[0-9a-zA-Z_-]+$/)
- .max(16);
+export const CustomThemeNameSchema = nameWithSeparators().max(16);
export type CustomThemeName = z.infer;
export const CustomThemeSchema = z
@@ -242,16 +232,9 @@ export const FavoriteQuotesSchema = z.record(
export type FavoriteQuotes = z.infer;
export const UserEmailSchema = z.string().email();
-export const UserNameSchema = doesNotContainProfanity(
+export const UserNameSchema = doesNotContainDisallowedWords(
"substring",
- z
- .string()
- .min(1)
- .max(16)
- .regex(
- /^[\da-zA-Z_-]+$/,
- "Can only contain lower/uppercase letters, underscore and minus.",
- ),
+ slug().min(1).max(16),
);
export const UserSchema = z.object({
@@ -297,12 +280,6 @@ export type ResultFiltersGroup = keyof ResultFilters;
export type ResultFiltersGroupItem =
keyof ResultFilters[T];
-export const TagNameSchema = z
- .string()
- .regex(/^[0-9a-zA-Z_.-]+$/)
- .max(16);
-export type TagName = z.infer;
-
export const TypingStatsSchema = z.object({
completedTests: z.number().int().nonnegative().optional(),
startedTests: z.number().int().nonnegative().optional(),
diff --git a/packages/schemas/src/util.ts b/packages/schemas/src/util.ts
index 6098b9ab3a7b..4abbf2c39c47 100644
--- a/packages/schemas/src/util.ts
+++ b/packages/schemas/src/util.ts
@@ -8,9 +8,29 @@ export const StringNumberSchema = z
)
.or(z.number().transform(String));
export type StringNumber = z.infer;
-
export const token = (): ZodString => z.string().regex(/^[a-zA-Z0-9_]+$/);
+export const slug = (): ZodString =>
+ z
+ .string()
+ .regex(
+ /^[0-9a-zA-Z_.-]+$/,
+ "Only letters, numbers, underscores, dots and hyphens allowed",
+ )
+ .regex(/^[^.].*$/, "Cannot start with a dot");
+
+export const nameWithSeparators = (): ZodString =>
+ z
+ .string()
+ .regex(
+ /^[0-9a-zA-Z_-]+$/,
+ "Only letters, numbers, underscores and hyphens allowed",
+ )
+ .regex(
+ /^[a-zA-Z0-9]+(?:[_-][a-zA-Z0-9]+)*$/,
+ "Separators cannot be at the start or end, or appear multiple times in a row",
+ );
+
export const IdSchema = token();
export type Id = z.infer;
diff --git a/packages/schemas/src/validation/validation.ts b/packages/schemas/src/validation/validation.ts
index 9ceb06fb1b4c..d573c06cdcea 100644
--- a/packages/schemas/src/validation/validation.ts
+++ b/packages/schemas/src/validation/validation.ts
@@ -2,7 +2,7 @@ import { replaceHomoglyphs } from "./homoglyphs";
import { ZodEffects, ZodString } from "zod";
// Sorry for the bad words
-const profanities = [
+const disallowedWords = [
"miodec",
"bitly",
"niqqa",
@@ -403,7 +403,7 @@ function sanitizeString(str: string | undefined): string | undefined {
.replace(/\s{3,}/g, " ");
}
-export function containsProfanity(
+function containsDisallowedWords(
text: string,
mode: "word" | "substring",
): boolean {
@@ -414,27 +414,29 @@ export function containsProfanity(
return replaceHomoglyphs(sanitizeString(str) ?? "");
});
- const hasProfanity = profanities.some((profanity) => {
+ const hasDisallowedWords = disallowedWords.some((disallowedWord) => {
return normalizedText.some((word) => {
return mode === "word"
- ? word.startsWith(profanity)
- : word.includes(profanity);
+ ? word.startsWith(disallowedWord)
+ : word.includes(disallowedWord);
});
});
- return hasProfanity;
+ return hasDisallowedWords;
}
-export function doesNotContainProfanity(
+export function doesNotContainDisallowedWords(
mode: "word" | "substring",
schema: ZodString,
): ZodEffects {
return schema.refine(
(val) => {
- return !containsProfanity(val, mode);
+ return !containsDisallowedWords(val, mode);
},
(val) => ({
- message: `Profanity detected. Please remove it. If you believe this is a mistake, please contact us. (${val})`,
+ message: `Disallowed word detected. Please remove it. If you believe this is a mistake, please contact us (${val}).`,
}),
);
}
+
+export const __testing = { containsDisallowedWords };
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index bf1f32fd42d7..78eb956b3682 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -22,7 +22,7 @@ importers:
version: link:packages/release
'@vitest/coverage-v8':
specifier: 4.0.15
- version: 4.0.15(vitest@4.1.0(@types/node@20.5.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)))
+ version: 4.0.15(vitest@4.1.0(@types/node@20.5.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)))
caniuse-lite:
specifier: 1.0.30001778
version: 1.0.30001778
@@ -58,10 +58,10 @@ importers:
version: 2.7.5
vitest:
specifier: 4.1.0
- version: 4.1.0(@types/node@20.5.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.1.0(@types/node@20.5.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
yaml:
- specifier: 2.8.2
- version: 2.8.2
+ specifier: 2.8.3
+ version: 2.8.3
backend:
dependencies:
@@ -141,8 +141,8 @@ importers:
specifier: 4.2.0
version: 4.2.0
nodemailer:
- specifier: 7.0.11
- version: 7.0.11
+ specifier: 8.0.4
+ version: 8.0.4
object-hash:
specifier: 3.0.0
version: 3.0.0
@@ -233,7 +233,7 @@ importers:
version: 10.0.0
'@vitest/coverage-v8':
specifier: 4.0.15
- version: 4.0.15(vitest@4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)))
+ version: 4.0.15(vitest@4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)))
concurrently:
specifier: 8.2.2
version: 8.2.2
@@ -263,7 +263,7 @@ importers:
version: 6.0.2
vitest:
specifier: 4.1.0
- version: 4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
yaml:
specifier: 2.8.2
version: 2.8.2
@@ -432,7 +432,7 @@ importers:
version: 0.8.10(solid-js@1.9.10)
'@tailwindcss/vite':
specifier: 4.2.1
- version: 4.2.1(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.2.1(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@tanstack/eslint-plugin-query':
specifier: 5.91.4
version: 5.91.4(eslint@9.39.1(jiti@2.6.1))(typescript@6.0.2)
@@ -471,7 +471,7 @@ importers:
version: 5.0.2
'@vitest/coverage-v8':
specifier: 4.0.15
- version: 4.0.15(vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)))
+ version: 4.0.15(vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)))
autoprefixer:
specifier: 10.4.27
version: 10.4.27(postcss@8.5.8)
@@ -497,8 +497,8 @@ importers:
specifier: 4.4.0
version: 4.4.0(@fortawesome/fontawesome-free@5.15.4)
happy-dom:
- specifier: 20.0.10
- version: 20.0.10
+ specifier: 20.8.9
+ version: 20.8.9
jsdom:
specifier: 27.4.0
version: 27.4.0
@@ -525,7 +525,7 @@ importers:
version: 1.70.0
solid-devtools:
specifier: 0.34.5
- version: 0.34.5(solid-js@1.9.10)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 0.34.5(solid-js@1.9.10)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
solid-js:
specifier: 1.9.10
version: 1.9.10
@@ -545,8 +545,8 @@ importers:
specifier: 3.0.0
version: 3.0.0
vite:
- specifier: 8.0.1
- version: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ specifier: 8.0.5
+ version: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
vite-bundle-visualizer:
specifier: 1.2.1
version: 1.2.1(rollup@2.80.0)
@@ -555,19 +555,19 @@ importers:
version: 1.1.2
vite-plugin-inspect:
specifier: 11.3.3
- version: 11.3.3(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 11.3.3(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
vite-plugin-minify:
specifier: 2.1.0
- version: 2.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 2.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
vite-plugin-pwa:
specifier: 1.1.0
- version: 1.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(workbox-build@7.1.1(@types/babel__core@7.20.5))(workbox-window@7.1.0)
+ version: 1.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(workbox-build@7.1.1(@types/babel__core@7.20.5))(workbox-window@7.1.0)
vite-plugin-solid:
specifier: 2.11.11
- version: 2.11.11(@testing-library/jest-dom@6.9.1)(solid-js@1.9.10)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 2.11.11(@testing-library/jest-dom@6.9.1)(solid-js@1.9.10)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
vitest:
specifier: 4.1.0
- version: 4.1.0(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
frontend/storybook:
dependencies:
@@ -583,7 +583,7 @@ importers:
version: 10.2.16(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))
'@storybook/addon-docs':
specifier: ^10.2.14
- version: 10.2.16(@types/react@19.2.14)(esbuild@0.27.3)(rollup@4.52.5)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 10.2.16(@types/react@19.2.14)(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@storybook/addon-links':
specifier: ^10.2.14
version: 10.2.16(react@18.3.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))
@@ -592,22 +592,22 @@ importers:
version: 10.2.16(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))
'@storybook/addon-vitest':
specifier: ^10.2.14
- version: 10.2.16(@vitest/browser-playwright@4.0.18)(@vitest/browser@4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0))(@vitest/runner@4.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vitest@4.1.0)
+ version: 10.2.16(@vitest/browser-playwright@4.0.18)(@vitest/browser@4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0))(@vitest/runner@4.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vitest@4.1.0)
'@storybook/builder-vite':
specifier: ^10.2.14
- version: 10.2.16(esbuild@0.27.3)(rollup@4.52.5)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 10.2.16(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@tailwindcss/vite':
specifier: ^4.2.1
- version: 4.2.1(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.2.1(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@vitest/browser':
specifier: ^4.0.18
- version: 4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)
+ version: 4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)
'@vitest/browser-playwright':
specifier: ^4.0.18
- version: 4.0.18(playwright@1.58.2)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)
+ version: 4.0.18(playwright@1.58.2)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)
'@vitest/coverage-v8':
specifier: ^4.0.18
- version: 4.0.18(@vitest/browser@4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0))(vitest@4.1.0)
+ version: 4.0.18(@vitest/browser@4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0))(vitest@4.1.0)
playwright:
specifier: ^1.58.2
version: 1.58.2
@@ -619,13 +619,13 @@ importers:
version: 10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
storybook-solidjs-vite:
specifier: ^10.0.9
- version: 10.0.9(@testing-library/jest-dom@6.9.1)(esbuild@0.27.3)(rollup@4.52.5)(solid-js@1.9.11)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@6.0.2)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 10.0.9(@testing-library/jest-dom@6.9.1)(esbuild@0.27.7)(rollup@4.60.1)(solid-js@1.9.11)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@6.0.2)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
vite:
- specifier: ^7.3.1
- version: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ specifier: ^7.3.2
+ version: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
vitest:
specifier: ^4.1.0
- version: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
packages/contracts:
dependencies:
@@ -656,13 +656,13 @@ importers:
version: 0.20.0
tsup:
specifier: 8.4.0
- version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.2)
+ version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.3)
typescript:
specifier: 6.0.2
version: 6.0.2
vitest:
specifier: 4.1.0
- version: 4.1.0(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
packages/funbox:
dependencies:
@@ -690,13 +690,13 @@ importers:
version: 0.20.0
tsup:
specifier: 8.4.0
- version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.2)
+ version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.3)
typescript:
specifier: 6.0.2
version: 6.0.2
vitest:
specifier: 4.1.0
- version: 4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
packages/oxlint-config:
devDependencies:
@@ -707,8 +707,8 @@ importers:
packages/release:
dependencies:
'@octokit/rest':
- specifier: 21.1.1
- version: 21.1.1
+ specifier: 22.0.1
+ version: 22.0.1
dotenv:
specifier: 16.4.5
version: 16.4.5
@@ -749,19 +749,19 @@ importers:
version: 0.20.0
tsup:
specifier: 8.4.0
- version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.2)
+ version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.3)
typescript:
specifier: 6.0.2
version: 6.0.2
vitest:
specifier: 4.1.0
- version: 4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
packages/tsup-config:
dependencies:
tsup:
specifier: 8.4.0
- version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.2)
+ version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.3)
devDependencies:
'@monkeytype/typescript-config':
specifier: workspace:*
@@ -797,13 +797,13 @@ importers:
version: 0.20.0
tsup:
specifier: 8.4.0
- version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.2)
+ version: 8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.3)
typescript:
specifier: 6.0.2
version: 6.0.2
vitest:
specifier: 4.1.0
- version: 4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
zod:
specifier: 3.23.8
version: 3.23.8
@@ -1567,6 +1567,12 @@ packages:
cpu: [ppc64]
os: [aix]
+ '@esbuild/aix-ppc64@0.27.7':
+ resolution: {integrity: sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
+
'@esbuild/android-arm64@0.25.11':
resolution: {integrity: sha512-9slpyFBc4FPPz48+f6jyiXOx/Y4v34TUeDDXJpZqAWQn/08lKGeD8aDp9TMn9jDz2CiEuHwfhRmGBvpnd/PWIQ==}
engines: {node: '>=18'}
@@ -1579,6 +1585,12 @@ packages:
cpu: [arm64]
os: [android]
+ '@esbuild/android-arm64@0.27.7':
+ resolution: {integrity: sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
+
'@esbuild/android-arm@0.25.11':
resolution: {integrity: sha512-uoa7dU+Dt3HYsethkJ1k6Z9YdcHjTrSb5NUy66ZfZaSV8hEYGD5ZHbEMXnqLFlbBflLsl89Zke7CAdDJ4JI+Gg==}
engines: {node: '>=18'}
@@ -1591,6 +1603,12 @@ packages:
cpu: [arm]
os: [android]
+ '@esbuild/android-arm@0.27.7':
+ resolution: {integrity: sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
+
'@esbuild/android-x64@0.25.11':
resolution: {integrity: sha512-Sgiab4xBjPU1QoPEIqS3Xx+R2lezu0LKIEcYe6pftr56PqPygbB7+szVnzoShbx64MUupqoE0KyRlN7gezbl8g==}
engines: {node: '>=18'}
@@ -1603,6 +1621,12 @@ packages:
cpu: [x64]
os: [android]
+ '@esbuild/android-x64@0.27.7':
+ resolution: {integrity: sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
+
'@esbuild/darwin-arm64@0.25.11':
resolution: {integrity: sha512-VekY0PBCukppoQrycFxUqkCojnTQhdec0vevUL/EDOCnXd9LKWqD/bHwMPzigIJXPhC59Vd1WFIL57SKs2mg4w==}
engines: {node: '>=18'}
@@ -1615,6 +1639,12 @@ packages:
cpu: [arm64]
os: [darwin]
+ '@esbuild/darwin-arm64@0.27.7':
+ resolution: {integrity: sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+
'@esbuild/darwin-x64@0.25.11':
resolution: {integrity: sha512-+hfp3yfBalNEpTGp9loYgbknjR695HkqtY3d3/JjSRUyPg/xd6q+mQqIb5qdywnDxRZykIHs3axEqU6l1+oWEQ==}
engines: {node: '>=18'}
@@ -1627,6 +1657,12 @@ packages:
cpu: [x64]
os: [darwin]
+ '@esbuild/darwin-x64@0.27.7':
+ resolution: {integrity: sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
+
'@esbuild/freebsd-arm64@0.25.11':
resolution: {integrity: sha512-CmKjrnayyTJF2eVuO//uSjl/K3KsMIeYeyN7FyDBjsR3lnSJHaXlVoAK8DZa7lXWChbuOk7NjAc7ygAwrnPBhA==}
engines: {node: '>=18'}
@@ -1639,6 +1675,12 @@ packages:
cpu: [arm64]
os: [freebsd]
+ '@esbuild/freebsd-arm64@0.27.7':
+ resolution: {integrity: sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [freebsd]
+
'@esbuild/freebsd-x64@0.25.11':
resolution: {integrity: sha512-Dyq+5oscTJvMaYPvW3x3FLpi2+gSZTCE/1ffdwuM6G1ARang/mb3jvjxs0mw6n3Lsw84ocfo9CrNMqc5lTfGOw==}
engines: {node: '>=18'}
@@ -1651,6 +1693,12 @@ packages:
cpu: [x64]
os: [freebsd]
+ '@esbuild/freebsd-x64@0.27.7':
+ resolution: {integrity: sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [freebsd]
+
'@esbuild/linux-arm64@0.25.11':
resolution: {integrity: sha512-Qr8AzcplUhGvdyUF08A1kHU3Vr2O88xxP0Tm8GcdVOUm25XYcMPp2YqSVHbLuXzYQMf9Bh/iKx7YPqECs6ffLA==}
engines: {node: '>=18'}
@@ -1663,6 +1711,12 @@ packages:
cpu: [arm64]
os: [linux]
+ '@esbuild/linux-arm64@0.27.7':
+ resolution: {integrity: sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [linux]
+
'@esbuild/linux-arm@0.25.11':
resolution: {integrity: sha512-TBMv6B4kCfrGJ8cUPo7vd6NECZH/8hPpBHHlYI3qzoYFvWu2AdTvZNuU/7hsbKWqu/COU7NIK12dHAAqBLLXgw==}
engines: {node: '>=18'}
@@ -1675,6 +1729,12 @@ packages:
cpu: [arm]
os: [linux]
+ '@esbuild/linux-arm@0.27.7':
+ resolution: {integrity: sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [linux]
+
'@esbuild/linux-ia32@0.25.11':
resolution: {integrity: sha512-TmnJg8BMGPehs5JKrCLqyWTVAvielc615jbkOirATQvWWB1NMXY77oLMzsUjRLa0+ngecEmDGqt5jiDC6bfvOw==}
engines: {node: '>=18'}
@@ -1687,6 +1747,12 @@ packages:
cpu: [ia32]
os: [linux]
+ '@esbuild/linux-ia32@0.27.7':
+ resolution: {integrity: sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [linux]
+
'@esbuild/linux-loong64@0.25.11':
resolution: {integrity: sha512-DIGXL2+gvDaXlaq8xruNXUJdT5tF+SBbJQKbWy/0J7OhU8gOHOzKmGIlfTTl6nHaCOoipxQbuJi7O++ldrxgMw==}
engines: {node: '>=18'}
@@ -1699,6 +1765,12 @@ packages:
cpu: [loong64]
os: [linux]
+ '@esbuild/linux-loong64@0.27.7':
+ resolution: {integrity: sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
+ os: [linux]
+
'@esbuild/linux-mips64el@0.25.11':
resolution: {integrity: sha512-Osx1nALUJu4pU43o9OyjSCXokFkFbyzjXb6VhGIJZQ5JZi8ylCQ9/LFagolPsHtgw6himDSyb5ETSfmp4rpiKQ==}
engines: {node: '>=18'}
@@ -1711,6 +1783,12 @@ packages:
cpu: [mips64el]
os: [linux]
+ '@esbuild/linux-mips64el@0.27.7':
+ resolution: {integrity: sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
+ os: [linux]
+
'@esbuild/linux-ppc64@0.25.11':
resolution: {integrity: sha512-nbLFgsQQEsBa8XSgSTSlrnBSrpoWh7ioFDUmwo158gIm5NNP+17IYmNWzaIzWmgCxq56vfr34xGkOcZ7jX6CPw==}
engines: {node: '>=18'}
@@ -1723,6 +1801,12 @@ packages:
cpu: [ppc64]
os: [linux]
+ '@esbuild/linux-ppc64@0.27.7':
+ resolution: {integrity: sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [linux]
+
'@esbuild/linux-riscv64@0.25.11':
resolution: {integrity: sha512-HfyAmqZi9uBAbgKYP1yGuI7tSREXwIb438q0nqvlpxAOs3XnZ8RsisRfmVsgV486NdjD7Mw2UrFSw51lzUk1ww==}
engines: {node: '>=18'}
@@ -1735,6 +1819,12 @@ packages:
cpu: [riscv64]
os: [linux]
+ '@esbuild/linux-riscv64@0.27.7':
+ resolution: {integrity: sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==}
+ engines: {node: '>=18'}
+ cpu: [riscv64]
+ os: [linux]
+
'@esbuild/linux-s390x@0.25.11':
resolution: {integrity: sha512-HjLqVgSSYnVXRisyfmzsH6mXqyvj0SA7pG5g+9W7ESgwA70AXYNpfKBqh1KbTxmQVaYxpzA/SvlB9oclGPbApw==}
engines: {node: '>=18'}
@@ -1747,6 +1837,12 @@ packages:
cpu: [s390x]
os: [linux]
+ '@esbuild/linux-s390x@0.27.7':
+ resolution: {integrity: sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==}
+ engines: {node: '>=18'}
+ cpu: [s390x]
+ os: [linux]
+
'@esbuild/linux-x64@0.25.11':
resolution: {integrity: sha512-HSFAT4+WYjIhrHxKBwGmOOSpphjYkcswF449j6EjsjbinTZbp8PJtjsVK1XFJStdzXdy/jaddAep2FGY+wyFAQ==}
engines: {node: '>=18'}
@@ -1759,6 +1855,12 @@ packages:
cpu: [x64]
os: [linux]
+ '@esbuild/linux-x64@0.27.7':
+ resolution: {integrity: sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [linux]
+
'@esbuild/netbsd-arm64@0.25.11':
resolution: {integrity: sha512-hr9Oxj1Fa4r04dNpWr3P8QKVVsjQhqrMSUzZzf+LZcYjZNqhA3IAfPQdEh1FLVUJSiu6sgAwp3OmwBfbFgG2Xg==}
engines: {node: '>=18'}
@@ -1771,6 +1873,12 @@ packages:
cpu: [arm64]
os: [netbsd]
+ '@esbuild/netbsd-arm64@0.27.7':
+ resolution: {integrity: sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [netbsd]
+
'@esbuild/netbsd-x64@0.25.11':
resolution: {integrity: sha512-u7tKA+qbzBydyj0vgpu+5h5AeudxOAGncb8N6C9Kh1N4n7wU1Xw1JDApsRjpShRpXRQlJLb9wY28ELpwdPcZ7A==}
engines: {node: '>=18'}
@@ -1783,6 +1891,12 @@ packages:
cpu: [x64]
os: [netbsd]
+ '@esbuild/netbsd-x64@0.27.7':
+ resolution: {integrity: sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [netbsd]
+
'@esbuild/openbsd-arm64@0.25.11':
resolution: {integrity: sha512-Qq6YHhayieor3DxFOoYM1q0q1uMFYb7cSpLD2qzDSvK1NAvqFi8Xgivv0cFC6J+hWVw2teCYltyy9/m/14ryHg==}
engines: {node: '>=18'}
@@ -1795,6 +1909,12 @@ packages:
cpu: [arm64]
os: [openbsd]
+ '@esbuild/openbsd-arm64@0.27.7':
+ resolution: {integrity: sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+
'@esbuild/openbsd-x64@0.25.11':
resolution: {integrity: sha512-CN+7c++kkbrckTOz5hrehxWN7uIhFFlmS/hqziSFVWpAzpWrQoAG4chH+nN3Be+Kzv/uuo7zhX716x3Sn2Jduw==}
engines: {node: '>=18'}
@@ -1807,6 +1927,12 @@ packages:
cpu: [x64]
os: [openbsd]
+ '@esbuild/openbsd-x64@0.27.7':
+ resolution: {integrity: sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [openbsd]
+
'@esbuild/openharmony-arm64@0.25.11':
resolution: {integrity: sha512-rOREuNIQgaiR+9QuNkbkxubbp8MSO9rONmwP5nKncnWJ9v5jQ4JxFnLu4zDSRPf3x4u+2VN4pM4RdyIzDty/wQ==}
engines: {node: '>=18'}
@@ -1819,6 +1945,12 @@ packages:
cpu: [arm64]
os: [openharmony]
+ '@esbuild/openharmony-arm64@0.27.7':
+ resolution: {integrity: sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openharmony]
+
'@esbuild/sunos-x64@0.25.11':
resolution: {integrity: sha512-nq2xdYaWxyg9DcIyXkZhcYulC6pQ2FuCgem3LI92IwMgIZ69KHeY8T4Y88pcwoLIjbed8n36CyKoYRDygNSGhA==}
engines: {node: '>=18'}
@@ -1831,6 +1963,12 @@ packages:
cpu: [x64]
os: [sunos]
+ '@esbuild/sunos-x64@0.27.7':
+ resolution: {integrity: sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [sunos]
+
'@esbuild/win32-arm64@0.25.11':
resolution: {integrity: sha512-3XxECOWJq1qMZ3MN8srCJ/QfoLpL+VaxD/WfNRm1O3B4+AZ/BnLVgFbUV3eiRYDMXetciH16dwPbbHqwe1uU0Q==}
engines: {node: '>=18'}
@@ -1843,6 +1981,12 @@ packages:
cpu: [arm64]
os: [win32]
+ '@esbuild/win32-arm64@0.27.7':
+ resolution: {integrity: sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [win32]
+
'@esbuild/win32-ia32@0.25.11':
resolution: {integrity: sha512-3ukss6gb9XZ8TlRyJlgLn17ecsK4NSQTmdIXRASVsiS2sQ6zPPZklNJT5GR5tE/MUarymmy8kCEf5xPCNCqVOA==}
engines: {node: '>=18'}
@@ -1855,6 +1999,12 @@ packages:
cpu: [ia32]
os: [win32]
+ '@esbuild/win32-ia32@0.27.7':
+ resolution: {integrity: sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [win32]
+
'@esbuild/win32-x64@0.25.11':
resolution: {integrity: sha512-D7Hpz6A2L4hzsRpPaCYkQnGOotdUpDzSGRIv9I+1ITdHROSFUWW95ZPZWQmGka1Fg7W3zFJowyn9WGwMJ0+KPA==}
engines: {node: '>=18'}
@@ -1867,6 +2017,12 @@ packages:
cpu: [x64]
os: [win32]
+ '@esbuild/win32-x64@0.27.7':
+ resolution: {integrity: sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+
'@eslint-community/eslint-utils@4.9.1':
resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -2463,8 +2619,11 @@ packages:
cpu: [x64]
os: [win32]
- '@napi-rs/wasm-runtime@1.1.1':
- resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==}
+ '@napi-rs/wasm-runtime@1.1.2':
+ resolution: {integrity: sha512-sNXv5oLJ7ob93xkZ1XnxisYhGYXfaG9f65/ZgYuAu3qt7b3NadcOEhLvx28hv31PgX8SZJRYrAIPQilQmFpLVw==}
+ peerDependencies:
+ '@emnapi/core': ^1.7.1
+ '@emnapi/runtime': ^1.7.1
'@neoconfetti/react@1.0.0':
resolution: {integrity: sha512-klcSooChXXOzIm+SE5IISIAn3bYzYfPjbX7D7HoqZL84oAfgREeSg5vSIaSFH+DaGzzvImTyWe1OyrJ67vik4A==}
@@ -2504,63 +2663,57 @@ packages:
resolution: {integrity: sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
- '@octokit/auth-token@5.1.2':
- resolution: {integrity: sha512-JcQDsBdg49Yky2w2ld20IHAlwr8d/d8N6NiOXbtuoPCqzbsiJgF633mVUw3x4mo0H5ypataQIX7SFu3yy44Mpw==}
- engines: {node: '>= 18'}
-
- '@octokit/core@6.1.5':
- resolution: {integrity: sha512-vvmsN0r7rguA+FySiCsbaTTobSftpIDIpPW81trAmsv9TGxg3YCujAxRYp/Uy8xmDgYCzzgulG62H7KYUFmeIg==}
- engines: {node: '>= 18'}
+ '@octokit/auth-token@6.0.0':
+ resolution: {integrity: sha512-P4YJBPdPSpWTQ1NU4XYdvHvXJJDxM6YwpS0FZHRgP7YFkdVxsWcpWGy/NVqlAA7PcPCnMacXlRm1y2PFZRWL/w==}
+ engines: {node: '>= 20'}
- '@octokit/endpoint@10.1.4':
- resolution: {integrity: sha512-OlYOlZIsfEVZm5HCSR8aSg02T2lbUWOsCQoPKfTXJwDzcHQBrVBGdGXb89dv2Kw2ToZaRtudp8O3ZIYoaOjKlA==}
- engines: {node: '>= 18'}
+ '@octokit/core@7.0.6':
+ resolution: {integrity: sha512-DhGl4xMVFGVIyMwswXeyzdL4uXD5OGILGX5N8Y+f6W7LhC1Ze2poSNrkF/fedpVDHEEZ+PHFW0vL14I+mm8K3Q==}
+ engines: {node: '>= 20'}
- '@octokit/graphql@8.2.2':
- resolution: {integrity: sha512-Yi8hcoqsrXGdt0yObxbebHXFOiUA+2v3n53epuOg1QUgOB6c4XzvisBNVXJSl8RYA5KrDuSL2yq9Qmqe5N0ryA==}
- engines: {node: '>= 18'}
+ '@octokit/endpoint@11.0.3':
+ resolution: {integrity: sha512-FWFlNxghg4HrXkD3ifYbS/IdL/mDHjh9QcsNyhQjN8dplUoZbejsdpmuqdA76nxj2xoWPs7p8uX2SNr9rYu0Ag==}
+ engines: {node: '>= 20'}
- '@octokit/openapi-types@24.2.0':
- resolution: {integrity: sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==}
+ '@octokit/graphql@9.0.3':
+ resolution: {integrity: sha512-grAEuupr/C1rALFnXTv6ZQhFuL1D8G5y8CN04RgrO4FIPMrtm+mcZzFG7dcBm+nq+1ppNixu+Jd78aeJOYxlGA==}
+ engines: {node: '>= 20'}
- '@octokit/openapi-types@25.0.0':
- resolution: {integrity: sha512-FZvktFu7HfOIJf2BScLKIEYjDsw6RKc7rBJCdvCTfKsVnx2GEB/Nbzjr29DUdb7vQhlzS/j8qDzdditP0OC6aw==}
+ '@octokit/openapi-types@27.0.0':
+ resolution: {integrity: sha512-whrdktVs1h6gtR+09+QsNk2+FO+49j6ga1c55YZudfEG+oKJVvJLQi3zkOm5JjiUXAagWK2tI2kTGKJ2Ys7MGA==}
- '@octokit/plugin-paginate-rest@11.6.0':
- resolution: {integrity: sha512-n5KPteiF7pWKgBIBJSk8qzoZWcUkza2O6A0za97pMGVrGfPdltxrfmfF5GucHYvHGZD8BdaZmmHGz5cX/3gdpw==}
- engines: {node: '>= 18'}
+ '@octokit/plugin-paginate-rest@14.0.0':
+ resolution: {integrity: sha512-fNVRE7ufJiAA3XUrha2omTA39M6IXIc6GIZLvlbsm8QOQCYvpq/LkMNGyFlB1d8hTDzsAXa3OKtybdMAYsV/fw==}
+ engines: {node: '>= 20'}
peerDependencies:
'@octokit/core': '>=6'
- '@octokit/plugin-request-log@5.3.1':
- resolution: {integrity: sha512-n/lNeCtq+9ofhC15xzmJCNKP2BWTv8Ih2TTy+jatNCCq/gQP/V7rK3fjIfuz0pDWDALO/o/4QY4hyOF6TQQFUw==}
- engines: {node: '>= 18'}
+ '@octokit/plugin-request-log@6.0.0':
+ resolution: {integrity: sha512-UkOzeEN3W91/eBq9sPZNQ7sUBvYCqYbrrD8gTbBuGtHEuycE4/awMXcYvx6sVYo7LypPhmQwwpUe4Yyu4QZN5Q==}
+ engines: {node: '>= 20'}
peerDependencies:
'@octokit/core': '>=6'
- '@octokit/plugin-rest-endpoint-methods@13.5.0':
- resolution: {integrity: sha512-9Pas60Iv9ejO3WlAX3maE1+38c5nqbJXV5GrncEfkndIpZrJ/WPMRd2xYDcPPEt5yzpxcjw9fWNoPhsSGzqKqw==}
- engines: {node: '>= 18'}
+ '@octokit/plugin-rest-endpoint-methods@17.0.0':
+ resolution: {integrity: sha512-B5yCyIlOJFPqUUeiD0cnBJwWJO8lkJs5d8+ze9QDP6SvfiXSz1BF+91+0MeI1d2yxgOhU/O+CvtiZ9jSkHhFAw==}
+ engines: {node: '>= 20'}
peerDependencies:
'@octokit/core': '>=6'
- '@octokit/request-error@6.1.8':
- resolution: {integrity: sha512-WEi/R0Jmq+IJKydWlKDmryPcmdYSVjL3ekaiEL1L9eo1sUnqMJ+grqmC9cjk7CA7+b2/T397tO5d8YLOH3qYpQ==}
- engines: {node: '>= 18'}
-
- '@octokit/request@9.2.3':
- resolution: {integrity: sha512-Ma+pZU8PXLOEYzsWf0cn/gY+ME57Wq8f49WTXA8FMHp2Ps9djKw//xYJ1je8Hm0pR2lU9FUGeJRWOtxq6olt4w==}
- engines: {node: '>= 18'}
+ '@octokit/request-error@7.1.0':
+ resolution: {integrity: sha512-KMQIfq5sOPpkQYajXHwnhjCC0slzCNScLHs9JafXc4RAJI+9f+jNDlBNaIMTvazOPLgb4BnlhGJOTbnN0wIjPw==}
+ engines: {node: '>= 20'}
- '@octokit/rest@21.1.1':
- resolution: {integrity: sha512-sTQV7va0IUVZcntzy1q3QqPm/r8rWtDCqpRAmb8eXXnKkjoQEtFe3Nt5GTVsHft+R6jJoHeSiVLcgcvhtue/rg==}
- engines: {node: '>= 18'}
+ '@octokit/request@10.0.8':
+ resolution: {integrity: sha512-SJZNwY9pur9Agf7l87ywFi14W+Hd9Jg6Ifivsd33+/bGUQIjNujdFiXII2/qSlN2ybqUHfp5xpekMEjIBTjlSw==}
+ engines: {node: '>= 20'}
- '@octokit/types@13.10.0':
- resolution: {integrity: sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==}
+ '@octokit/rest@22.0.1':
+ resolution: {integrity: sha512-Jzbhzl3CEexhnivb1iQ0KJ7s5vvjMWcmRtq5aUsKmKDrRW6z3r84ngmiFKFvpZjpiU/9/S6ITPFRpn5s/3uQJw==}
+ engines: {node: '>= 20'}
- '@octokit/types@14.0.0':
- resolution: {integrity: sha512-VVmZP0lEhbo2O1pdq63gZFiGCKkm8PPp8AUOijlwPO6hojEVjspA0MWKP7E4hbvGxzFKNqKr6p0IYtOH/Wf/zA==}
+ '@octokit/types@16.0.0':
+ resolution: {integrity: sha512-sKq+9r1Mm4efXW1FCk7hFSeJo4QKreL/tTbR0rz/qx/r1Oa2VV83LTA/H/MuCOX7uCIJmQVRKBcbmWoySjAnSg==}
'@one-ini/wasm@0.1.1':
resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==}
@@ -2641,8 +2794,8 @@ packages:
resolution: {integrity: sha512-aKcOkyrorBGlajjRdVoJWHTxfxO1vCNHLJVlSDaRHDIdjU+pX8IYQPvPDkYiujKLbRnWU+1TBwEt0QRgSm4SGA==}
engines: {node: '>=14'}
- '@oxc-project/types@0.120.0':
- resolution: {integrity: sha512-k1YNu55DuvAip/MGE1FTsIuU3FUCn6v/ujG9V7Nq5Df/kX2CWb13hhwD0lmJGMGqE+bE1MXvv9SZVnMzEXlWcg==}
+ '@oxc-project/types@0.122.0':
+ resolution: {integrity: sha512-oLAl5kBpV4w69UtFZ9xqcmTi+GENWOcPF7FCrczTiBbmC0ibXxCwyvZGbO39rCVEuLGAZM84DH0pUIyyv/YJzA==}
'@oxfmt/binding-android-arm-eabi@0.44.0':
resolution: {integrity: sha512-5UvghMd9SA/yvKTWCAxMAPXS1d2i054UeOf4iFjZjfayTwCINcC3oaSXjtbZfCaEpxgJod7XiOjTtby5yEv/BQ==}
@@ -3066,97 +3219,97 @@ packages:
resolution: {integrity: sha512-WMeg9TmAc0ZINp6Tza+ZWhMuIBM28us6ZyLj5DKWZhkBZhKaTNhXlmTYES11uM35eie+mYZStTov4vXYL//wqg==}
engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'}
- '@rolldown/binding-android-arm64@1.0.0-rc.10':
- resolution: {integrity: sha512-jOHxwXhxmFKuXztiu1ORieJeTbx5vrTkcOkkkn2d35726+iwhrY1w/+nYY/AGgF12thg33qC3R1LMBF5tHTZHg==}
+ '@rolldown/binding-android-arm64@1.0.0-rc.12':
+ resolution: {integrity: sha512-pv1y2Fv0JybcykuiiD3qBOBdz6RteYojRFY1d+b95WVuzx211CRh+ytI/+9iVyWQ6koTh5dawe4S/yRfOFjgaA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
- '@rolldown/binding-darwin-arm64@1.0.0-rc.10':
- resolution: {integrity: sha512-gED05Teg/vtTZbIJBc4VNMAxAFDUPkuO/rAIyyxZjTj1a1/s6z5TII/5yMGZ0uLRCifEtwUQn8OlYzuYc0m70w==}
+ '@rolldown/binding-darwin-arm64@1.0.0-rc.12':
+ resolution: {integrity: sha512-cFYr6zTG/3PXXF3pUO+umXxt1wkRK/0AYT8lDwuqvRC+LuKYWSAQAQZjCWDQpAH172ZV6ieYrNnFzVVcnSflAg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
- '@rolldown/binding-darwin-x64@1.0.0-rc.10':
- resolution: {integrity: sha512-rI15NcM1mA48lqrIxVkHfAqcyFLcQwyXWThy+BQ5+mkKKPvSO26ir+ZDp36AgYoYVkqvMcdS8zOE6SeBsR9e8A==}
+ '@rolldown/binding-darwin-x64@1.0.0-rc.12':
+ resolution: {integrity: sha512-ZCsYknnHzeXYps0lGBz8JrF37GpE9bFVefrlmDrAQhOEi4IOIlcoU1+FwHEtyXGx2VkYAvhu7dyBf75EJQffBw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
- '@rolldown/binding-freebsd-x64@1.0.0-rc.10':
- resolution: {integrity: sha512-XZRXHdTa+4ME1MuDVp021+doQ+z6Ei4CCFmNc5/sKbqb8YmkiJdj8QKlV3rCI0AJtAeSB5n0WGPuJWNL9p/L2w==}
+ '@rolldown/binding-freebsd-x64@1.0.0-rc.12':
+ resolution: {integrity: sha512-dMLeprcVsyJsKolRXyoTH3NL6qtsT0Y2xeuEA8WQJquWFXkEC4bcu1rLZZSnZRMtAqwtrF/Ib9Ddtpa/Gkge9Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
- '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.10':
- resolution: {integrity: sha512-R0SQMRluISSLzFE20sPWYHVmJdDQnRyc/FzSCN72BqQmh2SOZUFG+N3/vBZpR4C6WpEUVYJLrYUXaj43sJsNLA==}
+ '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.12':
+ resolution: {integrity: sha512-YqWjAgGC/9M1lz3GR1r1rP79nMgo3mQiiA+Hfo+pvKFK1fAJ1bCi0ZQVh8noOqNacuY1qIcfyVfP6HoyBRZ85Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.10':
- resolution: {integrity: sha512-Y1reMrV/o+cwpduYhJuOE3OMKx32RMYCidf14y+HssARRmhDuWXJ4yVguDg2R/8SyyGNo+auzz64LnPK9Hq6jg==}
+ '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.12':
+ resolution: {integrity: sha512-/I5AS4cIroLpslsmzXfwbe5OmWvSsrFuEw3mwvbQ1kDxJ822hFHIx+vsN/TAzNVyepI/j/GSzrtCIwQPeKCLIg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
- '@rolldown/binding-linux-arm64-musl@1.0.0-rc.10':
- resolution: {integrity: sha512-vELN+HNb2IzuzSBUOD4NHmP9yrGwl1DVM29wlQvx1OLSclL0NgVWnVDKl/8tEks79EFek/kebQKnNJkIAA4W2g==}
+ '@rolldown/binding-linux-arm64-musl@1.0.0-rc.12':
+ resolution: {integrity: sha512-V6/wZztnBqlx5hJQqNWwFdxIKN0m38p8Jas+VoSfgH54HSj9tKTt1dZvG6JRHcjh6D7TvrJPWFGaY9UBVOaWPw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
- '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.10':
- resolution: {integrity: sha512-ZqrufYTgzxbHwpqOjzSsb0UV/aV2TFIY5rP8HdsiPTv/CuAgCRjM6s9cYFwQ4CNH+hf9Y4erHW1GjZuZ7WoI7w==}
+ '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.12':
+ resolution: {integrity: sha512-AP3E9BpcUYliZCxa3w5Kwj9OtEVDYK6sVoUzy4vTOJsjPOgdaJZKFmN4oOlX0Wp0RPV2ETfmIra9x1xuayFB7g==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ppc64]
os: [linux]
- '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.10':
- resolution: {integrity: sha512-gSlmVS1FZJSRicA6IyjoRoKAFK7IIHBs7xJuHRSmjImqk3mPPWbR7RhbnfH2G6bcmMEllCt2vQ/7u9e6bBnByg==}
+ '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.12':
+ resolution: {integrity: sha512-nWwpvUSPkoFmZo0kQazZYOrT7J5DGOJ/+QHHzjvNlooDZED8oH82Yg67HvehPPLAg5fUff7TfWFHQS8IV1n3og==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
- '@rolldown/binding-linux-x64-gnu@1.0.0-rc.10':
- resolution: {integrity: sha512-eOCKUpluKgfObT2pHjztnaWEIbUabWzk3qPZ5PuacuPmr4+JtQG4k2vGTY0H15edaTnicgU428XW/IH6AimcQw==}
+ '@rolldown/binding-linux-x64-gnu@1.0.0-rc.12':
+ resolution: {integrity: sha512-RNrafz5bcwRy+O9e6P8Z/OCAJW/A+qtBczIqVYwTs14pf4iV1/+eKEjdOUta93q2TsT/FI0XYDP3TCky38LMAg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
- '@rolldown/binding-linux-x64-musl@1.0.0-rc.10':
- resolution: {integrity: sha512-Xdf2jQbfQowJnLcgYfD/m0Uu0Qj5OdxKallD78/IPPfzaiaI4KRAwZzHcKQ4ig1gtg1SuzC7jovNiM2TzQsBXA==}
+ '@rolldown/binding-linux-x64-musl@1.0.0-rc.12':
+ resolution: {integrity: sha512-Jpw/0iwoKWx3LJ2rc1yjFrj+T7iHZn2JDg1Yny1ma0luviFS4mhAIcd1LFNxK3EYu3DHWCps0ydXQ5i/rrJ2ig==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
- '@rolldown/binding-openharmony-arm64@1.0.0-rc.10':
- resolution: {integrity: sha512-o1hYe8hLi1EY6jgPFyxQgQ1wcycX+qz8eEbVmot2hFkgUzPxy9+kF0u0NIQBeDq+Mko47AkaFFaChcvZa9UX9Q==}
+ '@rolldown/binding-openharmony-arm64@1.0.0-rc.12':
+ resolution: {integrity: sha512-vRugONE4yMfVn0+7lUKdKvN4D5YusEiPilaoO2sgUWpCvrncvWgPMzK00ZFFJuiPgLwgFNP5eSiUlv2tfc+lpA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [openharmony]
- '@rolldown/binding-wasm32-wasi@1.0.0-rc.10':
- resolution: {integrity: sha512-Ugv9o7qYJudqQO5Y5y2N2SOo6S4WiqiNOpuQyoPInnhVzCY+wi/GHltcLHypG9DEUYMB0iTB/huJrpadiAcNcA==}
+ '@rolldown/binding-wasm32-wasi@1.0.0-rc.12':
+ resolution: {integrity: sha512-ykGiLr/6kkiHc0XnBfmFJuCjr5ZYKKofkx+chJWDjitX+KsJuAmrzWhwyOMSHzPhzOHOy7u9HlFoa5MoAOJ/Zg==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
- '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.10':
- resolution: {integrity: sha512-7UODQb4fQUNT/vmgDZBl3XOBAIOutP5R3O/rkxg0aLfEGQ4opbCgU5vOw/scPe4xOqBwL9fw7/RP1vAMZ6QlAQ==}
+ '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.12':
+ resolution: {integrity: sha512-5eOND4duWkwx1AzCxadcOrNeighiLwMInEADT0YM7xeEOOFcovWZCq8dadXgcRHSf3Ulh1kFo/qvzoFiCLOL1Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
- '@rolldown/binding-win32-x64-msvc@1.0.0-rc.10':
- resolution: {integrity: sha512-PYxKHMVHOb5NJuDL53vBUl1VwUjymDcYI6rzpIni0C9+9mTiJedvUxSk7/RPp7OOAm3v+EjgMu9bIy3N6b408w==}
+ '@rolldown/binding-win32-x64-msvc@1.0.0-rc.12':
+ resolution: {integrity: sha512-PyqoipaswDLAZtot351MLhrlrh6lcZPo2LSYE+VDxbVk24LVKAGOuE4hb8xZQmrPAuEtTZW8E6D2zc5EUZX4Lw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
- '@rolldown/pluginutils@1.0.0-rc.10':
- resolution: {integrity: sha512-UkVDEFk1w3mveXeKgaTuYfKWtPbvgck1dT8TUG3bnccrH0XtLTuAyfCoks4Q/M5ZGToSVJTIQYCzy2g/atAOeg==}
+ '@rolldown/pluginutils@1.0.0-rc.12':
+ resolution: {integrity: sha512-HHMwmarRKvoFsJorqYlFeFRzXZqCt2ETQlEDOb9aqssrnVBB1/+xgTGtuTrIk5vzLNX1MjMtTf7W9z3tsSbrxw==}
'@rollup/plugin-babel@5.3.1':
resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==}
@@ -3212,111 +3365,236 @@ packages:
cpu: [arm]
os: [android]
+ '@rollup/rollup-android-arm-eabi@4.60.1':
+ resolution: {integrity: sha512-d6FinEBLdIiK+1uACUttJKfgZREXrF0Qc2SmLII7W2AD8FfiZ9Wjd+rD/iRuf5s5dWrr1GgwXCvPqOuDquOowA==}
+ cpu: [arm]
+ os: [android]
+
'@rollup/rollup-android-arm64@4.52.5':
resolution: {integrity: sha512-mQGfsIEFcu21mvqkEKKu2dYmtuSZOBMmAl5CFlPGLY94Vlcm+zWApK7F/eocsNzp8tKmbeBP8yXyAbx0XHsFNA==}
cpu: [arm64]
os: [android]
+ '@rollup/rollup-android-arm64@4.60.1':
+ resolution: {integrity: sha512-YjG/EwIDvvYI1YvYbHvDz/BYHtkY4ygUIXHnTdLhG+hKIQFBiosfWiACWortsKPKU/+dUwQQCKQM3qrDe8c9BA==}
+ cpu: [arm64]
+ os: [android]
+
'@rollup/rollup-darwin-arm64@4.52.5':
resolution: {integrity: sha512-takF3CR71mCAGA+v794QUZ0b6ZSrgJkArC+gUiG6LB6TQty9T0Mqh3m2ImRBOxS2IeYBo4lKWIieSvnEk2OQWA==}
cpu: [arm64]
os: [darwin]
+ '@rollup/rollup-darwin-arm64@4.60.1':
+ resolution: {integrity: sha512-mjCpF7GmkRtSJwon+Rq1N8+pI+8l7w5g9Z3vWj4T7abguC4Czwi3Yu/pFaLvA3TTeMVjnu3ctigusqWUfjZzvw==}
+ cpu: [arm64]
+ os: [darwin]
+
'@rollup/rollup-darwin-x64@4.52.5':
resolution: {integrity: sha512-W901Pla8Ya95WpxDn//VF9K9u2JbocwV/v75TE0YIHNTbhqUTv9w4VuQ9MaWlNOkkEfFwkdNhXgcLqPSmHy0fA==}
cpu: [x64]
os: [darwin]
+ '@rollup/rollup-darwin-x64@4.60.1':
+ resolution: {integrity: sha512-haZ7hJ1JT4e9hqkoT9R/19XW2QKqjfJVv+i5AGg57S+nLk9lQnJ1F/eZloRO3o9Scy9CM3wQ9l+dkXtcBgN5Ew==}
+ cpu: [x64]
+ os: [darwin]
+
'@rollup/rollup-freebsd-arm64@4.52.5':
resolution: {integrity: sha512-QofO7i7JycsYOWxe0GFqhLmF6l1TqBswJMvICnRUjqCx8b47MTo46W8AoeQwiokAx3zVryVnxtBMcGcnX12LvA==}
cpu: [arm64]
os: [freebsd]
+ '@rollup/rollup-freebsd-arm64@4.60.1':
+ resolution: {integrity: sha512-czw90wpQq3ZsAVBlinZjAYTKduOjTywlG7fEeWKUA7oCmpA8xdTkxZZlwNJKWqILlq0wehoZcJYfBvOyhPTQ6w==}
+ cpu: [arm64]
+ os: [freebsd]
+
'@rollup/rollup-freebsd-x64@4.52.5':
resolution: {integrity: sha512-jr21b/99ew8ujZubPo9skbrItHEIE50WdV86cdSoRkKtmWa+DDr6fu2c/xyRT0F/WazZpam6kk7IHBerSL7LDQ==}
cpu: [x64]
os: [freebsd]
+ '@rollup/rollup-freebsd-x64@4.60.1':
+ resolution: {integrity: sha512-KVB2rqsxTHuBtfOeySEyzEOB7ltlB/ux38iu2rBQzkjbwRVlkhAGIEDiiYnO2kFOkJp+Z7pUXKyrRRFuFUKt+g==}
+ cpu: [x64]
+ os: [freebsd]
+
'@rollup/rollup-linux-arm-gnueabihf@4.52.5':
resolution: {integrity: sha512-PsNAbcyv9CcecAUagQefwX8fQn9LQ4nZkpDboBOttmyffnInRy8R8dSg6hxxl2Re5QhHBf6FYIDhIj5v982ATQ==}
cpu: [arm]
os: [linux]
+ '@rollup/rollup-linux-arm-gnueabihf@4.60.1':
+ resolution: {integrity: sha512-L+34Qqil+v5uC0zEubW7uByo78WOCIrBvci69E7sFASRl0X7b/MB6Cqd1lky/CtcSVTydWa2WZwFuWexjS5o6g==}
+ cpu: [arm]
+ os: [linux]
+
'@rollup/rollup-linux-arm-musleabihf@4.52.5':
resolution: {integrity: sha512-Fw4tysRutyQc/wwkmcyoqFtJhh0u31K+Q6jYjeicsGJJ7bbEq8LwPWV/w0cnzOqR2m694/Af6hpFayLJZkG2VQ==}
cpu: [arm]
os: [linux]
+ '@rollup/rollup-linux-arm-musleabihf@4.60.1':
+ resolution: {integrity: sha512-n83O8rt4v34hgFzlkb1ycniJh7IR5RCIqt6mz1VRJD6pmhRi0CXdmfnLu9dIUS6buzh60IvACM842Ffb3xd6Gg==}
+ cpu: [arm]
+ os: [linux]
+
'@rollup/rollup-linux-arm64-gnu@4.52.5':
resolution: {integrity: sha512-a+3wVnAYdQClOTlyapKmyI6BLPAFYs0JM8HRpgYZQO02rMR09ZcV9LbQB+NL6sljzG38869YqThrRnfPMCDtZg==}
cpu: [arm64]
os: [linux]
+ '@rollup/rollup-linux-arm64-gnu@4.60.1':
+ resolution: {integrity: sha512-Nql7sTeAzhTAja3QXeAI48+/+GjBJ+QmAH13snn0AJSNL50JsDqotyudHyMbO2RbJkskbMbFJfIJKWA6R1LCJQ==}
+ cpu: [arm64]
+ os: [linux]
+
'@rollup/rollup-linux-arm64-musl@4.52.5':
resolution: {integrity: sha512-AvttBOMwO9Pcuuf7m9PkC1PUIKsfaAJ4AYhy944qeTJgQOqJYJ9oVl2nYgY7Rk0mkbsuOpCAYSs6wLYB2Xiw0Q==}
cpu: [arm64]
os: [linux]
+ '@rollup/rollup-linux-arm64-musl@4.60.1':
+ resolution: {integrity: sha512-+pUymDhd0ys9GcKZPPWlFiZ67sTWV5UU6zOJat02M1+PiuSGDziyRuI/pPue3hoUwm2uGfxdL+trT6Z9rxnlMA==}
+ cpu: [arm64]
+ os: [linux]
+
'@rollup/rollup-linux-loong64-gnu@4.52.5':
resolution: {integrity: sha512-DkDk8pmXQV2wVrF6oq5tONK6UHLz/XcEVow4JTTerdeV1uqPeHxwcg7aFsfnSm9L+OO8WJsWotKM2JJPMWrQtA==}
cpu: [loong64]
os: [linux]
+ '@rollup/rollup-linux-loong64-gnu@4.60.1':
+ resolution: {integrity: sha512-VSvgvQeIcsEvY4bKDHEDWcpW4Yw7BtlKG1GUT4FzBUlEKQK0rWHYBqQt6Fm2taXS+1bXvJT6kICu5ZwqKCnvlQ==}
+ cpu: [loong64]
+ os: [linux]
+
+ '@rollup/rollup-linux-loong64-musl@4.60.1':
+ resolution: {integrity: sha512-4LqhUomJqwe641gsPp6xLfhqWMbQV04KtPp7/dIp0nzPxAkNY1AbwL5W0MQpcalLYk07vaW9Kp1PBhdpZYYcEw==}
+ cpu: [loong64]
+ os: [linux]
+
'@rollup/rollup-linux-ppc64-gnu@4.52.5':
resolution: {integrity: sha512-W/b9ZN/U9+hPQVvlGwjzi+Wy4xdoH2I8EjaCkMvzpI7wJUs8sWJ03Rq96jRnHkSrcHTpQe8h5Tg3ZzUPGauvAw==}
cpu: [ppc64]
os: [linux]
+ '@rollup/rollup-linux-ppc64-gnu@4.60.1':
+ resolution: {integrity: sha512-tLQQ9aPvkBxOc/EUT6j3pyeMD6Hb8QF2BTBnCQWP/uu1lhc9AIrIjKnLYMEroIz/JvtGYgI9dF3AxHZNaEH0rw==}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@rollup/rollup-linux-ppc64-musl@4.60.1':
+ resolution: {integrity: sha512-RMxFhJwc9fSXP6PqmAz4cbv3kAyvD1etJFjTx4ONqFP9DkTkXsAMU4v3Vyc5BgzC+anz7nS/9tp4obsKfqkDHg==}
+ cpu: [ppc64]
+ os: [linux]
+
'@rollup/rollup-linux-riscv64-gnu@4.52.5':
resolution: {integrity: sha512-sjQLr9BW7R/ZiXnQiWPkErNfLMkkWIoCz7YMn27HldKsADEKa5WYdobaa1hmN6slu9oWQbB6/jFpJ+P2IkVrmw==}
cpu: [riscv64]
os: [linux]
+ '@rollup/rollup-linux-riscv64-gnu@4.60.1':
+ resolution: {integrity: sha512-QKgFl+Yc1eEk6MmOBfRHYF6lTxiiiV3/z/BRrbSiW2I7AFTXoBFvdMEyglohPj//2mZS4hDOqeB0H1ACh3sBbg==}
+ cpu: [riscv64]
+ os: [linux]
+
'@rollup/rollup-linux-riscv64-musl@4.52.5':
resolution: {integrity: sha512-hq3jU/kGyjXWTvAh2awn8oHroCbrPm8JqM7RUpKjalIRWWXE01CQOf/tUNWNHjmbMHg/hmNCwc/Pz3k1T/j/Lg==}
cpu: [riscv64]
os: [linux]
+ '@rollup/rollup-linux-riscv64-musl@4.60.1':
+ resolution: {integrity: sha512-RAjXjP/8c6ZtzatZcA1RaQr6O1TRhzC+adn8YZDnChliZHviqIjmvFwHcxi4JKPSDAt6Uhf/7vqcBzQJy0PDJg==}
+ cpu: [riscv64]
+ os: [linux]
+
'@rollup/rollup-linux-s390x-gnu@4.52.5':
resolution: {integrity: sha512-gn8kHOrku8D4NGHMK1Y7NA7INQTRdVOntt1OCYypZPRt6skGbddska44K8iocdpxHTMMNui5oH4elPH4QOLrFQ==}
cpu: [s390x]
os: [linux]
+ '@rollup/rollup-linux-s390x-gnu@4.60.1':
+ resolution: {integrity: sha512-wcuocpaOlaL1COBYiA89O6yfjlp3RwKDeTIA0hM7OpmhR1Bjo9j31G1uQVpDlTvwxGn2nQs65fBFL5UFd76FcQ==}
+ cpu: [s390x]
+ os: [linux]
+
'@rollup/rollup-linux-x64-gnu@4.52.5':
resolution: {integrity: sha512-hXGLYpdhiNElzN770+H2nlx+jRog8TyynpTVzdlc6bndktjKWyZyiCsuDAlpd+j+W+WNqfcyAWz9HxxIGfZm1Q==}
cpu: [x64]
os: [linux]
+ '@rollup/rollup-linux-x64-gnu@4.60.1':
+ resolution: {integrity: sha512-77PpsFQUCOiZR9+LQEFg9GClyfkNXj1MP6wRnzYs0EeWbPcHs02AXu4xuUbM1zhwn3wqaizle3AEYg5aeoohhg==}
+ cpu: [x64]
+ os: [linux]
+
'@rollup/rollup-linux-x64-musl@4.52.5':
resolution: {integrity: sha512-arCGIcuNKjBoKAXD+y7XomR9gY6Mw7HnFBv5Rw7wQRvwYLR7gBAgV7Mb2QTyjXfTveBNFAtPt46/36vV9STLNg==}
cpu: [x64]
os: [linux]
+ '@rollup/rollup-linux-x64-musl@4.60.1':
+ resolution: {integrity: sha512-5cIATbk5vynAjqqmyBjlciMJl1+R/CwX9oLk/EyiFXDWd95KpHdrOJT//rnUl4cUcskrd0jCCw3wpZnhIHdD9w==}
+ cpu: [x64]
+ os: [linux]
+
+ '@rollup/rollup-openbsd-x64@4.60.1':
+ resolution: {integrity: sha512-cl0w09WsCi17mcmWqqglez9Gk8isgeWvoUZ3WiJFYSR3zjBQc2J5/ihSjpl+VLjPqjQ/1hJRcqBfLjssREQILw==}
+ cpu: [x64]
+ os: [openbsd]
+
'@rollup/rollup-openharmony-arm64@4.52.5':
resolution: {integrity: sha512-QoFqB6+/9Rly/RiPjaomPLmR/13cgkIGfA40LHly9zcH1S0bN2HVFYk3a1eAyHQyjs3ZJYlXvIGtcCs5tko9Cw==}
cpu: [arm64]
os: [openharmony]
+ '@rollup/rollup-openharmony-arm64@4.60.1':
+ resolution: {integrity: sha512-4Cv23ZrONRbNtbZa37mLSueXUCtN7MXccChtKpUnQNgF010rjrjfHx3QxkS2PI7LqGT5xXyYs1a7LbzAwT0iCA==}
+ cpu: [arm64]
+ os: [openharmony]
+
'@rollup/rollup-win32-arm64-msvc@4.52.5':
resolution: {integrity: sha512-w0cDWVR6MlTstla1cIfOGyl8+qb93FlAVutcor14Gf5Md5ap5ySfQ7R9S/NjNaMLSFdUnKGEasmVnu3lCMqB7w==}
cpu: [arm64]
os: [win32]
+ '@rollup/rollup-win32-arm64-msvc@4.60.1':
+ resolution: {integrity: sha512-i1okWYkA4FJICtr7KpYzFpRTHgy5jdDbZiWfvny21iIKky5YExiDXP+zbXzm3dUcFpkEeYNHgQ5fuG236JPq0g==}
+ cpu: [arm64]
+ os: [win32]
+
'@rollup/rollup-win32-ia32-msvc@4.52.5':
resolution: {integrity: sha512-Aufdpzp7DpOTULJCuvzqcItSGDH73pF3ko/f+ckJhxQyHtp67rHw3HMNxoIdDMUITJESNE6a8uh4Lo4SLouOUg==}
cpu: [ia32]
os: [win32]
+ '@rollup/rollup-win32-ia32-msvc@4.60.1':
+ resolution: {integrity: sha512-u09m3CuwLzShA0EYKMNiFgcjjzwqtUMLmuCJLeZWjjOYA3IT2Di09KaxGBTP9xVztWyIWjVdsB2E9goMjZvTQg==}
+ cpu: [ia32]
+ os: [win32]
+
'@rollup/rollup-win32-x64-gnu@4.52.5':
resolution: {integrity: sha512-UGBUGPFp1vkj6p8wCRraqNhqwX/4kNQPS57BCFc8wYh0g94iVIW33wJtQAx3G7vrjjNtRaxiMUylM0ktp/TRSQ==}
cpu: [x64]
os: [win32]
+ '@rollup/rollup-win32-x64-gnu@4.60.1':
+ resolution: {integrity: sha512-k+600V9Zl1CM7eZxJgMyTUzmrmhB/0XZnF4pRypKAlAgxmedUA+1v9R+XOFv56W4SlHEzfeMtzujLJD22Uz5zg==}
+ cpu: [x64]
+ os: [win32]
+
'@rollup/rollup-win32-x64-msvc@4.52.5':
resolution: {integrity: sha512-TAcgQh2sSkykPRWLrdyy2AiceMckNf5loITqXxFI5VuQjS5tSuw3WlwdN8qv8vzjLAUTvYaH/mVjSFpbkFbpTg==}
cpu: [x64]
os: [win32]
+ '@rollup/rollup-win32-x64-msvc@4.60.1':
+ resolution: {integrity: sha512-lWMnixq/QzxyhTV6NjQJ4SFo1J6PvOX8vUx5Wb4bBPsEb+8xZ89Bz6kOXpfXj9ak9AHTQVQzlgzBEc1SyM27xQ==}
+ cpu: [x64]
+ os: [win32]
+
'@sentry-internal/browser-utils@10.44.0':
resolution: {integrity: sha512-z9xz3T/v+MnfHY6kdUCmOZI8CiAl3LlKYtGH2p3rAsrxhwX+BTnUp01VhMVnEZIDgUXNt3AhJac+4kcDIPu1Hg==}
engines: {node: '>=18'}
@@ -4212,6 +4490,9 @@ packages:
'@types/whatwg-url@11.0.5':
resolution: {integrity: sha512-coYR071JRaHa+xoEvvYqvnIHaVqaYrLPbsufM9BF63HkwI5Lgmy2QR8Q5K/lYDYo5AK82wOvSOS0UsLTpTG7uQ==}
+ '@types/ws@8.18.1':
+ resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
+
'@typescript-eslint/project-service@8.52.0':
resolution: {integrity: sha512-xD0MfdSdEmeFa3OmVqonHi+Cciab96ls1UhIF/qX/O/gPu5KXD0bY9lu33jj04fjzrXHcuvjBcBC+D3SNSadaw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -4763,8 +5044,8 @@ packages:
resolution: {integrity: sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==}
engines: {node: '>= 10.0.0'}
- before-after-hook@3.0.2:
- resolution: {integrity: sha512-Nik3Sc0ncrMK4UUdXQmAnRtzmNQTAAXmXIopizwZ1W1t8QmfJj+zL4OA2I7XPTPW5z5TDqv4hRo/JzouDJnX3A==}
+ before-after-hook@4.0.0:
+ resolution: {integrity: sha512-q6tR3RPqIB1pMiTRMFcZwuG5T8vwp+vUvEG0vuI6B+Rikh5BfPp2fQ82c925FOs+b0lcFQ8CFrL+KbilfZFhOQ==}
better-ajv-errors@1.2.0:
resolution: {integrity: sha512-UW+IsFycygIo7bclP9h5ugkNH8EjCSgqyFB/yQ4Hqqa1OEYDtb0uFIkYE0b6+CjkgJYVM5UKI/pJPxjYe9EZlA==}
@@ -5808,6 +6089,10 @@ packages:
resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==}
engines: {node: '>=0.12'}
+ entities@7.0.1:
+ resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==}
+ engines: {node: '>=0.12'}
+
env-paths@2.2.1:
resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
engines: {node: '>=6'}
@@ -5865,6 +6150,11 @@ packages:
engines: {node: '>=18'}
hasBin: true
+ esbuild@0.27.7:
+ resolution: {integrity: sha512-IxpibTjyVnmrIQo5aqNpCgoACA/dTKLTlhMHihVHhdkxKyPO1uBBthumT0rdHmcsk9uMonIWS0m4FljWzILh3w==}
+ engines: {node: '>=18'}
+ hasBin: true
+
escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
@@ -6027,8 +6317,8 @@ packages:
fast-content-type-parse@1.1.0:
resolution: {integrity: sha512-fBHHqSTFLVnR61C+gltJuE5GkVQMV0S2nqUO8TJ+5Z3qAKG8vAx4FKai1s5jq/inV1+sREynIWSuQ6HgoSXpDQ==}
- fast-content-type-parse@2.0.1:
- resolution: {integrity: sha512-nGqtvLrj5w0naR6tDPfB4cUmYCqouzyQiz6C5y/LtcDllJdrcc6WaWW6iXyIIOErTa/XRybj28aasdn4LkVk6Q==}
+ fast-content-type-parse@3.0.0:
+ resolution: {integrity: sha512-ZvLdcY8P+N8mGQJahJV5G4U88CSvT1rP8ApL6uETe88MBXrBHAkZlSEySdUlyztF7ccb+Znos3TFqaepHxdhBg==}
fast-decode-uri-component@1.0.1:
resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==}
@@ -6496,8 +6786,8 @@ packages:
hangul-js@0.2.6:
resolution: {integrity: sha512-48axU8LgjCD30FEs66Xc04/8knxMwCMQw0f67l67rlttW7VXT3qRJgQeHmhiuGwWXGvSbk6YM0fhQlcjE1JFQA==}
- happy-dom@20.0.10:
- resolution: {integrity: sha512-6umCCHcjQrhP5oXhrHQQvLB0bwb1UzHAHdsXy+FjtKoYjUhmNZsQL8NivwM1vDvNEChJabVrUYxUnp/ZdYmy2g==}
+ happy-dom@20.8.9:
+ resolution: {integrity: sha512-Tz23LR9T9jOGVZm2x1EPdXqwA37G/owYMxRwU0E4miurAtFsPMQ1d2Jc2okUaSjZqAFz2oEn3FLXC5a0a+siyA==}
engines: {node: '>=20.0.0'}
hard-rejection@2.1.0:
@@ -7166,6 +7456,9 @@ packages:
json-stable-stringify-without-jsonify@1.0.1:
resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+ json-with-bigint@3.5.8:
+ resolution: {integrity: sha512-eq/4KP6K34kwa7TcFdtvnftvHCD9KvHOGGICWwMFc4dOOKF5t4iYqnfLK8otCRCRv06FXOzGGyqE8h8ElMvvdw==}
+
json5@2.2.3:
resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
engines: {node: '>=6'}
@@ -8158,8 +8451,8 @@ packages:
resolution: {integrity: sha512-1uiY543L+N7Og4yswvlm5NCKgPKDEXd9AUR9Jh3gen6oOeBsesr6LqhXom1er3eRzSUcVRWXzhv8tSNrIfGHKw==}
engines: {node: '>=18'}
- nodemailer@7.0.11:
- resolution: {integrity: sha512-gnXhNRE0FNhD7wPSCGhdNh46Hs6nm+uTyg+Kq0cZukNQiYdnCsoQjodNP9BQVG9XrcK/v6/MgpAPBUFyzh9pvw==}
+ nodemailer@8.0.4:
+ resolution: {integrity: sha512-k+jf6N8PfQJ0Fe8ZhJlgqU5qJU44Lpvp2yvidH3vp1lPnVQMgi4yEEMPXg5eJS1gFIJTVq1NHBk7Ia9ARdSBdQ==}
engines: {node: '>=6.0.0'}
nodemon@3.1.14:
@@ -8563,10 +8856,6 @@ packages:
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
- picomatch@2.3.1:
- resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
- engines: {node: '>=8.6'}
-
picomatch@2.3.2:
resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==}
engines: {node: '>=8.6'}
@@ -9071,8 +9360,8 @@ packages:
engines: {node: 14 >=14.20 || 16 >=16.20 || >=18}
hasBin: true
- rolldown@1.0.0-rc.10:
- resolution: {integrity: sha512-q7j6vvarRFmKpgJUT8HCAUljkgzEp4LAhPlJUvQhA5LA1SUL36s5QCysMutErzL3EbNOZOkoziSx9iZC4FddKA==}
+ rolldown@1.0.0-rc.12:
+ resolution: {integrity: sha512-yP4USLIMYrwpPHEFB5JGH1uxhcslv6/hL0OyvTuY+3qlOSJvZ7ntYnoWpehBxufkgN0cvXxppuTu5hHa/zPh+A==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
@@ -9099,6 +9388,11 @@ packages:
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true
+ rollup@4.60.1:
+ resolution: {integrity: sha512-VmtB2rFU/GroZ4oL8+ZqXgSA38O6GR8KSIvWmEFv63pQ0G6KaBH9s07PO8XTXP4vI+3UJUEypOfjkGfmSBBR0w==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ hasBin: true
+
router@1.3.8:
resolution: {integrity: sha512-461UFH44NtSfIlS83PUg2N7OZo86BC/kB3dY77gJdsODsBhhw7+2uE0tzTINxrY9CahCUVk1VhpWCA5i1yoIEg==}
engines: {node: '>= 0.8'}
@@ -10213,8 +10507,8 @@ packages:
resolution: {integrity: sha512-HXSMyIcf2XTvwZ6ZZQLfxfViRm/yTGoRgDeTbojtq6rezeyKB0sTBcKH2fhddnteAHRcHiKgr/ACpbgjGOC6RQ==}
engines: {node: '>=12.18.2'}
- universal-user-agent@7.0.2:
- resolution: {integrity: sha512-0JCqzSKnStlRRQfCdowvqy3cy0Dvtlb8xecj/H8JFZuCze4rwjPZQOgvFvn0Ws/usCHQFGpyr+pB9adaGwXn4Q==}
+ universal-user-agent@7.0.3:
+ resolution: {integrity: sha512-TmnEAEAsBJVZM/AADELsK76llnwcf9vMKuPz8JflO1frO8Lchitr0fNaN9d+Ap0BjKtqWqd/J17qeDnXh8CL2A==}
universalify@2.0.1:
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
@@ -10380,8 +10674,8 @@ packages:
'@testing-library/jest-dom':
optional: true
- vite@7.3.1:
- resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==}
+ vite@7.3.2:
+ resolution: {integrity: sha512-Bby3NOsna2jsjfLVOHKes8sGwgl4TT0E6vvpYgnAYDIF/tie7MRaFthmKuHx1NSXjiTueXH3do80FMQgvEktRg==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
@@ -10420,14 +10714,14 @@ packages:
yaml:
optional: true
- vite@8.0.1:
- resolution: {integrity: sha512-wt+Z2qIhfFt85uiyRt5LPU4oVEJBXj8hZNWKeqFG4gRG/0RaRGJ7njQCwzFVjO+v4+Ipmf5CY7VdmZRAYYBPHw==}
+ vite@8.0.5:
+ resolution: {integrity: sha512-nmu43Qvq9UopTRfMx2jOYW5l16pb3iDC1JH6yMuPkpVbzK0k+L7dfsEDH4jRgYFmsg0sTAqkojoZgzLMlwHsCQ==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
'@types/node': ^20.19.0 || >=22.12.0
'@vitejs/devtools': ^0.1.0
- esbuild: ^0.27.0
+ esbuild: ^0.27.0 || ^0.28.0
jiti: '>=1.21.0'
less: ^4.0.0
sass: ^1.70.0
@@ -10784,6 +11078,11 @@ packages:
engines: {node: '>= 14.6'}
hasBin: true
+ yaml@2.8.3:
+ resolution: {integrity: sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==}
+ engines: {node: '>= 14.6'}
+ hasBin: true
+
yargs-parser@20.2.9:
resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
engines: {node: '>=10'}
@@ -11820,156 +12119,234 @@ snapshots:
'@esbuild/aix-ppc64@0.27.3':
optional: true
+ '@esbuild/aix-ppc64@0.27.7':
+ optional: true
+
'@esbuild/android-arm64@0.25.11':
optional: true
'@esbuild/android-arm64@0.27.3':
optional: true
+ '@esbuild/android-arm64@0.27.7':
+ optional: true
+
'@esbuild/android-arm@0.25.11':
optional: true
'@esbuild/android-arm@0.27.3':
optional: true
+ '@esbuild/android-arm@0.27.7':
+ optional: true
+
'@esbuild/android-x64@0.25.11':
optional: true
'@esbuild/android-x64@0.27.3':
optional: true
+ '@esbuild/android-x64@0.27.7':
+ optional: true
+
'@esbuild/darwin-arm64@0.25.11':
optional: true
'@esbuild/darwin-arm64@0.27.3':
optional: true
+ '@esbuild/darwin-arm64@0.27.7':
+ optional: true
+
'@esbuild/darwin-x64@0.25.11':
optional: true
'@esbuild/darwin-x64@0.27.3':
optional: true
+ '@esbuild/darwin-x64@0.27.7':
+ optional: true
+
'@esbuild/freebsd-arm64@0.25.11':
optional: true
'@esbuild/freebsd-arm64@0.27.3':
optional: true
+ '@esbuild/freebsd-arm64@0.27.7':
+ optional: true
+
'@esbuild/freebsd-x64@0.25.11':
optional: true
'@esbuild/freebsd-x64@0.27.3':
optional: true
+ '@esbuild/freebsd-x64@0.27.7':
+ optional: true
+
'@esbuild/linux-arm64@0.25.11':
optional: true
'@esbuild/linux-arm64@0.27.3':
optional: true
+ '@esbuild/linux-arm64@0.27.7':
+ optional: true
+
'@esbuild/linux-arm@0.25.11':
optional: true
'@esbuild/linux-arm@0.27.3':
optional: true
+ '@esbuild/linux-arm@0.27.7':
+ optional: true
+
'@esbuild/linux-ia32@0.25.11':
optional: true
'@esbuild/linux-ia32@0.27.3':
optional: true
+ '@esbuild/linux-ia32@0.27.7':
+ optional: true
+
'@esbuild/linux-loong64@0.25.11':
optional: true
'@esbuild/linux-loong64@0.27.3':
optional: true
+ '@esbuild/linux-loong64@0.27.7':
+ optional: true
+
'@esbuild/linux-mips64el@0.25.11':
optional: true
'@esbuild/linux-mips64el@0.27.3':
optional: true
+ '@esbuild/linux-mips64el@0.27.7':
+ optional: true
+
'@esbuild/linux-ppc64@0.25.11':
optional: true
'@esbuild/linux-ppc64@0.27.3':
optional: true
+ '@esbuild/linux-ppc64@0.27.7':
+ optional: true
+
'@esbuild/linux-riscv64@0.25.11':
optional: true
'@esbuild/linux-riscv64@0.27.3':
optional: true
+ '@esbuild/linux-riscv64@0.27.7':
+ optional: true
+
'@esbuild/linux-s390x@0.25.11':
optional: true
'@esbuild/linux-s390x@0.27.3':
optional: true
+ '@esbuild/linux-s390x@0.27.7':
+ optional: true
+
'@esbuild/linux-x64@0.25.11':
optional: true
'@esbuild/linux-x64@0.27.3':
optional: true
+ '@esbuild/linux-x64@0.27.7':
+ optional: true
+
'@esbuild/netbsd-arm64@0.25.11':
optional: true
'@esbuild/netbsd-arm64@0.27.3':
optional: true
+ '@esbuild/netbsd-arm64@0.27.7':
+ optional: true
+
'@esbuild/netbsd-x64@0.25.11':
optional: true
'@esbuild/netbsd-x64@0.27.3':
optional: true
+ '@esbuild/netbsd-x64@0.27.7':
+ optional: true
+
'@esbuild/openbsd-arm64@0.25.11':
optional: true
'@esbuild/openbsd-arm64@0.27.3':
optional: true
+ '@esbuild/openbsd-arm64@0.27.7':
+ optional: true
+
'@esbuild/openbsd-x64@0.25.11':
optional: true
'@esbuild/openbsd-x64@0.27.3':
optional: true
+ '@esbuild/openbsd-x64@0.27.7':
+ optional: true
+
'@esbuild/openharmony-arm64@0.25.11':
optional: true
'@esbuild/openharmony-arm64@0.27.3':
optional: true
+ '@esbuild/openharmony-arm64@0.27.7':
+ optional: true
+
'@esbuild/sunos-x64@0.25.11':
optional: true
'@esbuild/sunos-x64@0.27.3':
optional: true
+ '@esbuild/sunos-x64@0.27.7':
+ optional: true
+
'@esbuild/win32-arm64@0.25.11':
optional: true
'@esbuild/win32-arm64@0.27.3':
optional: true
+ '@esbuild/win32-arm64@0.27.7':
+ optional: true
+
'@esbuild/win32-ia32@0.25.11':
optional: true
'@esbuild/win32-ia32@0.27.3':
optional: true
+ '@esbuild/win32-ia32@0.27.7':
+ optional: true
+
'@esbuild/win32-x64@0.25.11':
optional: true
'@esbuild/win32-x64@0.27.3':
optional: true
+ '@esbuild/win32-x64@0.27.7':
+ optional: true
+
'@eslint-community/eslint-utils@4.9.1(eslint@9.39.1(jiti@2.6.1))':
dependencies:
eslint: 9.39.1(jiti@2.6.1)
@@ -11999,7 +12376,7 @@ snapshots:
'@eslint/eslintrc@3.3.3':
dependencies:
- ajv: 6.12.6
+ ajv: 6.14.0
debug: 4.4.3(supports-color@5.5.0)
espree: 10.4.0
globals: 14.0.0
@@ -12708,11 +13085,11 @@ snapshots:
wrap-ansi: 8.1.0
wrap-ansi-cjs: wrap-ansi@7.0.0
- '@joshwooding/vite-plugin-react-docgen-typescript@0.6.4(typescript@6.0.2)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@joshwooding/vite-plugin-react-docgen-typescript@0.6.4(typescript@6.0.2)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
glob: 13.0.6
react-docgen-typescript: 2.4.0(typescript@6.0.2)
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
optionalDependencies:
typescript: 6.0.2
@@ -12806,7 +13183,7 @@ snapshots:
'@msgpackr-extract/msgpackr-extract-win32-x64@3.0.3':
optional: true
- '@napi-rs/wasm-runtime@1.1.1':
+ '@napi-rs/wasm-runtime@1.1.2(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)':
dependencies:
'@emnapi/core': 1.9.0
'@emnapi/runtime': 1.9.0
@@ -12856,73 +13233,68 @@ snapshots:
'@npmcli/name-from-folder@2.0.0': {}
- '@octokit/auth-token@5.1.2': {}
+ '@octokit/auth-token@6.0.0': {}
- '@octokit/core@6.1.5':
+ '@octokit/core@7.0.6':
dependencies:
- '@octokit/auth-token': 5.1.2
- '@octokit/graphql': 8.2.2
- '@octokit/request': 9.2.3
- '@octokit/request-error': 6.1.8
- '@octokit/types': 14.0.0
- before-after-hook: 3.0.2
- universal-user-agent: 7.0.2
+ '@octokit/auth-token': 6.0.0
+ '@octokit/graphql': 9.0.3
+ '@octokit/request': 10.0.8
+ '@octokit/request-error': 7.1.0
+ '@octokit/types': 16.0.0
+ before-after-hook: 4.0.0
+ universal-user-agent: 7.0.3
- '@octokit/endpoint@10.1.4':
+ '@octokit/endpoint@11.0.3':
dependencies:
- '@octokit/types': 14.0.0
- universal-user-agent: 7.0.2
+ '@octokit/types': 16.0.0
+ universal-user-agent: 7.0.3
- '@octokit/graphql@8.2.2':
+ '@octokit/graphql@9.0.3':
dependencies:
- '@octokit/request': 9.2.3
- '@octokit/types': 14.0.0
- universal-user-agent: 7.0.2
+ '@octokit/request': 10.0.8
+ '@octokit/types': 16.0.0
+ universal-user-agent: 7.0.3
- '@octokit/openapi-types@24.2.0': {}
-
- '@octokit/openapi-types@25.0.0': {}
-
- '@octokit/plugin-paginate-rest@11.6.0(@octokit/core@6.1.5)':
- dependencies:
- '@octokit/core': 6.1.5
- '@octokit/types': 13.10.0
+ '@octokit/openapi-types@27.0.0': {}
- '@octokit/plugin-request-log@5.3.1(@octokit/core@6.1.5)':
+ '@octokit/plugin-paginate-rest@14.0.0(@octokit/core@7.0.6)':
dependencies:
- '@octokit/core': 6.1.5
+ '@octokit/core': 7.0.6
+ '@octokit/types': 16.0.0
- '@octokit/plugin-rest-endpoint-methods@13.5.0(@octokit/core@6.1.5)':
+ '@octokit/plugin-request-log@6.0.0(@octokit/core@7.0.6)':
dependencies:
- '@octokit/core': 6.1.5
- '@octokit/types': 13.10.0
+ '@octokit/core': 7.0.6
- '@octokit/request-error@6.1.8':
+ '@octokit/plugin-rest-endpoint-methods@17.0.0(@octokit/core@7.0.6)':
dependencies:
- '@octokit/types': 14.0.0
+ '@octokit/core': 7.0.6
+ '@octokit/types': 16.0.0
- '@octokit/request@9.2.3':
+ '@octokit/request-error@7.1.0':
dependencies:
- '@octokit/endpoint': 10.1.4
- '@octokit/request-error': 6.1.8
- '@octokit/types': 14.0.0
- fast-content-type-parse: 2.0.1
- universal-user-agent: 7.0.2
+ '@octokit/types': 16.0.0
- '@octokit/rest@21.1.1':
+ '@octokit/request@10.0.8':
dependencies:
- '@octokit/core': 6.1.5
- '@octokit/plugin-paginate-rest': 11.6.0(@octokit/core@6.1.5)
- '@octokit/plugin-request-log': 5.3.1(@octokit/core@6.1.5)
- '@octokit/plugin-rest-endpoint-methods': 13.5.0(@octokit/core@6.1.5)
+ '@octokit/endpoint': 11.0.3
+ '@octokit/request-error': 7.1.0
+ '@octokit/types': 16.0.0
+ fast-content-type-parse: 3.0.0
+ json-with-bigint: 3.5.8
+ universal-user-agent: 7.0.3
- '@octokit/types@13.10.0':
+ '@octokit/rest@22.0.1':
dependencies:
- '@octokit/openapi-types': 24.2.0
+ '@octokit/core': 7.0.6
+ '@octokit/plugin-paginate-rest': 14.0.0(@octokit/core@7.0.6)
+ '@octokit/plugin-request-log': 6.0.0(@octokit/core@7.0.6)
+ '@octokit/plugin-rest-endpoint-methods': 17.0.0(@octokit/core@7.0.6)
- '@octokit/types@14.0.0':
+ '@octokit/types@16.0.0':
dependencies:
- '@octokit/openapi-types': 25.0.0
+ '@octokit/openapi-types': 27.0.0
'@one-ini/wasm@0.1.1': {}
@@ -13004,7 +13376,7 @@ snapshots:
'@opentelemetry/semantic-conventions@1.34.0': {}
- '@oxc-project/types@0.120.0': {}
+ '@oxc-project/types@0.122.0': {}
'@oxfmt/binding-android-arm-eabi@0.44.0':
optional: true
@@ -13320,7 +13692,7 @@ snapshots:
colorette: 1.4.0
js-levenshtein: 1.1.6
js-yaml: 4.1.1
- picomatch: 4.0.3
+ picomatch: 4.0.4
pluralize: 8.0.0
yaml-ast-parser: 0.0.43
@@ -13337,56 +13709,59 @@ snapshots:
jsonpath-rfc9535: 1.3.0
openapi-sampler: 1.7.2
outdent: 0.8.0
- picomatch: 4.0.3
+ picomatch: 4.0.4
- '@rolldown/binding-android-arm64@1.0.0-rc.10':
+ '@rolldown/binding-android-arm64@1.0.0-rc.12':
optional: true
- '@rolldown/binding-darwin-arm64@1.0.0-rc.10':
+ '@rolldown/binding-darwin-arm64@1.0.0-rc.12':
optional: true
- '@rolldown/binding-darwin-x64@1.0.0-rc.10':
+ '@rolldown/binding-darwin-x64@1.0.0-rc.12':
optional: true
- '@rolldown/binding-freebsd-x64@1.0.0-rc.10':
+ '@rolldown/binding-freebsd-x64@1.0.0-rc.12':
optional: true
- '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.10':
+ '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.12':
optional: true
- '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.10':
+ '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.12':
optional: true
- '@rolldown/binding-linux-arm64-musl@1.0.0-rc.10':
+ '@rolldown/binding-linux-arm64-musl@1.0.0-rc.12':
optional: true
- '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.10':
+ '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.12':
optional: true
- '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.10':
+ '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.12':
optional: true
- '@rolldown/binding-linux-x64-gnu@1.0.0-rc.10':
+ '@rolldown/binding-linux-x64-gnu@1.0.0-rc.12':
optional: true
- '@rolldown/binding-linux-x64-musl@1.0.0-rc.10':
+ '@rolldown/binding-linux-x64-musl@1.0.0-rc.12':
optional: true
- '@rolldown/binding-openharmony-arm64@1.0.0-rc.10':
+ '@rolldown/binding-openharmony-arm64@1.0.0-rc.12':
optional: true
- '@rolldown/binding-wasm32-wasi@1.0.0-rc.10':
+ '@rolldown/binding-wasm32-wasi@1.0.0-rc.12(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)':
dependencies:
- '@napi-rs/wasm-runtime': 1.1.1
+ '@napi-rs/wasm-runtime': 1.1.2(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
optional: true
- '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.10':
+ '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.12':
optional: true
- '@rolldown/binding-win32-x64-msvc@1.0.0-rc.10':
+ '@rolldown/binding-win32-x64-msvc@1.0.0-rc.12':
optional: true
- '@rolldown/pluginutils@1.0.0-rc.10': {}
+ '@rolldown/pluginutils@1.0.0-rc.12': {}
'@rollup/plugin-babel@5.3.1(@babel/core@7.28.6)(@types/babel__core@7.20.5)(rollup@2.80.0)':
dependencies:
@@ -13441,69 +13816,144 @@ snapshots:
'@rollup/rollup-android-arm-eabi@4.52.5':
optional: true
+ '@rollup/rollup-android-arm-eabi@4.60.1':
+ optional: true
+
'@rollup/rollup-android-arm64@4.52.5':
optional: true
+ '@rollup/rollup-android-arm64@4.60.1':
+ optional: true
+
'@rollup/rollup-darwin-arm64@4.52.5':
optional: true
+ '@rollup/rollup-darwin-arm64@4.60.1':
+ optional: true
+
'@rollup/rollup-darwin-x64@4.52.5':
optional: true
+ '@rollup/rollup-darwin-x64@4.60.1':
+ optional: true
+
'@rollup/rollup-freebsd-arm64@4.52.5':
optional: true
+ '@rollup/rollup-freebsd-arm64@4.60.1':
+ optional: true
+
'@rollup/rollup-freebsd-x64@4.52.5':
optional: true
+ '@rollup/rollup-freebsd-x64@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-arm-gnueabihf@4.52.5':
optional: true
+ '@rollup/rollup-linux-arm-gnueabihf@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-arm-musleabihf@4.52.5':
optional: true
+ '@rollup/rollup-linux-arm-musleabihf@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-arm64-gnu@4.52.5':
optional: true
+ '@rollup/rollup-linux-arm64-gnu@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-arm64-musl@4.52.5':
optional: true
+ '@rollup/rollup-linux-arm64-musl@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-loong64-gnu@4.52.5':
optional: true
+ '@rollup/rollup-linux-loong64-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-loong64-musl@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-ppc64-gnu@4.52.5':
optional: true
+ '@rollup/rollup-linux-ppc64-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-ppc64-musl@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-riscv64-gnu@4.52.5':
optional: true
+ '@rollup/rollup-linux-riscv64-gnu@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-riscv64-musl@4.52.5':
optional: true
+ '@rollup/rollup-linux-riscv64-musl@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-s390x-gnu@4.52.5':
optional: true
+ '@rollup/rollup-linux-s390x-gnu@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-x64-gnu@4.52.5':
optional: true
+ '@rollup/rollup-linux-x64-gnu@4.60.1':
+ optional: true
+
'@rollup/rollup-linux-x64-musl@4.52.5':
optional: true
+ '@rollup/rollup-linux-x64-musl@4.60.1':
+ optional: true
+
+ '@rollup/rollup-openbsd-x64@4.60.1':
+ optional: true
+
'@rollup/rollup-openharmony-arm64@4.52.5':
optional: true
+ '@rollup/rollup-openharmony-arm64@4.60.1':
+ optional: true
+
'@rollup/rollup-win32-arm64-msvc@4.52.5':
optional: true
+ '@rollup/rollup-win32-arm64-msvc@4.60.1':
+ optional: true
+
'@rollup/rollup-win32-ia32-msvc@4.52.5':
optional: true
+ '@rollup/rollup-win32-ia32-msvc@4.60.1':
+ optional: true
+
'@rollup/rollup-win32-x64-gnu@4.52.5':
optional: true
+ '@rollup/rollup-win32-x64-gnu@4.60.1':
+ optional: true
+
'@rollup/rollup-win32-x64-msvc@4.52.5':
optional: true
+ '@rollup/rollup-win32-x64-msvc@4.60.1':
+ optional: true
+
'@sentry-internal/browser-utils@10.44.0':
dependencies:
'@sentry/core': 10.44.0
@@ -13830,10 +14280,10 @@ snapshots:
axe-core: 4.11.1
storybook: 10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@storybook/addon-docs@10.2.16(@types/react@19.2.14)(esbuild@0.27.3)(rollup@4.52.5)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@storybook/addon-docs@10.2.16(@types/react@19.2.14)(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@mdx-js/react': 3.1.1(@types/react@19.2.14)(react@18.3.1)
- '@storybook/csf-plugin': 10.2.16(esbuild@0.27.3)(rollup@4.52.5)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@storybook/csf-plugin': 10.2.16(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@storybook/icons': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@storybook/react-dom-shim': 10.2.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))
react: 18.3.1
@@ -13858,39 +14308,39 @@ snapshots:
dependencies:
storybook: 10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@storybook/addon-vitest@10.2.16(@vitest/browser-playwright@4.0.18)(@vitest/browser@4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0))(@vitest/runner@4.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vitest@4.1.0)':
+ '@storybook/addon-vitest@10.2.16(@vitest/browser-playwright@4.0.18)(@vitest/browser@4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0))(@vitest/runner@4.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vitest@4.1.0)':
dependencies:
'@storybook/global': 5.0.0
'@storybook/icons': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
storybook: 10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
optionalDependencies:
- '@vitest/browser': 4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)
- '@vitest/browser-playwright': 4.0.18(playwright@1.58.2)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)
+ '@vitest/browser': 4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)
+ '@vitest/browser-playwright': 4.0.18(playwright@1.58.2)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)
'@vitest/runner': 4.1.0
- vitest: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vitest: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
transitivePeerDependencies:
- react
- react-dom
- '@storybook/builder-vite@10.2.16(esbuild@0.27.3)(rollup@4.52.5)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@storybook/builder-vite@10.2.16(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
- '@storybook/csf-plugin': 10.2.16(esbuild@0.27.3)(rollup@4.52.5)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@storybook/csf-plugin': 10.2.16(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
storybook: 10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
ts-dedent: 2.2.0
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
transitivePeerDependencies:
- esbuild
- rollup
- webpack
- '@storybook/csf-plugin@10.2.16(esbuild@0.27.3)(rollup@4.52.5)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@storybook/csf-plugin@10.2.16(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
storybook: 10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
unplugin: 2.3.11
optionalDependencies:
- esbuild: 0.27.3
- rollup: 4.52.5
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ esbuild: 0.27.7
+ rollup: 4.60.1
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
'@storybook/global@5.0.0': {}
@@ -13973,19 +14423,19 @@ snapshots:
'@tailwindcss/oxide-win32-arm64-msvc': 4.2.1
'@tailwindcss/oxide-win32-x64-msvc': 4.2.1
- '@tailwindcss/vite@4.2.1(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@tailwindcss/vite@4.2.1(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@tailwindcss/node': 4.2.1
'@tailwindcss/oxide': 4.2.1
tailwindcss: 4.2.1
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- '@tailwindcss/vite@4.2.1(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@tailwindcss/vite@4.2.1(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@tailwindcss/node': 4.2.1
'@tailwindcss/oxide': 4.2.1
tailwindcss: 4.2.1
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
'@tanstack/db-ivm@0.1.17(typescript@6.0.2)':
dependencies:
@@ -14510,6 +14960,10 @@ snapshots:
dependencies:
'@types/webidl-conversions': 7.0.3
+ '@types/ws@8.18.1':
+ dependencies:
+ '@types/node': 24.9.1
+
'@typescript-eslint/project-service@8.52.0(typescript@6.0.2)':
dependencies:
'@typescript-eslint/tsconfig-utils': 8.52.0(typescript@6.0.2)
@@ -14583,29 +15037,29 @@ snapshots:
'@typescript-eslint/types': 8.52.0
eslint-visitor-keys: 4.2.1
- '@vitest/browser-playwright@4.0.18(playwright@1.58.2)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)':
+ '@vitest/browser-playwright@4.0.18(playwright@1.58.2)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)':
dependencies:
- '@vitest/browser': 4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)
- '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@vitest/browser': 4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)
+ '@vitest/mocker': 4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
playwright: 1.58.2
tinyrainbow: 3.0.3
- vitest: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vitest: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
transitivePeerDependencies:
- bufferutil
- msw
- utf-8-validate
- vite
- '@vitest/browser@4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)':
+ '@vitest/browser@4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)':
dependencies:
- '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@vitest/mocker': 4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@vitest/utils': 4.0.18
magic-string: 0.30.21
pixelmatch: 7.1.0
pngjs: 7.0.0
sirv: 3.0.2
tinyrainbow: 3.0.3
- vitest: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vitest: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
ws: 8.19.0
transitivePeerDependencies:
- bufferutil
@@ -14613,7 +15067,7 @@ snapshots:
- utf-8-validate
- vite
- '@vitest/coverage-v8@4.0.15(vitest@4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)))':
+ '@vitest/coverage-v8@4.0.15(vitest@4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)))':
dependencies:
'@bcoe/v8-coverage': 1.0.2
'@vitest/utils': 4.0.15
@@ -14626,11 +15080,11 @@ snapshots:
obug: 2.1.1
std-env: 3.10.0
tinyrainbow: 3.0.3
- vitest: 4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vitest: 4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
transitivePeerDependencies:
- supports-color
- '@vitest/coverage-v8@4.0.15(vitest@4.1.0(@types/node@20.5.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)))':
+ '@vitest/coverage-v8@4.0.15(vitest@4.1.0(@types/node@20.5.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)))':
dependencies:
'@bcoe/v8-coverage': 1.0.2
'@vitest/utils': 4.0.15
@@ -14643,11 +15097,11 @@ snapshots:
obug: 2.1.1
std-env: 3.10.0
tinyrainbow: 3.0.3
- vitest: 4.1.0(@types/node@20.5.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vitest: 4.1.0(@types/node@20.5.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
transitivePeerDependencies:
- supports-color
- '@vitest/coverage-v8@4.0.15(vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)))':
+ '@vitest/coverage-v8@4.0.15(vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)))':
dependencies:
'@bcoe/v8-coverage': 1.0.2
'@vitest/utils': 4.0.15
@@ -14660,11 +15114,11 @@ snapshots:
obug: 2.1.1
std-env: 3.10.0
tinyrainbow: 3.0.3
- vitest: 4.1.0(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vitest: 4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
transitivePeerDependencies:
- supports-color
- '@vitest/coverage-v8@4.0.18(@vitest/browser@4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0))(vitest@4.1.0)':
+ '@vitest/coverage-v8@4.0.18(@vitest/browser@4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0))(vitest@4.1.0)':
dependencies:
'@bcoe/v8-coverage': 1.0.2
'@vitest/utils': 4.0.18
@@ -14676,9 +15130,9 @@ snapshots:
obug: 2.1.1
std-env: 3.10.0
tinyrainbow: 3.0.3
- vitest: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vitest: 4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
optionalDependencies:
- '@vitest/browser': 4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)
+ '@vitest/browser': 4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)
'@vitest/expect@3.2.4':
dependencies:
@@ -14697,53 +15151,61 @@ snapshots:
chai: 6.2.2
tinyrainbow: 3.0.3
- '@vitest/mocker@4.0.18(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitest/mocker@4.0.18(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@vitest/spy': 4.0.18
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- '@vitest/mocker@4.1.0(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitest/mocker@4.1.0(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@vitest/spy': 4.1.0
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- '@vitest/mocker@4.1.0(vite@8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitest/mocker@4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@vitest/spy': 4.1.0
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- vite: 8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- '@vitest/mocker@4.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitest/mocker@4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@vitest/spy': 4.1.0
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- '@vitest/mocker@4.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitest/mocker@4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@vitest/spy': 4.1.0
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- '@vitest/mocker@4.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitest/mocker@4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))':
dependencies:
'@vitest/spy': 4.1.0
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+
+ '@vitest/mocker@4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))':
+ dependencies:
+ '@vitest/spy': 4.1.0
+ estree-walker: 3.0.3
+ magic-string: 0.30.21
+ optionalDependencies:
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
'@vitest/pretty-format@3.2.4':
dependencies:
@@ -14951,7 +15413,7 @@ snapshots:
anymatch@3.1.3:
dependencies:
normalize-path: 3.0.0
- picomatch: 2.3.1
+ picomatch: 2.3.2
app-module-path@2.2.0: {}
@@ -15216,7 +15678,7 @@ snapshots:
- encoding
- supports-color
- before-after-hook@3.0.2: {}
+ before-after-hook@4.0.0: {}
better-ajv-errors@1.2.0(@redocly/ajv@8.18.0):
dependencies:
@@ -16153,7 +16615,7 @@ snapshots:
docker-compose@1.3.0:
dependencies:
- yaml: 2.8.2
+ yaml: 2.8.3
docker-modem@5.0.6:
dependencies:
@@ -16309,6 +16771,8 @@ snapshots:
entities@6.0.1: {}
+ entities@7.0.1: {}
+
env-paths@2.2.1:
optional: true
@@ -16463,6 +16927,35 @@ snapshots:
'@esbuild/win32-ia32': 0.27.3
'@esbuild/win32-x64': 0.27.3
+ esbuild@0.27.7:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.27.7
+ '@esbuild/android-arm': 0.27.7
+ '@esbuild/android-arm64': 0.27.7
+ '@esbuild/android-x64': 0.27.7
+ '@esbuild/darwin-arm64': 0.27.7
+ '@esbuild/darwin-x64': 0.27.7
+ '@esbuild/freebsd-arm64': 0.27.7
+ '@esbuild/freebsd-x64': 0.27.7
+ '@esbuild/linux-arm': 0.27.7
+ '@esbuild/linux-arm64': 0.27.7
+ '@esbuild/linux-ia32': 0.27.7
+ '@esbuild/linux-loong64': 0.27.7
+ '@esbuild/linux-mips64el': 0.27.7
+ '@esbuild/linux-ppc64': 0.27.7
+ '@esbuild/linux-riscv64': 0.27.7
+ '@esbuild/linux-s390x': 0.27.7
+ '@esbuild/linux-x64': 0.27.7
+ '@esbuild/netbsd-arm64': 0.27.7
+ '@esbuild/netbsd-x64': 0.27.7
+ '@esbuild/openbsd-arm64': 0.27.7
+ '@esbuild/openbsd-x64': 0.27.7
+ '@esbuild/openharmony-arm64': 0.27.7
+ '@esbuild/sunos-x64': 0.27.7
+ '@esbuild/win32-arm64': 0.27.7
+ '@esbuild/win32-ia32': 0.27.7
+ '@esbuild/win32-x64': 0.27.7
+
escalade@3.2.0: {}
escape-goat@2.1.1: {}
@@ -16735,7 +17228,7 @@ snapshots:
fast-content-type-parse@1.1.0: {}
- fast-content-type-parse@2.0.1: {}
+ fast-content-type-parse@3.0.0: {}
fast-decode-uri-component@1.0.1: {}
@@ -16815,9 +17308,9 @@ snapshots:
dependencies:
websocket-driver: 0.7.4
- fdir@6.5.0(picomatch@4.0.3):
+ fdir@6.5.0(picomatch@4.0.4):
optionalDependencies:
- picomatch: 4.0.3
+ picomatch: 4.0.4
fecha@4.2.3: {}
@@ -17439,11 +17932,17 @@ snapshots:
hangul-js@0.2.6: {}
- happy-dom@20.0.10:
+ happy-dom@20.8.9:
dependencies:
- '@types/node': 20.14.11
+ '@types/node': 24.9.1
'@types/whatwg-mimetype': 3.0.2
+ '@types/ws': 8.18.1
+ entities: 7.0.1
whatwg-mimetype: 3.0.0
+ ws: 8.19.0
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
hard-rejection@2.1.0: {}
@@ -18112,6 +18611,8 @@ snapshots:
json-stable-stringify-without-jsonify@1.0.1: {}
+ json-with-bigint@3.5.8: {}
+
json5@2.2.3: {}
jsonfile@6.2.0:
@@ -18362,7 +18863,7 @@ snapshots:
object-inspect: 1.13.4
pidtree: 0.6.0
string-argv: 0.3.2
- yaml: 2.8.2
+ yaml: 2.8.3
transitivePeerDependencies:
- enquirer
- supports-color
@@ -18652,7 +19153,7 @@ snapshots:
micromatch@4.0.8:
dependencies:
braces: 3.0.3
- picomatch: 2.3.1
+ picomatch: 2.3.2
mime-db@1.52.0: {}
@@ -19253,7 +19754,7 @@ snapshots:
dependencies:
'@babel/parser': 7.28.6
- nodemailer@7.0.11: {}
+ nodemailer@8.0.4: {}
nodemon@3.1.14:
dependencies:
@@ -19442,7 +19943,7 @@ snapshots:
openapi3-ts@3.2.0:
dependencies:
- yaml: 2.8.2
+ yaml: 2.8.3
optionator@0.9.4:
dependencies:
@@ -19724,8 +20225,6 @@ snapshots:
picocolors@1.1.1: {}
- picomatch@2.3.1: {}
-
picomatch@2.3.2: {}
picomatch@4.0.3: {}
@@ -19778,14 +20277,14 @@ snapshots:
possible-typed-array-names@1.1.0: {}
- postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(yaml@2.8.2):
+ postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(yaml@2.8.3):
dependencies:
lilconfig: 3.1.3
optionalDependencies:
jiti: 2.6.1
postcss: 8.5.8
tsx: 4.21.0
- yaml: 2.8.2
+ yaml: 2.8.3
postcss-value-parser@4.2.0: {}
@@ -20099,7 +20598,7 @@ snapshots:
readdirp@3.6.0:
dependencies:
- picomatch: 2.3.1
+ picomatch: 2.3.2
readdirp@4.1.2: {}
@@ -20277,31 +20776,34 @@ snapshots:
dependencies:
glob: 10.4.5
- rolldown@1.0.0-rc.10:
+ rolldown@1.0.0-rc.12(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0):
dependencies:
- '@oxc-project/types': 0.120.0
- '@rolldown/pluginutils': 1.0.0-rc.10
+ '@oxc-project/types': 0.122.0
+ '@rolldown/pluginutils': 1.0.0-rc.12
optionalDependencies:
- '@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
+ '@rolldown/binding-android-arm64': 1.0.0-rc.12
+ '@rolldown/binding-darwin-arm64': 1.0.0-rc.12
+ '@rolldown/binding-darwin-x64': 1.0.0-rc.12
+ '@rolldown/binding-freebsd-x64': 1.0.0-rc.12
+ '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.12
+ '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.12
+ '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.12
+ '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.12
+ '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.12
+ '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.12
+ '@rolldown/binding-linux-x64-musl': 1.0.0-rc.12
+ '@rolldown/binding-openharmony-arm64': 1.0.0-rc.12
+ '@rolldown/binding-wasm32-wasi': 1.0.0-rc.12(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)
+ '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.12
+ '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.12
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
rollup-plugin-visualizer@5.14.0(rollup@2.80.0):
dependencies:
open: 8.4.2
- picomatch: 4.0.3
+ picomatch: 4.0.4
source-map: 0.7.6
yargs: 17.7.2
optionalDependencies:
@@ -20339,6 +20841,37 @@ snapshots:
'@rollup/rollup-win32-x64-msvc': 4.52.5
fsevents: 2.3.3
+ rollup@4.60.1:
+ dependencies:
+ '@types/estree': 1.0.8
+ optionalDependencies:
+ '@rollup/rollup-android-arm-eabi': 4.60.1
+ '@rollup/rollup-android-arm64': 4.60.1
+ '@rollup/rollup-darwin-arm64': 4.60.1
+ '@rollup/rollup-darwin-x64': 4.60.1
+ '@rollup/rollup-freebsd-arm64': 4.60.1
+ '@rollup/rollup-freebsd-x64': 4.60.1
+ '@rollup/rollup-linux-arm-gnueabihf': 4.60.1
+ '@rollup/rollup-linux-arm-musleabihf': 4.60.1
+ '@rollup/rollup-linux-arm64-gnu': 4.60.1
+ '@rollup/rollup-linux-arm64-musl': 4.60.1
+ '@rollup/rollup-linux-loong64-gnu': 4.60.1
+ '@rollup/rollup-linux-loong64-musl': 4.60.1
+ '@rollup/rollup-linux-ppc64-gnu': 4.60.1
+ '@rollup/rollup-linux-ppc64-musl': 4.60.1
+ '@rollup/rollup-linux-riscv64-gnu': 4.60.1
+ '@rollup/rollup-linux-riscv64-musl': 4.60.1
+ '@rollup/rollup-linux-s390x-gnu': 4.60.1
+ '@rollup/rollup-linux-x64-gnu': 4.60.1
+ '@rollup/rollup-linux-x64-musl': 4.60.1
+ '@rollup/rollup-openbsd-x64': 4.60.1
+ '@rollup/rollup-openharmony-arm64': 4.60.1
+ '@rollup/rollup-win32-arm64-msvc': 4.60.1
+ '@rollup/rollup-win32-ia32-msvc': 4.60.1
+ '@rollup/rollup-win32-x64-gnu': 4.60.1
+ '@rollup/rollup-win32-x64-msvc': 4.60.1
+ fsevents: 2.3.3
+
router@1.3.8:
dependencies:
array-flatten: 3.0.0
@@ -20725,7 +21258,7 @@ snapshots:
ip-address: 9.0.5
smart-buffer: 4.2.0
- solid-devtools@0.34.5(solid-js@1.9.10)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ solid-devtools@0.34.5(solid-js@1.9.10)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@babel/core': 7.28.6
'@babel/plugin-syntax-typescript': 7.28.6(@babel/core@7.28.6)
@@ -20734,7 +21267,7 @@ snapshots:
'@solid-devtools/shared': 0.20.0(solid-js@1.9.10)
solid-js: 1.9.10
optionalDependencies:
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
transitivePeerDependencies:
- supports-color
@@ -20875,15 +21408,15 @@ snapshots:
es-errors: 1.3.0
internal-slot: 1.1.0
- storybook-solidjs-vite@10.0.9(@testing-library/jest-dom@6.9.1)(esbuild@0.27.3)(rollup@4.52.5)(solid-js@1.9.11)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@6.0.2)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ storybook-solidjs-vite@10.0.9(@testing-library/jest-dom@6.9.1)(esbuild@0.27.7)(rollup@4.60.1)(solid-js@1.9.11)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(typescript@6.0.2)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
- '@joshwooding/vite-plugin-react-docgen-typescript': 0.6.4(typescript@6.0.2)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
- '@storybook/builder-vite': 10.2.16(esbuild@0.27.3)(rollup@4.52.5)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@joshwooding/vite-plugin-react-docgen-typescript': 0.6.4(typescript@6.0.2)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
+ '@storybook/builder-vite': 10.2.16(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@storybook/global': 5.0.0
solid-js: 1.9.11
storybook: 10.2.16(@testing-library/dom@10.4.1)(prettier@3.7.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
- vite-plugin-solid: 2.11.10(@testing-library/jest-dom@6.9.1)(solid-js@1.9.11)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
+ vite-plugin-solid: 2.11.10(@testing-library/jest-dom@6.9.1)(solid-js@1.9.11)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
optionalDependencies:
typescript: 6.0.2
transitivePeerDependencies:
@@ -21337,8 +21870,8 @@ snapshots:
tinyglobby@0.2.15:
dependencies:
- fdir: 6.5.0(picomatch@4.0.3)
- picomatch: 4.0.3
+ fdir: 6.5.0(picomatch@4.0.4)
+ picomatch: 4.0.4
tinypool@2.1.0: {}
@@ -21459,7 +21992,7 @@ snapshots:
tsscmp@1.0.6: {}
- tsup@8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.2):
+ tsup@8.4.0(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(typescript@6.0.2)(yaml@2.8.3):
dependencies:
bundle-require: 5.1.0(esbuild@0.25.11)
cac: 6.7.14
@@ -21469,7 +22002,7 @@ snapshots:
esbuild: 0.25.11
joycon: 3.1.1
picocolors: 1.1.1
- postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(yaml@2.8.2)
+ postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.8)(tsx@4.21.0)(yaml@2.8.3)
resolve-from: 5.0.0
rollup: 4.52.5
source-map: 0.8.0-beta.0
@@ -21655,7 +22188,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
- universal-user-agent@7.0.2: {}
+ universal-user-agent@7.0.3: {}
universalify@2.0.1: {}
@@ -21670,7 +22203,7 @@ snapshots:
unplugin-utils@0.3.1:
dependencies:
pathe: 2.0.3
- picomatch: 4.0.3
+ picomatch: 4.0.4
unplugin@1.0.1:
dependencies:
@@ -21688,7 +22221,7 @@ snapshots:
dependencies:
'@jridgewell/remapping': 2.3.5
acorn: 8.15.0
- picomatch: 4.0.3
+ picomatch: 4.0.4
webpack-virtual-modules: 0.6.2
upath@1.2.0: {}
@@ -21768,19 +22301,19 @@ snapshots:
- rollup
- supports-color
- vite-dev-rpc@1.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vite-dev-rpc@1.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
birpc: 2.6.1
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
- vite-hot-client: 2.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
+ vite-hot-client: 2.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
- vite-hot-client@2.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vite-hot-client@2.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
vite-plugin-html-inject@1.1.2: {}
- vite-plugin-inspect@11.3.3(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vite-plugin-inspect@11.3.3(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
ansis: 4.2.0
debug: 4.4.3(supports-color@5.5.0)
@@ -21790,29 +22323,29 @@ snapshots:
perfect-debounce: 2.0.0
sirv: 3.0.2
unplugin-utils: 0.3.1
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
- vite-dev-rpc: 1.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
+ vite-dev-rpc: 1.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
transitivePeerDependencies:
- supports-color
- vite-plugin-minify@2.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vite-plugin-minify@2.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@types/html-minifier-terser': 7.0.2
html-minifier-terser: 7.2.0
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- vite-plugin-pwa@1.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(workbox-build@7.1.1(@types/babel__core@7.20.5))(workbox-window@7.1.0):
+ vite-plugin-pwa@1.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(workbox-build@7.1.1(@types/babel__core@7.20.5))(workbox-window@7.1.0):
dependencies:
debug: 4.4.3(supports-color@5.5.0)
pretty-bytes: 6.1.1
tinyglobby: 0.2.15
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
workbox-build: 7.1.1(@types/babel__core@7.20.5)
workbox-window: 7.1.0
transitivePeerDependencies:
- supports-color
- vite-plugin-solid@2.11.10(@testing-library/jest-dom@6.9.1)(solid-js@1.9.11)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vite-plugin-solid@2.11.10(@testing-library/jest-dom@6.9.1)(solid-js@1.9.11)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@babel/core': 7.28.6
'@types/babel__core': 7.20.5
@@ -21820,14 +22353,14 @@ snapshots:
merge-anything: 5.1.7
solid-js: 1.9.11
solid-refresh: 0.6.3(solid-js@1.9.11)
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
- vitefu: 1.1.1(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
+ vitefu: 1.1.1(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
optionalDependencies:
'@testing-library/jest-dom': 6.9.1
transitivePeerDependencies:
- supports-color
- vite-plugin-solid@2.11.11(@testing-library/jest-dom@6.9.1)(solid-js@1.9.10)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vite-plugin-solid@2.11.11(@testing-library/jest-dom@6.9.1)(solid-js@1.9.10)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@babel/core': 7.28.6
'@types/babel__core': 7.20.5
@@ -21835,20 +22368,20 @@ snapshots:
merge-anything: 5.1.7
solid-js: 1.9.10
solid-refresh: 0.6.3(solid-js@1.9.10)
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
- vitefu: 1.1.1(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
+ vitefu: 1.1.1(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
optionalDependencies:
'@testing-library/jest-dom': 6.9.1
transitivePeerDependencies:
- supports-color
- vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2):
+ vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3):
dependencies:
- esbuild: 0.27.3
- fdir: 6.5.0(picomatch@4.0.3)
- picomatch: 4.0.3
+ esbuild: 0.27.7
+ fdir: 6.5.0(picomatch@4.0.4)
+ picomatch: 4.0.4
postcss: 8.5.8
- rollup: 4.52.5
+ rollup: 4.60.1
tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 24.9.1
@@ -21858,31 +22391,34 @@ snapshots:
sass: 1.98.0
terser: 5.46.1
tsx: 4.21.0
- yaml: 2.8.2
+ yaml: 2.8.3
- vite@8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2):
+ vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3):
dependencies:
lightningcss: 1.32.0
- picomatch: 4.0.3
+ picomatch: 4.0.4
postcss: 8.5.8
- rolldown: 1.0.0-rc.10
+ rolldown: 1.0.0-rc.12(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)
tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 20.5.1
- esbuild: 0.27.3
+ esbuild: 0.27.7
fsevents: 2.3.3
jiti: 2.6.1
sass: 1.98.0
terser: 5.46.1
tsx: 4.21.0
- yaml: 2.8.2
+ yaml: 2.8.3
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
- vite@8.0.1(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2):
+ vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3):
dependencies:
lightningcss: 1.32.0
- picomatch: 4.0.3
+ picomatch: 4.0.4
postcss: 8.5.8
- rolldown: 1.0.0-rc.10
+ rolldown: 1.0.0-rc.12(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)
tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 24.9.1
@@ -21892,54 +22428,83 @@ snapshots:
sass: 1.98.0
terser: 5.46.1
tsx: 4.21.0
- yaml: 2.8.2
+ yaml: 2.8.3
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
- vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2):
+ vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3):
dependencies:
lightningcss: 1.32.0
- picomatch: 4.0.3
+ picomatch: 4.0.4
postcss: 8.5.8
- rolldown: 1.0.0-rc.10
+ rolldown: 1.0.0-rc.12(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)
tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 24.9.1
- esbuild: 0.27.3
+ esbuild: 0.27.7
fsevents: 2.3.3
jiti: 2.6.1
sass: 1.70.0
terser: 5.46.1
tsx: 4.21.0
- yaml: 2.8.2
+ yaml: 2.8.3
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
- vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2):
+ vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
lightningcss: 1.32.0
- picomatch: 4.0.3
+ picomatch: 4.0.4
postcss: 8.5.8
- rolldown: 1.0.0-rc.10
+ rolldown: 1.0.0-rc.12(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)
tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 24.9.1
- esbuild: 0.27.3
+ esbuild: 0.27.7
fsevents: 2.3.3
jiti: 2.6.1
sass: 1.98.0
terser: 5.46.1
tsx: 4.21.0
yaml: 2.8.2
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
+
+ vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3):
+ dependencies:
+ lightningcss: 1.32.0
+ picomatch: 4.0.4
+ postcss: 8.5.8
+ rolldown: 1.0.0-rc.12(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)
+ tinyglobby: 0.2.15
+ optionalDependencies:
+ '@types/node': 24.9.1
+ esbuild: 0.27.7
+ fsevents: 2.3.3
+ jiti: 2.6.1
+ sass: 1.98.0
+ terser: 5.46.1
+ tsx: 4.21.0
+ yaml: 2.8.3
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
- vitefu@1.1.1(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vitefu@1.1.1(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
optionalDependencies:
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- vitefu@1.1.1(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vitefu@1.1.1(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
optionalDependencies:
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
- vitest@4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vitest@4.1.0(@opentelemetry/api@1.8.0)(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
dependencies:
'@vitest/expect': 4.1.0
- '@vitest/mocker': 4.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@vitest/mocker': 4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
'@vitest/pretty-format': 4.1.0
'@vitest/runner': 4.1.0
'@vitest/snapshot': 4.1.0
@@ -21956,20 +22521,20 @@ snapshots:
tinyexec: 1.0.2
tinyglobby: 0.2.15
tinyrainbow: 3.0.3
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
why-is-node-running: 2.3.0
optionalDependencies:
'@opentelemetry/api': 1.8.0
'@types/node': 24.9.1
- happy-dom: 20.0.10
+ happy-dom: 20.8.9
jsdom: 27.4.0
transitivePeerDependencies:
- msw
- vitest@4.1.0(@types/node@20.5.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vitest@4.1.0(@types/node@20.5.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@vitest/expect': 4.1.0
- '@vitest/mocker': 4.1.0(vite@8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@vitest/mocker': 4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@vitest/pretty-format': 4.1.0
'@vitest/runner': 4.1.0
'@vitest/snapshot': 4.1.0
@@ -21986,19 +22551,49 @@ snapshots:
tinyexec: 1.0.2
tinyglobby: 0.2.15
tinyrainbow: 3.0.3
- vite: 8.0.1(@types/node@20.5.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@20.5.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/node': 20.5.1
- happy-dom: 20.0.10
+ happy-dom: 20.8.9
+ jsdom: 27.4.0
+ transitivePeerDependencies:
+ - msw
+
+ vitest@4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
+ dependencies:
+ '@vitest/expect': 4.1.0
+ '@vitest/mocker': 4.1.0(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
+ '@vitest/pretty-format': 4.1.0
+ '@vitest/runner': 4.1.0
+ '@vitest/snapshot': 4.1.0
+ '@vitest/spy': 4.1.0
+ '@vitest/utils': 4.1.0
+ es-module-lexer: 2.0.0
+ expect-type: 1.3.0
+ magic-string: 0.30.21
+ obug: 2.1.1
+ pathe: 2.0.3
+ picomatch: 4.0.3
+ std-env: 4.0.0
+ tinybench: 2.9.0
+ tinyexec: 1.0.2
+ tinyglobby: 0.2.15
+ tinyrainbow: 3.0.3
+ vite: 7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
+ why-is-node-running: 2.3.0
+ optionalDependencies:
+ '@types/node': 24.9.1
+ '@vitest/browser-playwright': 4.0.18(playwright@1.58.2)(vite@7.3.2(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))(vitest@4.1.0)
+ happy-dom: 20.8.9
jsdom: 27.4.0
transitivePeerDependencies:
- msw
- vitest@4.1.0(@types/node@24.9.1)(@vitest/browser-playwright@4.0.18)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@vitest/expect': 4.1.0
- '@vitest/mocker': 4.1.0(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@vitest/mocker': 4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@vitest/pretty-format': 4.1.0
'@vitest/runner': 4.1.0
'@vitest/snapshot': 4.1.0
@@ -22015,20 +22610,19 @@ snapshots:
tinyexec: 1.0.2
tinyglobby: 0.2.15
tinyrainbow: 3.0.3
- vite: 7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/node': 24.9.1
- '@vitest/browser-playwright': 4.0.18(playwright@1.58.2)(vite@7.3.1(@types/node@24.9.1)(jiti@2.6.1)(lightningcss@1.32.0)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))(vitest@4.1.0)
- happy-dom: 20.0.10
+ happy-dom: 20.8.9
jsdom: 27.4.0
transitivePeerDependencies:
- msw
- vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@vitest/expect': 4.1.0
- '@vitest/mocker': 4.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@vitest/mocker': 4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@vitest/pretty-format': 4.1.0
'@vitest/runner': 4.1.0
'@vitest/snapshot': 4.1.0
@@ -22045,19 +22639,19 @@ snapshots:
tinyexec: 1.0.2
tinyglobby: 0.2.15
tinyrainbow: 3.0.3
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.25.11)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/node': 24.9.1
- happy-dom: 20.0.10
+ happy-dom: 20.8.9
jsdom: 27.4.0
transitivePeerDependencies:
- msw
- vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.0.10)(jsdom@27.4.0)(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)):
+ vitest@4.1.0(@types/node@24.9.1)(happy-dom@20.8.9)(jsdom@27.4.0)(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@vitest/expect': 4.1.0
- '@vitest/mocker': 4.1.0(vite@8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@vitest/mocker': 4.1.0(vite@8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3))
'@vitest/pretty-format': 4.1.0
'@vitest/runner': 4.1.0
'@vitest/snapshot': 4.1.0
@@ -22074,11 +22668,11 @@ snapshots:
tinyexec: 1.0.2
tinyglobby: 0.2.15
tinyrainbow: 3.0.3
- vite: 8.0.1(@types/node@24.9.1)(esbuild@0.27.3)(jiti@2.6.1)(sass@1.70.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 8.0.5(@emnapi/core@1.9.0)(@emnapi/runtime@1.9.0)(@types/node@24.9.1)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.98.0)(terser@5.46.1)(tsx@4.21.0)(yaml@2.8.3)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/node': 24.9.1
- happy-dom: 20.0.10
+ happy-dom: 20.8.9
jsdom: 27.4.0
transitivePeerDependencies:
- msw
@@ -22425,6 +23019,8 @@ snapshots:
yaml@2.8.2: {}
+ yaml@2.8.3: {}
+
yargs-parser@20.2.9: {}
yargs-parser@21.1.1: {}