diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 1ccece4f7..ed325c9a8 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -11,3 +11,11 @@
- [ ] Commits follow the [conventional commits guideline](https://www.conventionalcommits.org/en/v1.0.0/)
- [ ] No shorthand variable names are used (eg. `x`, `y`, `i` or any abbrevation)
- [ ] Documentation is up to date. Create a pull request [here](https://github.com/homarr-labs/documentation/).
+- [ ] When using AI; No temp files are checked in, the code style follows the rest of the project
+
+**When contributing a new integration or widget:**
+
+- [ ] I confirmed manually that the integration or widget is working with a real system and performed basic smoke
+ tests (e.g. what happens if it is offline)
+- [ ] Optional but recommended: I confirm that I am willing to be added to the `CODEOWNERS` of this feature and will
+ provide support and maintain the integration (e.g. in case of breaking or failure)
\ No newline at end of file
diff --git a/apps/docs/docs/getting-started/installation/helm.md b/apps/docs/docs/getting-started/installation/helm.md
index 1f6aa6e9e..039f76ed4 100644
--- a/apps/docs/docs/getting-started/installation/helm.md
+++ b/apps/docs/docs/getting-started/installation/helm.md
@@ -2,9 +2,9 @@
-
+

-
+
A Helm chart to deploy homarr for Kubernetes
@@ -429,7 +429,7 @@ All available values are listed on the [artifacthub](https://artifacthub.io/pack
| httproute.rules[0].matches[0].path.value | string | `"/"` | Path value to match |
| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
| image.repository | string | `"ghcr.io/homarr-labs/homarr"` | Image repository |
-| image.tag | string | `"v1.69.2"` | Overrides the image tag whose default is the chart appVersion |
+| image.tag | string | `"v1.70.0"` | Overrides the image tag whose default is the chart appVersion |
| imagePullSecrets | list | `[]` | Secrets for Docker registry |
| ingress.annotations | object | `{}` | Ingress annotations |
| ingress.enabled | bool | `false` | Enable ingress |
diff --git a/apps/docs/docs/widgets/notebook/index.mdx b/apps/docs/docs/widgets/notebook/index.mdx
index 5728e0113..393137ed2 100644
--- a/apps/docs/docs/widgets/notebook/index.mdx
+++ b/apps/docs/docs/widgets/notebook/index.mdx
@@ -1,29 +1,25 @@
---
-title: 'Notebook'
-description: 'A simple notebook widget that supports markdown.'
+title: "Notebook"
+description: "A simple notebook widget that supports markdown."
hide_title: true
---
-import { AddingWidget } from '@site/src/components/widgets/adding';
-import { WidgetConfig } from '@site/src/components/widgets/configuration';
-import { WidgetHeader } from '@site/src/components/widgets/header';
-import { notebookWidget } from '.';
+import { AddingWidget } from "@site/src/components/widgets/adding";
+import { WidgetConfig } from "@site/src/components/widgets/configuration";
+import { WidgetHeader } from "@site/src/components/widgets/header";
+import { notebookWidget } from ".";
+
-
-
-The notebook widget focuses on usability and is designed to be as simple as possible to bring a familiar editing experience to regular users.
+The notebook widget focuses on usability and is designed to be as simple as possible to bring a familiar editing experience to regular users.
It is based on Tiptap.dev and supports most of its features.
### Screenshots
-import editOff from './img/normal.png';
-import editOn from './img/edit.png';
+import editOff from "./img/normal.png";
+import editOn from "./img/edit.png";
-
+
@@ -33,24 +29,27 @@ import editOn from './img/edit.png';
### Configuration
+
### Editing
+
When the permissions of the user allows it, you can enter the editing of the text by clicking the following button in the top right.

-
You can then decide to save your changes or cancel them to exit editing, using the buttons placed in the same location.

### Notebook toolbar functions
-The notebook offers a variaty of functions to edit the text and more.
+
+The notebook offers a variety of functions to edit the text and more.

#### Common text formatting
+
| Function | Description |
| ---------------------- | ------------------------------------------------------------------- |
| Bold | Makes the selected text bold |
@@ -62,35 +61,51 @@ The notebook offers a variaty of functions to edit the text and more.
| Clear formatting | Erases any of the preceding function's effects on the selected text |
#### Heading
+
Choose a heading size for the line, making the text bigger. Working like titles and sub-titles.
-#### Text Alignement
-Select the alignement on the line. Left, center or right.
+#### Text Alignment
+
+Select the alignment on the line. Left, center or right.
+
+#### Text direction
+
+Set the current paragraph or heading to left-to-right or right-to-left. This is useful when writing right-to-left text while Homarr is using a left-to-right language, or vice versa.
#### Misc functions
+
##### Blockquote
+
Puts the current line in a quoting block.
##### Horizontal line
+
Adds a line that goes from the far right to the far left as a separator.
#### Lists
+
##### Bullet lists
+
Simple list with a dot preceding each element.
##### Ordered lists
+
List with numbers preceding each element.
##### Check lists
+
List with a checkbox on each element.
##### Indentation changes
+

When you are currently in a list of any sort, the last 2 buttons will appear and will allow you to change the indentation of the current list item.
#### Insert functions
+
##### Link controls
+
The first buttons is to insert a link, or edit an existing link. The link will be applied on the selected text.
Pasting a link directly into the text will automatically put the link anchor on it too.
@@ -102,16 +117,20 @@ The second button will remove the link while leaving the text intact.
This is the modal for the link, The little button in the textbox can be clicked to make the link open in a new tab.
##### Image controls
+

##### Source
+
You can use a normal link to an image or you can also use locally stored images.
##### Width
+
The aspect ratio will always be respected, so only the width field is necessary.
You can provide a value in a plain number or you can also use percents to have your image size dynamically change on different screens.
#### Table
+
This last control allows you to add a table, for which you can determine the number of columns and row before inserting it.

@@ -119,6 +138,7 @@ This last control allows you to add a table, for which you can determine the num
Clicking that button while in a table will delete it.
##### Table controls
+

While in a table, further controls will appear to help edit the table.
@@ -134,4 +154,4 @@ All the following ones are for editing the wize of the table:
- Delete Column
- Add row on top
- Add row below
-- Delete Row
\ No newline at end of file
+- Delete Row
diff --git a/apps/docs/package.json b/apps/docs/package.json
index 586fa53b6..da3a8a1cd 100644
--- a/apps/docs/package.json
+++ b/apps/docs/package.json
@@ -43,7 +43,7 @@
"random-word-slugs": "^0.1.7",
"react": "catalog:",
"react-dom": "catalog:",
- "swiper": "^14.0.1",
+ "swiper": "^14.0.2",
"tailwindcss": "^4.3.2"
},
"devDependencies": {
diff --git a/apps/nextjs/src/app/[locale]/init/_steps/import/file-info-card.tsx b/apps/nextjs/src/app/[locale]/init/_steps/import/file-info-card.tsx
index 8a3a14fb4..c947719c2 100644
--- a/apps/nextjs/src/app/[locale]/init/_steps/import/file-info-card.tsx
+++ b/apps/nextjs/src/app/[locale]/init/_steps/import/file-info-card.tsx
@@ -2,7 +2,7 @@ import { ActionIcon, Button, Group, Text } from "@mantine/core";
import type { FileWithPath } from "@mantine/dropzone";
import { IconPencil } from "@tabler/icons-react";
-import { humanFileSize } from "@homarr/common";
+import { formatBytes } from "@homarr/common";
import { useScopedI18n } from "@homarr/translation/client";
import { InitStepCard } from "../../_components/init-step-card";
@@ -22,7 +22,7 @@ export const FileInfoCard = ({ file, onRemove }: FileInfoCardProps) => {
{file.name}
- {humanFileSize(file.size)}
+ {formatBytes(file.size)}
{
/>
{media.name}
- {humanFileSize(media.size)}
+ {formatBytes(media.size)}
{media.creator ? (
diff --git a/apps/nextjs/src/app/[locale]/manage/tools/docker/docker-table.tsx b/apps/nextjs/src/app/[locale]/manage/tools/docker/docker-table.tsx
index 43bbc3ff3..a2c504027 100644
--- a/apps/nextjs/src/app/[locale]/manage/tools/docker/docker-table.tsx
+++ b/apps/nextjs/src/app/[locale]/manage/tools/docker/docker-table.tsx
@@ -19,7 +19,7 @@ import { MantineReactTable } from "mantine-react-table";
import type { RouterOutputs } from "@homarr/api";
import { clientApi } from "@homarr/api/client";
-import { humanFileSize, useTimeAgo } from "@homarr/common";
+import { formatBytes, useTimeAgo } from "@homarr/common";
import type { ContainerState } from "@homarr/docker";
import { containerStateColorMap, cpuUsageColor, memoryUsageColor, safeValue } from "@homarr/docker/shared";
import { useModalAction } from "@homarr/modals";
@@ -143,7 +143,7 @@ const createColumns = (t: TranslationFunction): MRT_ColumnDef[]
return (
- {humanFileSize(bytesUsage)}
+ {formatBytes(bytesUsage)}
);
},
diff --git a/packages/common/src/number.ts b/packages/common/src/number.ts
index 3d9f79bd7..af3c8fddf 100644
--- a/packages/common/src/number.ts
+++ b/packages/common/src/number.ts
@@ -21,11 +21,17 @@ export const randomInt = (min: number, max: number) => {
};
/**
- * Number of bytes to si format. (Division by 1024)
- * Does not accept floats, size in bytes should be an integer.
- * Will return "NaI" and logs a warning if a float is passed.
- * Concat as parameters so it is not added if the returned value is "NaI" or "∞".
- * Returns "∞" if the size is too large to be represented in the current format.
+ * Number of bytes to a human-readable string using binary (KiB) suffixes.
+ * Does not accept floats; size in bytes should be an integer.
+ * Will return "NaI" and log a warning if a float is passed.
+ * `concat` is appended after the unit so it is omitted when the returned
+ * value is "NaI" or "∞". Returns "∞" if the size is too large to be
+ * represented in the current format.
+ *
+ * @deprecated Use `formatBytes` for single values, `formatBytesPair` for
+ * paired "used / total" displays, and `formatByteRate` for byte-per-second
+ * rates. This function is kept for backwards compatibility but should not
+ * be used in new code.
*/
export const humanFileSize = (size: number, concat = ""): string => {
//64bit limit for Number stops at EiB
@@ -48,6 +54,99 @@ export const humanFileSize = (size: number, concat = ""): string => {
return "∞";
};
+const BINARY_UNITS = ["B", "KiB", "MiB", "GiB", "TiB", "PiB", "EiB"] as const;
+const DECIMAL_UNITS = ["B", "KB", "MB", "GB", "TB", "PB", "EB"] as const;
+
+export type ByteUnitSystem = "binary" | "decimal";
+
+export interface FormatBytesOptions {
+ /**
+ * Unit system to use. "binary" uses 1024 as the base and KiB/MiB/GiB/TiB suffixes,
+ * "decimal" uses 1000 as the base and KB/MB/GB/TB suffixes. Defaults to "binary".
+ */
+ unit?: ByteUnitSystem;
+}
+
+const pickUnitIndex = (bytes: number, base: number, lastIndex: number): number => {
+ if (!Number.isFinite(bytes) || bytes <= 0) return 0;
+ let index = 0;
+ let value = bytes;
+ while (value >= base && index < lastIndex) {
+ value /= base;
+ index++;
+ }
+ return index;
+};
+
+const sanitizeBytes = (bytes: number): number => (Number.isFinite(bytes) && bytes > 0 ? bytes : 0);
+
+const resolveUnitConfig = (options: FormatBytesOptions) => {
+ const { unit = "binary" } = options;
+ return {
+ units: unit === "binary" ? BINARY_UNITS : DECIMAL_UNITS,
+ base: unit === "binary" ? 1024 : 1000,
+ };
+};
+
+/**
+ * Format a byte value as a human-readable string with a unit suffix.
+ *
+ * Picks the largest unit that keeps the scaled value below the base. Use
+ * `formatBytesPair` when two related values (e.g. used and available) should
+ * share a common unit.
+ *
+ * @example
+ * formatBytes(0); // "0.0 B"
+ * formatBytes(1024); // "1.0 KiB"
+ * formatBytes(985828802560); // "918.1 GiB"
+ * formatBytes(985828802560, { unit: "decimal" }); // "985.8 GB"
+ */
+export const formatBytes = (bytes: number, options: FormatBytesOptions = {}): string => {
+ const { units, base } = resolveUnitConfig(options);
+ const safe = sanitizeBytes(bytes);
+ const index = pickUnitIndex(safe, base, units.length - 1);
+ const scaled = safe / base ** index;
+ return `${scaled.toFixed(1)} ${units[index]}`;
+};
+
+/**
+ * Format two related byte values (typically `used` and `available`) with a
+ * shared unit. The unit is picked from the sum of the two values so the
+ * combined display stays consistent.
+ *
+ * @example
+ * formatBytesPair(985828802560, 2858736793190);
+ * // { used: "0.9 TiB", available: "2.6 TiB" }
+ */
+export const formatBytesPair = (
+ used: number,
+ available: number,
+ options: FormatBytesOptions = {},
+): { used: string; available: string } => {
+ const { units, base } = resolveUnitConfig(options);
+ const safeUsed = sanitizeBytes(used);
+ const safeAvailable = sanitizeBytes(available);
+ const index = pickUnitIndex(safeUsed + safeAvailable, base, units.length - 1);
+ const suffix = units[index];
+ return {
+ used: `${(safeUsed / base ** index).toFixed(1)} ${suffix}`,
+ available: `${(safeAvailable / base ** index).toFixed(1)} ${suffix}`,
+ };
+};
+
+/**
+ * Format a byte-per-second rate (e.g. network throughput) as a human-readable
+ * string with a `/s` suffix. The value is formatted with the same rules as
+ * `formatBytes` and a trailing `/s` is appended.
+ *
+ * @example
+ * formatByteRate(0); // "0.0 B/s"
+ * formatByteRate(1024); // "1.0 KiB/s"
+ * formatByteRate(985828802560, { unit: "decimal" }); // "985.8 GB/s"
+ */
+export const formatByteRate = (bytes: number, options: FormatBytesOptions = {}): string =>
+ `${formatBytes(bytes, options)}/s`;
+
const IMPERIAL_MULTIPLIER = 1.609344;
export const metricToImperial = (metricValue: number) => metricValue / IMPERIAL_MULTIPLIER;
diff --git a/packages/common/src/test/number.spec.ts b/packages/common/src/test/number.spec.ts
new file mode 100644
index 000000000..c8a9ec839
--- /dev/null
+++ b/packages/common/src/test/number.spec.ts
@@ -0,0 +1,90 @@
+import { describe, expect, it } from "vitest";
+
+import { formatByteRate, formatBytes, formatBytesPair } from "../number";
+
+describe("formatBytes", () => {
+ it("returns bytes for small values", () => {
+ expect(formatBytes(0)).toBe("0.0 B");
+ expect(formatBytes(1)).toBe("1.0 B");
+ expect(formatBytes(1023)).toBe("1023.0 B");
+ });
+
+ it("scales binary units correctly", () => {
+ expect(formatBytes(1024)).toBe("1.0 KiB");
+ expect(formatBytes(1024 ** 2)).toBe("1.0 MiB");
+ expect(formatBytes(1024 ** 3)).toBe("1.0 GiB");
+ expect(formatBytes(1024 ** 4)).toBe("1.0 TiB");
+ });
+
+ it("scales decimal units when requested", () => {
+ expect(formatBytes(1000, { unit: "decimal" })).toBe("1.0 KB");
+ expect(formatBytes(1000 ** 2, { unit: "decimal" })).toBe("1.0 MB");
+ expect(formatBytes(1000 ** 3, { unit: "decimal" })).toBe("1.0 GB");
+ expect(formatBytes(1000 ** 4, { unit: "decimal" })).toBe("1.0 TB");
+ });
+
+ it("formats a typical storage value with one decimal", () => {
+ expect(formatBytes(985828802560)).toBe("918.1 GiB");
+ expect(formatBytes(985828802560, { unit: "decimal" })).toBe("985.8 GB");
+ });
+
+ it("caps at the largest unit to avoid overflow", () => {
+ expect(formatBytes(Number.MAX_SAFE_INTEGER)).toMatch(/PiB$/);
+ });
+
+ it("returns the zero value for negative or non-finite input", () => {
+ expect(formatBytes(-1)).toBe("0.0 B");
+ expect(formatBytes(Number.NaN)).toBe("0.0 B");
+ expect(formatBytes(Number.POSITIVE_INFINITY)).toBe("0.0 B");
+ });
+});
+
+describe("formatBytesPair", () => {
+ it("picks the unit of the larger total and applies it to both values", () => {
+ const { used, available } = formatBytesPair(985828802560, 2858736793190);
+ expect(used).toBe("0.9 TiB");
+ expect(available).toBe("2.6 TiB");
+ });
+
+ it("uses a smaller unit when both values fit in it", () => {
+ const { used, available } = formatBytesPair(1024 * 1024 * 100, 1024 * 1024 * 200);
+ expect(used).toBe("100.0 MiB");
+ expect(available).toBe("200.0 MiB");
+ });
+
+ it("falls back to zero when both inputs are invalid", () => {
+ const { used, available } = formatBytesPair(Number.NaN, -1);
+ expect(used).toBe("0.0 B");
+ expect(available).toBe("0.0 B");
+ });
+
+ it("uses the same unit across both values when one is invalid", () => {
+ const { used, available } = formatBytesPair(Number.NaN, 1024 ** 4);
+ expect(used).toBe("0.0 TiB");
+ expect(available).toBe("1.0 TiB");
+ });
+
+ it("honours the decimal unit option", () => {
+ const { used, available } = formatBytesPair(500_000_000_000, 1_500_000_000_000, { unit: "decimal" });
+ expect(used).toBe("0.5 TB");
+ expect(available).toBe("1.5 TB");
+ });
+});
+
+describe("formatByteRate", () => {
+ it("appends a /s suffix to the formatted value", () => {
+ expect(formatByteRate(0)).toBe("0.0 B/s");
+ expect(formatByteRate(1024)).toBe("1.0 KiB/s");
+ expect(formatByteRate(1024 ** 3)).toBe("1.0 GiB/s");
+ });
+
+ it("honours the decimal unit option", () => {
+ expect(formatByteRate(1000, { unit: "decimal" })).toBe("1.0 KB/s");
+ expect(formatByteRate(1000 ** 2, { unit: "decimal" })).toBe("1.0 MB/s");
+ });
+
+ it("returns zero for invalid input", () => {
+ expect(formatByteRate(-1)).toBe("0.0 B/s");
+ expect(formatByteRate(Number.NaN)).toBe("0.0 B/s");
+ });
+});
diff --git a/packages/definitions/src/integration.ts b/packages/definitions/src/integration.ts
index 138a1c9f7..211f0807b 100644
--- a/packages/definitions/src/integration.ts
+++ b/packages/definitions/src/integration.ts
@@ -379,7 +379,7 @@ export const integrationDefs = {
category: ["healthMonitoring"],
documentationUrl: createDocumentationLink("/docs/integrations/patchmon"),
defaultPort: 3413,
- apiKeySettingsPath: "/settings/api-keys",
+ apiKeySettingsPath: "/settings/integrations",
},
tracearr: {
name: "Tracearr",
diff --git a/packages/definitions/src/test/api-key-url.spec.ts b/packages/definitions/src/test/api-key-url.spec.ts
index 21b7e0fe7..4e70c75ca 100644
--- a/packages/definitions/src/test/api-key-url.spec.ts
+++ b/packages/definitions/src/test/api-key-url.spec.ts
@@ -15,6 +15,12 @@ describe("getIntegrationApiKeyUrl", () => {
);
});
+ it("builds URL for patchmon", () => {
+ expect(getIntegrationApiKeyUrl("http://patchmon.local:3413", "patchmon")).toBe(
+ "http://patchmon.local:3413/settings/integrations",
+ );
+ });
+
it("returns null for integrations without apiKeySettingsPath", () => {
expect(getIntegrationApiKeyUrl("http://localhost", "plex")).toBeNull();
});
diff --git a/packages/integrations/src/dashdot/dashdot-integration.ts b/packages/integrations/src/dashdot/dashdot-integration.ts
index 3c835a302..5d18b4422 100644
--- a/packages/integrations/src/dashdot/dashdot-integration.ts
+++ b/packages/integrations/src/dashdot/dashdot-integration.ts
@@ -1,5 +1,3 @@
-import { humanFileSize } from "@homarr/common";
-
import "@homarr/redis";
import dayjs from "dayjs";
@@ -48,7 +46,7 @@ export class DashDotIntegration extends Integration implements ISystemHealthMoni
.map((storage, index) => ({
deviceName: `Storage ${index + 1}: (${storage.disks.map((disk) => disk.device).join(", ")})`,
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- used: humanFileSize(storageLoad[index]!),
+ used: `${storageLoad[index]!}`,
available: storageLoad[index] ? `${storage.size - storageLoad[index]}` : `${storage.size}`,
percentage: storageLoad[index] ? (storageLoad[index] / storage.size) * 100 : 0,
})),
diff --git a/packages/integrations/src/download-client/qbittorrent/qbittorrent-integration.ts b/packages/integrations/src/download-client/qbittorrent/qbittorrent-integration.ts
index c08dd5848..edc071889 100644
--- a/packages/integrations/src/download-client/qbittorrent/qbittorrent-integration.ts
+++ b/packages/integrations/src/download-client/qbittorrent/qbittorrent-integration.ts
@@ -30,7 +30,7 @@ export class QBitTorrentIntegration extends Integration implements IDownloadClie
public async getClientJobsAndStatusAsync(input: { limit: number }): Promise {
const type = "torrent";
const client = await this.getClientAsync();
- const torrents = await client.listTorrents({ limit: input.limit });
+ const torrents = await client.listTorrents({ limit: input.limit, sort: "progress", reverse: false });
const rates = torrents.reduce(
({ down, up }, { dlspeed, upspeed }) => ({ down: down + dlspeed, up: up + upspeed }),
{ down: 0, up: 0 },
diff --git a/packages/integrations/src/unraid/unraid-integration.ts b/packages/integrations/src/unraid/unraid-integration.ts
index bf8e77d3b..c10aad89e 100644
--- a/packages/integrations/src/unraid/unraid-integration.ts
+++ b/packages/integrations/src/unraid/unraid-integration.ts
@@ -1,7 +1,6 @@
import dayjs from "dayjs";
import type { fetch as undiciFetch } from "undici/types/fetch";
-import { humanFileSize } from "@homarr/common";
import { ResponseError } from "@homarr/common/server";
import { fetchWithTrustedCertificatesAsync } from "@homarr/core/infrastructure/http";
import { createLogger } from "@homarr/core/infrastructure/logs";
@@ -59,7 +58,7 @@ export class UnraidIntegration extends Integration implements ISystemHealthMonit
cpuTemp: undefined, // Not implemented, see https://github.com/unraid/api/issues/1597
fileSystem: systemInfo.array.disks.map((disk) => ({
deviceName: disk.name,
- used: humanFileSize(disk.fsUsed * 1024), // API is in KiB (kibibytes), convert to bytes
+ used: `${disk.fsUsed * 1024}`, // API is in KiB (kibibytes), convert to bytes
available: `${(disk.size - disk.fsUsed) * 1024}`, // free space left on the disk, API is in KiB (kibibytes)
percentage: (disk.fsUsed / disk.size) * 100, // The units are the same, therefore the actual unit is irrelevant
})),
diff --git a/packages/translation/src/lang/en.json b/packages/translation/src/lang/en.json
index c35938619..7162c80f2 100644
--- a/packages/translation/src/lang/en.json
+++ b/packages/translation/src/lang/en.json
@@ -2156,6 +2156,8 @@
"clear": "Clear formatting",
"heading": "Heading {level}",
"align": "Align text: {position}",
+ "directionLtr": "Set text direction left to right",
+ "directionRtl": "Set text direction right to left",
"blockquote": "Blockquote",
"horizontalLine": "Horizontal line",
"bulletList": "Bullet list",
@@ -5428,6 +5430,9 @@
"title": "Containers",
"table": {
"updated": "Updated {when}",
+ "refresh": {
+ "lastUpdated": "Last refresh {when}"
+ },
"search": "Seach {count} containers",
"selected": "{selectCount} of {totalCount} containers selected",
"footer": "Total {count} containers",
diff --git a/packages/widgets/src/archive-team-warrior/component.tsx b/packages/widgets/src/archive-team-warrior/component.tsx
index 032858c2f..5ac03eadc 100644
--- a/packages/widgets/src/archive-team-warrior/component.tsx
+++ b/packages/widgets/src/archive-team-warrior/component.tsx
@@ -3,7 +3,7 @@
import { Avatar, Badge, Card, Group, SimpleGrid, Stack, Text } from "@mantine/core";
import { clientApi } from "@homarr/api/client";
-import { humanFileSize } from "@homarr/common";
+import { formatByteRate } from "@homarr/common";
import { getIconUrl } from "@homarr/definitions";
import type { WidgetComponentProps } from "../definition";
@@ -84,4 +84,4 @@ const Metric = ({ label, value }: { label: string; value: number | string }) =>
);
-const formatBandwidth = (value?: number) => humanFileSize(Math.round(value ?? 0), "/s");
+const formatBandwidth = (value?: number) => formatByteRate(Math.round(value ?? 0));
diff --git a/packages/widgets/src/docker/component.tsx b/packages/widgets/src/docker/component.tsx
index 42db221a2..bbd961c1d 100644
--- a/packages/widgets/src/docker/component.tsx
+++ b/packages/widgets/src/docker/component.tsx
@@ -3,13 +3,13 @@
import { useMemo } from "react";
import { ActionIcon, Avatar, Badge, Center, Group, Stack, Text, Tooltip } from "@mantine/core";
import type { IconProps } from "@tabler/icons-react";
-import { IconBrandDocker, IconPlayerPlay, IconPlayerStop, IconRotateClockwise } from "@tabler/icons-react";
+import { IconBrandDocker, IconPlayerPlay, IconPlayerStop, IconRefresh, IconRotateClockwise } from "@tabler/icons-react";
import type { MRT_ColumnDef, MRT_VisibilityState } from "mantine-react-table";
import { MantineReactTable } from "mantine-react-table";
import type { RouterOutputs } from "@homarr/api";
import { clientApi } from "@homarr/api/client";
-import { humanFileSize, useTimeAgo } from "@homarr/common";
+import { formatBytes, useTimeAgo } from "@homarr/common";
import type { ContainerState } from "@homarr/docker";
import { containerStateColorMap, cpuUsageColor, memoryUsageColor, safeValue } from "@homarr/docker/shared";
import { showErrorNotification, showSuccessNotification } from "@homarr/notifications";
@@ -110,7 +110,7 @@ const createColumns = (
return (
- {humanFileSize(bytesUsage)}
+ {formatBytes(bytesUsage)}
);
},
@@ -184,7 +184,11 @@ export default function DockerWidget({ options, width, isEditMode }: WidgetCompo
const t = useScopedI18n("docker");
const isTiny = width <= 256;
- const { data } = clientApi.docker.getContainers.useQuery(undefined, {
+ const {
+ data,
+ refetch,
+ isFetching,
+ } = clientApi.docker.getContainers.useQuery(undefined, {
refetchInterval: 30_000,
});
const containers = data?.containers ?? [];
@@ -297,12 +301,23 @@ export default function DockerWidget({ options, width, isEditMode }: WidgetCompo
- {t("table.totalMemory", { memory: humanFileSize(totals.memory) })}
+ {t("table.totalMemory", { memory: formatBytes(totals.memory) })}
-
- {t("table.updated", { when: relativeTime })}
-
+
+ void refetch()}
+ aria-label={t("table.refresh.lastUpdated", { when: relativeTime })}
+ >
+
+
+
)}
diff --git a/packages/widgets/src/docker/index.ts b/packages/widgets/src/docker/index.ts
index 76cdb97f3..4a988c779 100644
--- a/packages/widgets/src/docker/index.ts
+++ b/packages/widgets/src/docker/index.ts
@@ -25,6 +25,7 @@ const columnTranslationKeyMap = {
export const { definition, componentLoader } = createWidgetDefinition("dockerContainers", {
icon: IconBrandDocker,
+ queryKey: [["docker", "getContainers"]],
createOptions() {
return optionsBuilder.from((factory) => ({
columns: factory.multiSelect({
diff --git a/packages/widgets/src/downloads/component.tsx b/packages/widgets/src/downloads/component.tsx
index 0edfb9ba5..ff9b71664 100644
--- a/packages/widgets/src/downloads/component.tsx
+++ b/packages/widgets/src/downloads/component.tsx
@@ -43,7 +43,7 @@ import { MantineReactTable, useMantineReactTable } from "mantine-react-table";
import { clientApi } from "@homarr/api/client";
import { useIntegrationsWithInteractAccess } from "@homarr/auth/client";
-import { humanFileSize, useIntegrationConnected } from "@homarr/common";
+import { formatByteRate, formatBytes, useIntegrationConnected } from "@homarr/common";
import { getIconUrl, getIntegrationKindsByCategory } from "@homarr/definitions";
import type { ExtendedClientStatus, ExtendedDownloadClientItem } from "@homarr/integrations";
import { useScopedI18n } from "@homarr/translation/client";
@@ -386,7 +386,7 @@ export default function DownloadClientsWidget({
sortUndefined: "last",
Cell: ({ cell }) => {
const downSpeed = cell.getValue();
- return downSpeed ? {humanFileSize(downSpeed, "/s")} : null;
+ return downSpeed ? {formatByteRate(downSpeed)} : null;
},
},
{
@@ -466,7 +466,7 @@ export default function DownloadClientsWidget({
...columnsDefBase({ key: "received", showHeader: true }),
Cell: ({ cell }) => {
const received = cell.getValue();
- return {humanFileSize(received)} ;
+ return {formatBytes(received)} ;
},
},
{
@@ -474,14 +474,14 @@ export default function DownloadClientsWidget({
sortUndefined: "last",
Cell: ({ cell }) => {
const sent = cell.getValue();
- return sent && {humanFileSize(sent)} ;
+ return sent && {formatBytes(sent)} ;
},
},
{
...columnsDefBase({ key: "size", showHeader: true }),
Cell: ({ cell }) => {
const size = cell.getValue();
- return {humanFileSize(size)} ;
+ return {formatBytes(size)} ;
},
},
{
@@ -521,7 +521,7 @@ export default function DownloadClientsWidget({
sortUndefined: "last",
Cell: ({ cell }) => {
const upSpeed = cell.getValue();
- return upSpeed && {humanFileSize(upSpeed, "/s")} ;
+ return upSpeed && {formatByteRate(upSpeed)} ;
},
},
],
@@ -669,21 +669,21 @@ const ItemInfoModal = ({ items, currentIndex, opened, onClose }: ItemInfoModalPr
{item.type !== "miscellaneous" && (
)}
{item.type !== "miscellaneous" && (
-
+
)}
-
-
+
+
interact);
- const totalSpeed = humanFileSize(
- clients.reduce((count, { status }) => count + (status?.rates.down ?? 0), 0),
- "/s",
- );
+ const totalSpeed = formatByteRate(clients.reduce((count, { status }) => count + (status?.rates.down ?? 0), 0));
const utils = clientApi.useUtils();
const invalidateDownloads = { onSettled: () => void utils.widget.downloads.getJobsAndStatuses.invalidate() };
@@ -849,21 +846,21 @@ const ClientsControl = ({ clients, filters, setFilters, availableStatuses }: Cli
{client.status.rates.up !== undefined ? (
- {`↑ ${humanFileSize(client.status.rates.up, "/s")}`}
+ {`↑ ${formatByteRate(client.status.rates.up)}`}
{"-"}
- {humanFileSize(client.status.totalUp ?? 0)}
+ {formatBytes(client.status.totalUp ?? 0)}
) : undefined}
- {`↓ ${humanFileSize(client.status.rates.down, "/s")}`}
+ {`↓ ${formatByteRate(client.status.rates.down)}`}
{"-"}
- {humanFileSize(Math.floor(client.status.totalDown ?? 0))}
+ {formatBytes(Math.floor(client.status.totalDown ?? 0))}
diff --git a/packages/widgets/src/health-monitoring/cluster/resource-popover.tsx b/packages/widgets/src/health-monitoring/cluster/resource-popover.tsx
index eae3e3b30..606596342 100644
--- a/packages/widgets/src/health-monitoring/cluster/resource-popover.tsx
+++ b/packages/widgets/src/health-monitoring/cluster/resource-popover.tsx
@@ -16,7 +16,7 @@ import {
import dayjs from "dayjs";
import duration from "dayjs/plugin/duration";
-import { capitalize, humanFileSize } from "@homarr/common";
+import { capitalize, formatBytes, formatBytesPair } from "@homarr/common";
import type { ComputeResource, Resource, StorageResource } from "@homarr/integrations/types";
import { useScopedI18n } from "@homarr/translation/client";
@@ -93,16 +93,18 @@ const RightSection = ({ label, value }: RightSectionProps) => {
const ComputeResourceDetails = ({ item }: { item: ComputeResource }) => {
const t = useScopedI18n("widget.healthMonitoring.cluster.popover.detail");
+ const memory = formatBytesPair(item.memory.used, item.memory.total);
+ const storage = formatBytesPair(item.storage.used, item.storage.total);
return (
}>
{t("cpu")} - {item.cpu.cores}
}>
- {t("memory")} - {humanFileSize(item.memory.used)} / {humanFileSize(item.memory.total)}
+ {t("memory")} - {memory.used} / {memory.available}
}>
- {t("storage")} - {humanFileSize(item.storage.used)} / {humanFileSize(item.storage.total)}
+ {t("storage")} - {storage.used} / {storage.available}
}>
{t("uptime")} - {dayjs(dayjs().add(-item.uptime, "seconds")).fromNow(true)}
@@ -121,6 +123,7 @@ const ComputeResourceDetails = ({ item }: { item: ComputeResource }) => {
const StorageResourceDetails = ({ item }: { item: StorageResource }) => {
const t = useScopedI18n("widget.healthMonitoring.cluster.popover.detail");
const storagePercent = item.total ? (item.used / item.total) * 100 : 0;
+ const storage = formatBytesPair(item.used, item.total);
return (
@@ -133,7 +136,7 @@ const StorageResourceDetails = ({ item }: { item: StorageResource }) => {
/>
- {t("storage")} - {humanFileSize(item.used)} / {humanFileSize(item.total)}
+ {t("storage")} - {storage.used} / {storage.available}
@@ -152,11 +155,11 @@ const DiskStats = ({ item }: { item: ComputeResource }) => {
}>
- {humanFileSize(item.storage.write)}
+ {formatBytes(item.storage.write)}
- {humanFileSize(item.storage.read)}
+ {formatBytes(item.storage.read)}
@@ -172,11 +175,11 @@ const NetStats = ({ item }: { item: ComputeResource }) => {
}>
- {humanFileSize(item.network.in)}
+ {formatBytes(item.network.in)}
- {humanFileSize(item.network.out)}
+ {formatBytes(item.network.out)}
diff --git a/packages/widgets/src/health-monitoring/system-health.tsx b/packages/widgets/src/health-monitoring/system-health.tsx
index 3119adead..3614a570c 100644
--- a/packages/widgets/src/health-monitoring/system-health.tsx
+++ b/packages/widgets/src/health-monitoring/system-health.tsx
@@ -32,7 +32,7 @@ import duration from "dayjs/plugin/duration";
import { clientApi } from "@homarr/api/client";
import { useRequiredBoard } from "@homarr/boards/context";
-import { humanFileSize } from "@homarr/common";
+import { formatBytes } from "@homarr/common";
import type { TranslationFunction } from "@homarr/translation";
import { useI18n } from "@homarr/translation/client";
@@ -277,7 +277,7 @@ export const progressColor = (percentage: number) => {
// them (e.g. Unraid, dashdot). Format the former and pass the latter through untouched.
const formatFileSize = (value: string) => {
const bytes = Number(value);
- return Number.isFinite(bytes) ? humanFileSize(Math.round(bytes)) : value;
+ return Number.isFinite(bytes) ? formatBytes(Math.round(bytes)) : value;
};
interface FileSystem {
diff --git a/packages/widgets/src/immich/server-stats/component.tsx b/packages/widgets/src/immich/server-stats/component.tsx
index 919b0caf0..3b82499f7 100644
--- a/packages/widgets/src/immich/server-stats/component.tsx
+++ b/packages/widgets/src/immich/server-stats/component.tsx
@@ -5,7 +5,7 @@ import { Group, Stack, Text } from "@mantine/core";
import { IconDatabase, IconPhoto, IconUsers, IconVideo } from "@tabler/icons-react";
import { clientApi } from "@homarr/api/client";
-import { humanFileSize } from "@homarr/common";
+import { formatBytes } from "@homarr/common";
import { useI18n } from "@homarr/translation/client";
import { WidgetEmptyState } from "../../common/empty-state";
@@ -46,7 +46,7 @@ export default function ImmichServerStatsWidget({
}
label={t("widget.immich-serverStats.storage")}
- value={humanFileSize(stats.totalLibraryUsageInBytes)}
+ value={formatBytes(stats.totalLibraryUsageInBytes)}
/>
)}
diff --git a/packages/widgets/src/media-transcoding/panels/queue.panel.tsx b/packages/widgets/src/media-transcoding/panels/queue.panel.tsx
index 99e8e9e2a..ec4bb6614 100644
--- a/packages/widgets/src/media-transcoding/panels/queue.panel.tsx
+++ b/packages/widgets/src/media-transcoding/panels/queue.panel.tsx
@@ -14,7 +14,7 @@ import {
} from "@mantine/core";
import { IconHeartbeat, IconTransform } from "@tabler/icons-react";
-import { humanFileSize } from "@homarr/common";
+import { formatBytes } from "@homarr/common";
import type { TdarrQueue } from "@homarr/integrations";
import { useI18n } from "@homarr/translation/client";
@@ -72,7 +72,7 @@ export function QueuePanel(props: QueuePanelProps) {
- {humanFileSize(item.fileSize)}
+ {formatBytes(item.fileSize)}
))}
diff --git a/packages/widgets/src/media-transcoding/panels/statistics.panel.tsx b/packages/widgets/src/media-transcoding/panels/statistics.panel.tsx
index af7c4b15b..c09647138 100644
--- a/packages/widgets/src/media-transcoding/panels/statistics.panel.tsx
+++ b/packages/widgets/src/media-transcoding/panels/statistics.panel.tsx
@@ -3,7 +3,7 @@ import { Card, Center, Group, RingProgress, ScrollArea, Stack, Text, Title, Tool
import { IconDatabaseHeart, IconFileDescription, IconHeartbeat, IconTransform } from "@tabler/icons-react";
import { useRequiredBoard } from "@homarr/boards/context";
-import { humanFileSize } from "@homarr/common";
+import { formatBytes } from "@homarr/common";
import type { TdarrPieSegment, TdarrStatistics } from "@homarr/integrations";
import { useI18n } from "@homarr/translation/client";
import type { TablerIcon } from "@homarr/ui";
@@ -41,7 +41,7 @@ export function StatisticsPanel(props: StatisticsPanelProps) {
diff --git a/packages/widgets/src/notebook/notebook.tsx b/packages/widgets/src/notebook/notebook.tsx
index 229b3730a..9fdd692fb 100644
--- a/packages/widgets/src/notebook/notebook.tsx
+++ b/packages/widgets/src/notebook/notebook.tsx
@@ -39,6 +39,8 @@ import {
IconRowRemove,
IconTableOff,
IconTablePlus,
+ IconTextDirectionLtr,
+ IconTextDirectionRtl,
IconX,
} from "@tabler/icons-react";
import { Color } from "@tiptap/extension-color";
@@ -66,6 +68,7 @@ import { useI18n, useScopedI18n } from "@homarr/translation/client";
import type { TablerIcon } from "@homarr/ui";
import type { WidgetComponentProps } from "../definition";
+import { NotebookTextDirection, setTextDirection } from "./text-direction";
import "@mantine/tiptap/styles.css";
import "./notebook.css";
@@ -171,6 +174,7 @@ export function Notebook({ options, setOptions, isEditMode, boardId, itemId }: W
}),
TaskList.configure({ itemTypeName: "taskItem" }),
TextAlign.configure({ types: ["heading", "paragraph"] }),
+ NotebookTextDirection,
TextStyle,
],
shouldRerenderOnTransaction: true,
@@ -347,6 +351,22 @@ export function Notebook({ options, setOptions, isEditMode, boardId, itemId }: W
position: t("widget.notebook.align.right"),
})}
/>
+ editor && setTextDirection(editor, "ltr").run()}
+ >
+
+
+ editor && setTextDirection(editor, "rtl").run()}
+ >
+
+
diff --git a/packages/widgets/src/notebook/text-direction.spec.ts b/packages/widgets/src/notebook/text-direction.spec.ts
new file mode 100644
index 000000000..62b0313df
--- /dev/null
+++ b/packages/widgets/src/notebook/text-direction.spec.ts
@@ -0,0 +1,34 @@
+import { Editor } from "@tiptap/react";
+import { StarterKit } from "@tiptap/starter-kit";
+import { describe, expect, it } from "vitest";
+
+import { NotebookTextDirection, setTextDirection } from "./text-direction";
+
+describe("notebook text direction", () => {
+ it("persists right-to-left direction in the notebook HTML", () => {
+ const editor = new Editor({
+ content: "יש לי 16GB
",
+ extensions: [StarterKit, NotebookTextDirection],
+ });
+
+ setTextDirection(editor, "rtl").run();
+
+ expect(editor.getHTML()).toBe('יש לי 16GB
');
+ editor.destroy();
+ });
+
+ it("reads and changes an existing direction attribute", () => {
+ const editor = new Editor({
+ content: 'Heading ',
+ extensions: [StarterKit, NotebookTextDirection],
+ });
+
+ expect(editor.getHTML()).toBe('Heading ');
+
+ editor.commands.setTextSelection(1);
+ setTextDirection(editor, "ltr").run();
+
+ expect(editor.getHTML()).toContain('Heading ');
+ editor.destroy();
+ });
+});
diff --git a/packages/widgets/src/notebook/text-direction.ts b/packages/widgets/src/notebook/text-direction.ts
new file mode 100644
index 000000000..7ab9ea022
--- /dev/null
+++ b/packages/widgets/src/notebook/text-direction.ts
@@ -0,0 +1,28 @@
+import { Extension } from "@tiptap/react";
+import type { Editor } from "@tiptap/react";
+
+export type TextDirection = "ltr" | "rtl";
+
+export const NotebookTextDirection = Extension.create({
+ name: "notebookTextDirection",
+
+ addGlobalAttributes() {
+ return [
+ {
+ types: ["heading", "paragraph"],
+ attributes: {
+ dir: {
+ default: null,
+ parseHTML: (element) => element.getAttribute("dir"),
+ renderHTML: ({ dir }: { dir?: TextDirection }) => (dir ? { dir } : {}),
+ },
+ },
+ },
+ ];
+ },
+});
+
+export function setTextDirection(editor: Editor, direction: TextDirection) {
+ const nodeType = editor.isActive("heading") ? "heading" : "paragraph";
+ return editor.chain().focus().updateAttributes(nodeType, { dir: direction });
+}
diff --git a/packages/widgets/src/system-disks/component.tsx b/packages/widgets/src/system-disks/component.tsx
index cabc03ba5..5f84dd0b4 100644
--- a/packages/widgets/src/system-disks/component.tsx
+++ b/packages/widgets/src/system-disks/component.tsx
@@ -5,7 +5,7 @@ import { Box, Card, Group, Stack, Tooltip, useMantineColorScheme } from "@mantin
import { clientApi } from "@homarr/api/client";
import { useRequiredBoard } from "@homarr/boards/context";
-import { humanFileSize } from "@homarr/common";
+import { formatBytesPair } from "@homarr/common";
import { useI18n } from "@homarr/translation/client";
import { WidgetEmptyState } from "../common/empty-state";
@@ -20,11 +20,13 @@ const getDisplayText = (item: { used: string; available: string; percentage: num
case "percentage":
return `${Math.round(item.percentage)}%`;
case "absolute": {
+ const usedInBytes = Number(item.used);
const availableInBytes = Number(item.available);
- const availableText = Number.isFinite(availableInBytes)
- ? humanFileSize(Math.round(availableInBytes))
- : item.available;
- return `${item.used} / ${availableText}`;
+ if (Number.isFinite(usedInBytes) && Number.isFinite(availableInBytes)) {
+ const { used, available } = formatBytesPair(usedInBytes, availableInBytes);
+ return `${used} / ${available}`;
+ }
+ return `${item.used} / ${item.available}`;
}
case "free":
return `${Math.round(100 - item.percentage)}% free`;
@@ -130,16 +132,8 @@ export default function SystemResources({ integrationIds, options }: WidgetCompo
throw new NoIntegrationDataError();
}
- const fileSystem = filterStorageVolumes(
- rawFileSystem,
- options.visibleStorageVolumes,
- lastItem.integrationId,
- );
- const smart = filterStorageVolumes(
- lastItem.healthInfo.smart,
- options.visibleStorageVolumes,
- lastItem.integrationId,
- );
+ const fileSystem = filterStorageVolumes(rawFileSystem, options.visibleStorageVolumes, lastItem.integrationId);
+ const smart = filterStorageVolumes(lastItem.healthInfo.smart, options.visibleStorageVolumes, lastItem.integrationId);
if (fileSystem.length === 0) return ;
diff --git a/packages/widgets/src/system-resources/chart/combined-network-traffic.tsx b/packages/widgets/src/system-resources/chart/combined-network-traffic.tsx
index 20b01bb58..ffe576e6c 100644
--- a/packages/widgets/src/system-resources/chart/combined-network-traffic.tsx
+++ b/packages/widgets/src/system-resources/chart/combined-network-traffic.tsx
@@ -1,7 +1,7 @@
import { Box, Group, Paper, Stack, Text } from "@mantine/core";
import { IconNetwork } from "@tabler/icons-react";
-import { humanFileSize } from "@homarr/common";
+import { formatByteRate } from "@homarr/common";
import { useScopedI18n } from "@homarr/translation/client";
import type { LabelDisplayModeOption } from "..";
@@ -47,7 +47,7 @@ export const CombinedNetworkTrafficChart = ({
{payloadData.value === undefined ? (
<>N/A>
) : (
- <>{humanFileSize(Math.round(Number(payloadData.value)))}/s>
+ formatByteRate(Math.round(Number(payloadData.value)))
)}
diff --git a/packages/widgets/src/system-resources/chart/memory-chart.tsx b/packages/widgets/src/system-resources/chart/memory-chart.tsx
index 9de519199..b49ea81be 100644
--- a/packages/widgets/src/system-resources/chart/memory-chart.tsx
+++ b/packages/widgets/src/system-resources/chart/memory-chart.tsx
@@ -1,7 +1,7 @@
import { Paper, Text } from "@mantine/core";
import { IconBrain } from "@tabler/icons-react";
-import { humanFileSize } from "@homarr/common";
+import { formatBytesPair } from "@homarr/common";
import { useScopedI18n } from "@homarr/translation/client";
import type { LabelDisplayModeOption } from "..";
@@ -41,11 +41,11 @@ export const SystemResourceMemoryChart = ({
tooltipProps={{
content: ({ payload }) => {
const value = payload[0] ? Number(payload[0].value) : 0;
+ const memory = formatBytesPair(Math.round(value), totalCapacityInBytes);
return (
- {humanFileSize(Math.round(value))} / {humanFileSize(totalCapacityInBytes)} (
- {Math.round((value / totalCapacityInBytes) * 100)}%)
+ {memory.used} / {memory.available} ({Math.round((value / totalCapacityInBytes) * 100)}%)
);
diff --git a/packages/widgets/src/system-resources/chart/network-traffic.tsx b/packages/widgets/src/system-resources/chart/network-traffic.tsx
index 9dd0b6d04..fc3b644b6 100644
--- a/packages/widgets/src/system-resources/chart/network-traffic.tsx
+++ b/packages/widgets/src/system-resources/chart/network-traffic.tsx
@@ -1,7 +1,7 @@
import { Paper, Text } from "@mantine/core";
import { IconArrowDown, IconArrowUp } from "@tabler/icons-react";
-import { humanFileSize } from "@homarr/common";
+import { formatByteRate } from "@homarr/common";
import { useScopedI18n } from "@homarr/translation/client";
import type { LabelDisplayModeOption } from "..";
@@ -32,7 +32,7 @@ export const NetworkTrafficChart = ({
title={isUp ? t("up") : t("down")}
icon={isUp ? IconArrowUp : IconArrowDown}
yAxisProps={{ domain: [0, upperBound] }}
- lastValue={`${humanFileSize(Math.round(max))}/s`}
+ lastValue={formatByteRate(Math.round(max))}
chartType={hasShadow ? "area" : "line"}
labelDisplayMode={labelDisplayMode}
tooltipProps={{
@@ -41,7 +41,7 @@ export const NetworkTrafficChart = ({
return (
- {humanFileSize(Math.round(value))}/s
+ {formatByteRate(Math.round(value))}
);
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index c036e281f..34815431a 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -118,8 +118,8 @@ catalogs:
specifier: ^1.61.1
version: 1.61.1
'@scalar/api-reference-react':
- specifier: ^0.9.51
- version: 0.9.52
+ specifier: ^0.9.54
+ version: 0.9.54
'@semantic-release/changelog':
specifier: ^6.0.3
version: 6.0.3
@@ -169,53 +169,53 @@ catalogs:
specifier: ^12.0.4
version: 12.0.4
'@tiptap/extension-color':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-highlight':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-image':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-link':
- specifier: ^3.27.1
- version: 3.27.1
+ specifier: ^3.27.3
+ version: 3.27.3
'@tiptap/extension-placeholder':
- specifier: ^3.27.1
- version: 3.27.1
+ specifier: ^3.27.3
+ version: 3.27.3
'@tiptap/extension-table':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-table-cell':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-table-header':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-table-row':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-task-item':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-task-list':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-text-align':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-text-style':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/extension-underline':
- specifier: 3.27.1
- version: 3.27.1
+ specifier: 3.27.3
+ version: 3.27.3
'@tiptap/react':
- specifier: ^3.27.1
- version: 3.27.1
+ specifier: ^3.27.3
+ version: 3.27.3
'@tiptap/starter-kit':
- specifier: ^3.27.1
- version: 3.27.1
+ specifier: ^3.27.3
+ version: 3.27.3
'@trpc/client':
specifier: ^11.18.0
version: 11.18.0
@@ -232,8 +232,8 @@ catalogs:
specifier: ^11.18.0
version: 11.18.0
'@turbo/gen':
- specifier: ^2.10.2
- version: 2.10.2
+ specifier: ^2.10.4
+ version: 2.10.4
'@types/adm-zip':
specifier: 0.5.8
version: 0.5.8
@@ -259,8 +259,8 @@ catalogs:
specifier: ^4.0.1
version: 4.0.1
'@types/node':
- specifier: ^24.13.2
- version: 24.13.2
+ specifier: ^24.13.3
+ version: 24.13.3
'@types/node-unifi':
specifier: ^2.5.1
version: 2.5.1
@@ -457,8 +457,8 @@ catalogs:
specifier: ^5.0.5
version: 5.0.5
oxfmt:
- specifier: ^0.57.0
- version: 0.57.0
+ specifier: ^0.58.0
+ version: 0.58.0
oxlint:
specifier: ^1.72.0
version: 1.72.0
@@ -469,8 +469,8 @@ catalogs:
specifier: ^1.18.0
version: 1.18.0
posthog-js:
- specifier: ^1.396.4
- version: 1.396.5
+ specifier: ^1.398.2
+ version: 1.399.0
posthog-node:
specifier: ^5.39.2
version: 5.39.4
@@ -538,8 +538,8 @@ catalogs:
specifier: 4.20.4
version: 4.20.4
turbo:
- specifier: ^2.10.2
- version: 2.10.2
+ specifier: ^2.10.4
+ version: 2.10.4
typescript:
specifier: ^6.0.3
version: 6.0.3
@@ -591,7 +591,7 @@ overrides:
brace-expansion@>=1.0.0 <=1.1.11: '>=5.0.7'
esbuild@<=0.24.2: '>=0.28.1'
form-data@>=4.0.0 <4.0.4: '>=4.0.6'
- hono@<4.6.5: '>=4.12.27'
+ hono@<4.6.5: '>=4.12.28'
linkifyjs@<4.3.2: '>=4.3.3'
nanoid@>=4.0.0 <5.0.9: '>=5.1.16'
prismjs@<1.30.0: '>=1.30.0'
@@ -642,7 +642,7 @@ importers:
version: 12.0.4
'@turbo/gen':
specifier: 'catalog:'
- version: 2.10.2(@types/node@24.13.2)
+ version: 2.10.4(@types/node@24.13.3)
'@vitejs/plugin-react':
specifier: 'catalog:'
version: 6.0.3(babel-plugin-react-compiler@1.0.0)(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
@@ -666,7 +666,7 @@ importers:
version: 2.2.3
oxfmt:
specifier: 'catalog:'
- version: 0.57.0
+ version: 0.58.0
oxlint:
specifier: 'catalog:'
version: 1.72.0
@@ -678,7 +678,7 @@ importers:
version: 12.0.4
turbo:
specifier: 'catalog:'
- version: 2.10.2
+ version: 2.10.4
typescript:
specifier: 'catalog:'
version: 6.0.3
@@ -690,7 +690,7 @@ importers:
version: 6.1.1(typescript@6.0.3)(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
vitest:
specifier: 'catalog:'
- version: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.2)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
+ version: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
apps/docs:
dependencies:
@@ -726,7 +726,7 @@ importers:
version: 0.99.0(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
'@scalar/api-reference-react':
specifier: 'catalog:'
- version: 0.9.52(nprogress@0.2.0)(react@19.2.7)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)
+ version: 0.9.54(nprogress@0.2.0)(react@19.2.7)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)
'@signalwire/docusaurus-plugin-llms-txt':
specifier: ^1.2.2
version: 1.2.2(@docusaurus/core@3.10.1(@docusaurus/faster@3.10.1(@docusaurus/types@3.10.1(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.28.1)(postcss@8.5.16)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@swc/helpers@0.5.15)(esbuild@0.28.1)(postcss@8.5.16))(@mdx-js/react@3.1.1(@types/react@19.2.17)(react@19.2.7))(@rspack/core@1.7.11(@swc/helpers@0.5.15))(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.28.1)(postcss@8.5.16)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@6.0.3))
@@ -767,8 +767,8 @@ importers:
specifier: 'catalog:'
version: 19.2.7(react@19.2.7)
swiper:
- specifier: ^14.0.1
- version: 14.0.1
+ specifier: ^14.0.2
+ version: 14.0.2
tailwindcss:
specifier: ^4.3.2
version: 4.3.2
@@ -952,13 +952,13 @@ importers:
version: 9.4.1(@mantine/core@9.4.1(@mantine/hooks@9.4.1(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@mantine/hooks@9.4.1(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
'@mantine/tiptap':
specifier: 'catalog:'
- version: 9.4.1(@mantine/core@9.4.1(@mantine/hooks@9.4.1(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@mantine/hooks@9.4.1(react@19.2.7))(@tiptap/extension-link@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))(@tiptap/react@3.27.1(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
+ version: 9.4.1(@mantine/core@9.4.1(@mantine/hooks@9.4.1(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@mantine/hooks@9.4.1(react@19.2.7))(@tiptap/extension-link@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))(@tiptap/react@3.27.3(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
'@modelcontextprotocol/sdk':
specifier: 'catalog:'
version: 1.29.0(zod@4.4.3)
'@scalar/api-reference-react':
specifier: 'catalog:'
- version: 0.9.52(nprogress@0.2.0)(react@19.2.7)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)
+ version: 0.9.54(nprogress@0.2.0)(react@19.2.7)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)
'@tabler/icons-react':
specifier: 'catalog:'
version: 3.44.0(react@19.2.7)
@@ -1024,7 +1024,7 @@ importers:
version: 17.4.2
drizzle-orm:
specifier: 'catalog:'
- version: 0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1)
+ version: 0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1)
flag-icons:
specifier: 'catalog:'
version: 7.5.0
@@ -1060,7 +1060,7 @@ importers:
version: 1.18.0(postcss@8.5.16)
posthog-js:
specifier: 'catalog:'
- version: 1.396.5
+ version: 1.399.0(preact-render-to-string@6.5.11)
prismjs:
specifier: 'catalog:'
version: 1.30.0
@@ -1087,7 +1087,7 @@ importers:
version: 2.2.6
trpc-to-mcp:
specifier: 'catalog:'
- version: 1.3.2(@trpc/server@11.18.0(typescript@6.0.3))(better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.2))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)))(mcp-handler@1.1.0(@modelcontextprotocol/sdk@1.29.0(zod@4.4.3))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)))(zod@4.4.3)
+ version: 1.3.2(@trpc/server@11.18.0(typescript@6.0.3))(better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.3))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)))(mcp-handler@1.1.0(@modelcontextprotocol/sdk@1.29.0(zod@4.4.3))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)))(zod@4.4.3)
use-deep-compare-effect:
specifier: 'catalog:'
version: 1.8.1(react@19.2.7)
@@ -1112,7 +1112,7 @@ importers:
version: 3.1.2
'@types/node':
specifier: 'catalog:'
- version: 24.13.2
+ version: 24.13.3
'@types/prismjs':
specifier: 'catalog:'
version: 1.26.6
@@ -1206,7 +1206,7 @@ importers:
version: link:../../tooling/typescript
'@types/node':
specifier: 'catalog:'
- version: 24.13.2
+ version: 24.13.3
dotenv-cli:
specifier: 'catalog:'
version: 11.0.0
@@ -1394,7 +1394,7 @@ importers:
version: 2.2.6
trpc-to-mcp:
specifier: 'catalog:'
- version: 1.3.2(@trpc/server@11.18.0(typescript@6.0.3))(better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.2))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)))(mcp-handler@1.1.0(@modelcontextprotocol/sdk@1.26.0(zod@4.4.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)))(zod@4.4.3)
+ version: 1.3.2(@trpc/server@11.18.0(typescript@6.0.3))(better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)))(mcp-handler@1.1.0(@modelcontextprotocol/sdk@1.26.0(zod@4.4.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)))(zod@4.4.3)
trpc-to-openapi:
specifier: 'catalog:'
version: 3.3.0(patch_hash=2ca3c16af0fcca0c736697ad4fe553a14f794524fa9ce0d5c3e8ee4aea76090c)(@trpc/server@11.18.0(typescript@6.0.3))(zod-openapi@5.3.0(zod@4.4.3))(zod@4.4.3)
@@ -2731,52 +2731,52 @@ importers:
version: 3.44.0(react@19.2.7)
'@tiptap/extension-color':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/extension-text-style@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1)))
+ version: 3.27.3(@tiptap/extension-text-style@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3)))
'@tiptap/extension-highlight':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
'@tiptap/extension-image':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
'@tiptap/extension-link':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ version: 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
'@tiptap/extension-placeholder':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/extensions@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/extensions@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
'@tiptap/extension-table':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ version: 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
'@tiptap/extension-table-cell':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/extension-table@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/extension-table@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
'@tiptap/extension-table-header':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/extension-table@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/extension-table@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
'@tiptap/extension-table-row':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/extension-table@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/extension-table@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
'@tiptap/extension-task-item':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
'@tiptap/extension-task-list':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
'@tiptap/extension-text-align':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
'@tiptap/extension-text-style':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
'@tiptap/extension-underline':
specifier: 'catalog:'
- version: 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
+ version: 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
'@tiptap/react':
specifier: 'catalog:'
- version: 3.27.1(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
+ version: 3.27.3(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
'@tiptap/starter-kit':
specifier: 'catalog:'
- version: 3.27.1
+ version: 3.27.3
acorn:
specifier: 'catalog:'
version: 8.16.0
@@ -5156,7 +5156,7 @@ packages:
resolution: {integrity: sha512-GwtvgtXxnWsucXvbQXkRgqksiH2Qed37H9xHZocE5sA3N8O8O8/8FA3uclQXxXVzc9XBZuEOMK7+r02FmSpHtw==}
engines: {node: '>=18.14.1'}
peerDependencies:
- hono: '>=4.12.27'
+ hono: '>=4.12.28'
'@iconify/types@2.0.0':
resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
@@ -6141,124 +6141,124 @@ packages:
'@oxc-project/types@0.138.0':
resolution: {integrity: sha512-1a7ZKmrRTCoN1XMZ4L0PyyqrMnrNlLyPuOkdSX2MZg7IiIGRUyurNhAm73ptDOraoBcIordsIGKNPKUzy3ZmfA==}
- '@oxfmt/binding-android-arm-eabi@0.57.0':
- resolution: {integrity: sha512-qVBsEO+KugOsCmUHcO8iqNnqc65p7PCKpCs8M66mPZ+Ri+CWbcpoQOEJBg2OTu03+0qu++NK1jj6IzvQVs0Sig==}
+ '@oxfmt/binding-android-arm-eabi@0.58.0':
+ resolution: {integrity: sha512-Uz62sHduGGPftXtILGyxdSW4PX82rUg+rfdNqhsgxe881g4rIoXlIqmZQ6HVKcF4f+F8qMhdD03Bx5u7gmeTdg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [android]
- '@oxfmt/binding-android-arm64@0.57.0':
- resolution: {integrity: sha512-mp6PibWbao3aizijcheOeHQaYEhcUAt8pwLniYbtLfHxL/psFF0BykAwCj+s3c6qIpa8yN8keZICWrqtZ70w8g==}
+ '@oxfmt/binding-android-arm64@0.58.0':
+ resolution: {integrity: sha512-rD0lRaJp1b+9vw6X4A2dJWKukd6X8yxiicN4JxXcXayolmUypRZxk+lKR+fVOu5q/iYc0fh5fR4bgmfOfVlbaA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
- '@oxfmt/binding-darwin-arm64@0.57.0':
- resolution: {integrity: sha512-T+0stuCBqmUVY+aMIvrgXhzGhHO3sD5tNiiEcYqgSdPsnukskQqn2u5qOVD0sv1l7RLdFS5Z/f5Wi9Ktyjr3Eg==}
+ '@oxfmt/binding-darwin-arm64@0.58.0':
+ resolution: {integrity: sha512-uzbPPk7O6M+w2K65vcQ1woga3wgP8zghjL1KOG5b6qJ8dvYHZJ1VShaslg2KOK6yQIwCQtcMCXqLBM6sqXUNTg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
- '@oxfmt/binding-darwin-x64@0.57.0':
- resolution: {integrity: sha512-O+3JbqWs/mCI2oi4xfhRO2IVPFJNDDEBV8Odo+ZpmsUOeKJfjXoNH7nDmBEQcDgK7NfjDIyE7kRgYSZcTLDO0A==}
+ '@oxfmt/binding-darwin-x64@0.58.0':
+ resolution: {integrity: sha512-L0nKYDxU32oxeQqJj21W9SlIMnf81VZEhyah6iDvFhf5q0oynq498Fopth7blErUJVBpVtxQ98RMCfMPqpJX6w==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
- '@oxfmt/binding-freebsd-x64@0.57.0':
- resolution: {integrity: sha512-pxwhxVC+JkLX9twOQ/8C/vbuOQcMZyKIDmiRDZfO7yITuVcIdZCiLRqqf4QOxb2+8FWrRXzQpm+1DBKcMpHSSQ==}
+ '@oxfmt/binding-freebsd-x64@0.58.0':
+ resolution: {integrity: sha512-woNwfD58dC5PGS9LSLSD5JYfo/EFK5iG9vhDWkcCg3q78ag7KC8bpDqgvPHrMoXpx83OLXxoSOhu6z8FsVTHlg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
- '@oxfmt/binding-linux-arm-gnueabihf@0.57.0':
- resolution: {integrity: sha512-pxBU4zH2imB/MDBfth2rOMeVxXUMjRQLCazagwLARIFH3hVlxZJBlM4nSnHXaIHJK4/qezoFCIORN6AY8Mra4A==}
+ '@oxfmt/binding-linux-arm-gnueabihf@0.58.0':
+ resolution: {integrity: sha512-Sqs8nMLxuQpY21NKJ1u4stPDmO5hskBCNNh2E3AdCfI1QqWtf4m+Qn4mGEIUO4KGmuq3SWc/SZ80uy5IiwTCDw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@oxfmt/binding-linux-arm-musleabihf@0.57.0':
- resolution: {integrity: sha512-JAprOzt8tycYou36ZgEw14DlRHTiN8qdtKANdV3VZIRIvTI/lh/cX13c9pJ/EnDk2GT3FASH7KvCgQ2AufAifQ==}
+ '@oxfmt/binding-linux-arm-musleabihf@0.58.0':
+ resolution: {integrity: sha512-Vd4exzBI5B5hB9m22JiTQzIL23WvHo/Pe+sNXPNeBLXSP9swCBPKCEBRwKpmpQzYhlgYaCgfPcGXPKAJBRIiZQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@oxfmt/binding-linux-arm64-gnu@0.57.0':
- resolution: {integrity: sha512-ajtjaxSaj9xl4BW7REt+Cef/ttzbAq00Bq4z7JUDZEfgFXdwSjH8K9bF+IcIJzZB9lKqMfQ4eHuSFOvvlvtqOg==}
+ '@oxfmt/binding-linux-arm64-gnu@0.58.0':
+ resolution: {integrity: sha512-bUWi5mHV+4Vi56RLHE1h6q/HHfwAIT3XoB9vJAVeRzfu5NriXM8y6eeJu0vlKa0C9kq2rq1sOWRClhdLHPocrg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
libc: [glibc]
- '@oxfmt/binding-linux-arm64-musl@0.57.0':
- resolution: {integrity: sha512-p4Y/+RYk9Bk5WO+zHSUXAClRmZ2fbJCejMuCAsU2HhyME4jqf6Ftt/mJYEwIah1wGCBDYOB7wEGV1x5bCEZ6hA==}
+ '@oxfmt/binding-linux-arm64-musl@0.58.0':
+ resolution: {integrity: sha512-2ZHxemzgHcjtktAuVUwSoyXmGo/t+aF5tS1ciPpPei4rhSyrz3JOqDosXXrmhN/yLUSzJjtuW7ToTWqfQpCj2w==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
libc: [musl]
- '@oxfmt/binding-linux-ppc64-gnu@0.57.0':
- resolution: {integrity: sha512-By6tRALAZsno0F4zedmtG+wdMvJiJmJoXM4d3+A9zHE4HRXLqXITwRH8mgrlcXc5yJM2g2W3riRPwTYdgemZLQ==}
+ '@oxfmt/binding-linux-ppc64-gnu@0.58.0':
+ resolution: {integrity: sha512-AwKkVwjVmFQ3bcO7j0McGYAqCKH2a326fswfofng/E8VewCT/raeeGQr4huVhY704deK8AWASSTlxzMj0eZc6Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ppc64]
os: [linux]
libc: [glibc]
- '@oxfmt/binding-linux-riscv64-gnu@0.57.0':
- resolution: {integrity: sha512-skYeG+RgvyzspqVEBsEprL90OYYZfoVNqB3HcCNR6QDJyXKOzfDRT3zncnHmUaFluIlBHuY23mU1b5WGgR98hA==}
+ '@oxfmt/binding-linux-riscv64-gnu@0.58.0':
+ resolution: {integrity: sha512-xsRpTxfUnJF8D3AUKko/qyWdjw4GZVHlCVFuGlzSCTeewLmykKINW8em1+wx+axsDVtJJcMtvsiaXggXxrlHgw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
libc: [glibc]
- '@oxfmt/binding-linux-riscv64-musl@0.57.0':
- resolution: {integrity: sha512-FFgACrZOXAXUh5KQh2mt1CDOVOZmn+QzHP71wM9QobNwyQvoFfyAeefVUltW83g3sm7LTiH3yfFqLLVUpA5ZFQ==}
+ '@oxfmt/binding-linux-riscv64-musl@0.58.0':
+ resolution: {integrity: sha512-Z4AYOTcy7nYEIiXwD62PlerimyYRcfJOgUbQAEBjXz098kxKuERBlRntofGy69HHhe9E0TLVNMl1yspVNu+efw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
libc: [musl]
- '@oxfmt/binding-linux-s390x-gnu@0.57.0':
- resolution: {integrity: sha512-Nm/BAOfQeFiiKd502mZn/GAVKJwtd0RdCg17G3Wz/WSOIQmDi3+7/SZH4BHn1Ye5KvTVH3ua8WvfwLLycNIuvA==}
+ '@oxfmt/binding-linux-s390x-gnu@0.58.0':
+ resolution: {integrity: sha512-A3nhhtZPC/TKVWOPj9q/H3p2znJDCcHWYlJBhWL8hGq/bFmBaNBHC8Np6E581yVq1w9Mi3rMDNzDalWvtUfJtQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
libc: [glibc]
- '@oxfmt/binding-linux-x64-gnu@0.57.0':
- resolution: {integrity: sha512-BiSy5Ku3mQqyxS6YIqAJgd403wEUWvI7kerfzPxc2l/txZVmZM0pSj7oDM+4bGBExowxOi7o73jEam1W0EDTZg==}
+ '@oxfmt/binding-linux-x64-gnu@0.58.0':
+ resolution: {integrity: sha512-2g+tVkgwqphw8R4hgo+kF4oz8+P5RwVOtr9+irsC7uwEp0e9j7Crw8kDGKL20uYlLPD7g02DqA61mC/UNYx98A==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [glibc]
- '@oxfmt/binding-linux-x64-musl@0.57.0':
- resolution: {integrity: sha512-BCRkJiotz5s9afLYD2LuMvzAoDYx9H17E/YbDyu4xK7l4zHDPeny9ErSXL//i/nJyaOwRk08x4b8cgJC00+JDg==}
+ '@oxfmt/binding-linux-x64-musl@0.58.0':
+ resolution: {integrity: sha512-rc15P6AbyyB7426aN8AakLd02Trb3a6ML/mmfAQeVHJEfVofWLcWIrBdy6zDEY+DIaL/s8E4GGPboVw+oP3+EA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [musl]
- '@oxfmt/binding-openharmony-arm64@0.57.0':
- resolution: {integrity: sha512-4Oaxe1qrGgXfpCJ1C/ERJ2iCtV2rN1R79ga9fsfyVHfSQRu/hVW780u2KDqZWFZ/iGTHODJji0JemxqFZ63eIQ==}
+ '@oxfmt/binding-openharmony-arm64@0.58.0':
+ resolution: {integrity: sha512-ZWoTM27/HYPOh9iq86DAbhPu9nXb8qKvvGU/h8OfliyVUFAMMNTLDkGsWDKKnDqIkqvZ9+dXlgUOsH1LYO3O7g==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [openharmony]
- '@oxfmt/binding-win32-arm64-msvc@0.57.0':
- resolution: {integrity: sha512-MYLAsDnhdNsSGheLYhWgbk0vfIrlS84iQYun/y21fX6u0jj8iBtYtbpZMdiqYeuf8U12eVPUjVY2xE2NrCfJ0g==}
+ '@oxfmt/binding-win32-arm64-msvc@0.58.0':
+ resolution: {integrity: sha512-LHZnqFXe2dEfkRI4XdZS/57nEOT/I4UCRX5IyM9v4GYW9XwQCjGe1IUK59SuKw3POwvcgWQ4pme2cYXmNqTNPg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
- '@oxfmt/binding-win32-ia32-msvc@0.57.0':
- resolution: {integrity: sha512-PBwdzZALJY/jcCx2E6is0yu+cuVXeySTDmwuseD+9j0mHqlRNxwlKgsyRTBed/woPeqfVfuXfWjoq4Cx2Zt3Eg==}
+ '@oxfmt/binding-win32-ia32-msvc@0.58.0':
+ resolution: {integrity: sha512-mZKpg20TpheCJym1rarcZCUJeW1sSruw8zAAaCYWvuVfwIUDN1CXdrPU/JgCWReXTCTrEfCB8Wyo3hh9jSZ2EA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ia32]
os: [win32]
- '@oxfmt/binding-win32-x64-msvc@0.57.0':
- resolution: {integrity: sha512-bQJdH9i4RRfw55jm7+8/xS7GzHLLTbHx4huhrrDxQJaJtbSDbsyOnODvP1ftT7EG0KFKAYO2S+q6AcioXODx8w==}
+ '@oxfmt/binding-win32-x64-msvc@0.58.0':
+ resolution: {integrity: sha512-N/wUU4N5PZ2orBtI+Ko7MnMfYLfE7K91UrGMY/c/pYyHR3lA9kwst1XugkZx+92YcRh/Eo+iv2eTESSWXfiZPA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
@@ -6546,9 +6546,15 @@ packages:
'@posthog/core@1.39.6':
resolution: {integrity: sha512-o6ajIwN5zXoNP0D4H/QPmOyibNTUkSyOR6ya7AG5U2ywXx4awo72L2KnCoiZPQM5x/bXv6jPBdimH8M18Ax0aw==}
+ '@posthog/core@1.40.0':
+ resolution: {integrity: sha512-oGDbIwlTquNwdHbEL5ZLEkuW4UFkkEanfx3QAxDgyVbISv+OAA6YGQwrvo0JD3MUJEbJZvyh8XsX+WYDGw9XHw==}
+
'@posthog/types@1.392.0':
resolution: {integrity: sha512-nctNujXL3FC1v99FktaTMSugSD9ZOZekEpahUSafkU2TSvW+XGKNkQZbokuJtiWvPBK208dwMJva8UfBkChqpw==}
+ '@posthog/types@1.393.0':
+ resolution: {integrity: sha512-vzWeEJZ7ERQhFRoQYaP5jzN1JvIu46UJyHXsuv+dTGW2r3sMgREOhNxXLZjmFHwZ8/FOHQoyqqQmXTCXZSfMSg==}
+
'@protobufjs/aspromise@1.1.2':
resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==}
@@ -6832,38 +6838,38 @@ packages:
'@rvf/set-get@7.0.1':
resolution: {integrity: sha512-GkTSn9K1GrTYoTUqlUs36k6nJnzjQaFBTTEIqUYmzBcsGsoJM8xG7EAx2WLHWAA4QzFjcwWUSHQ3vM3Fbw50Tg==}
- '@scalar/agent-chat@0.12.16':
- resolution: {integrity: sha512-YETdit7xhWpqdu4PMDM6AVQXID6GtJ1MSS0pmdyUFpR1xG02ABFWPsZHJ8+LQvFQXTC9ZOowtjgP8G9gTKA+KQ==}
+ '@scalar/agent-chat@0.12.18':
+ resolution: {integrity: sha512-auIe3JYVm6jgoT7pa4Za+lrLFnEa3CDb4ncZA9aAYztti8C6qSFGn8nBrAtm/RarljhPTYZg5dhqeXJ7zyOu7w==}
engines: {node: '>=22'}
- '@scalar/api-client@3.13.1':
- resolution: {integrity: sha512-+UWLBGY2dFFrbCYtEBHpjezZvSg/7eJ+CZs3oWo3Rr6JmVIJ/CKN31Ev5KAfce0w5Xmf7vbaWdExZheW+3ff7Q==}
+ '@scalar/api-client@3.13.3':
+ resolution: {integrity: sha512-m+5/L71PTk474VGl7daD+7Ue2DeQA/BPsXoWJAXzDTtOR7orySlktZ9WiaI3CbZZkjiukaICaOb9AvMotDOmIQ==}
engines: {node: '>=22'}
- '@scalar/api-reference-react@0.9.52':
- resolution: {integrity: sha512-+BkephxdTM7VFH9U/joHjOHvKadfOB9sxTCrYnWoURevz6LkrvnAGKvoALbAZBS4jbvbHabfpu6uL3sqDnV1EQ==}
+ '@scalar/api-reference-react@0.9.54':
+ resolution: {integrity: sha512-DE2a4+IPX/f4rzrXHFfMObNaXEm65JNiyHHDTk4wghetc37jA1Zxb1y/P1P/YURAjiLFNVnPdoqy2pJtZiZYFg==}
engines: {node: '>=22'}
peerDependencies:
react: ^18.0.0 || ^19.0.0
- '@scalar/api-reference@1.62.3':
- resolution: {integrity: sha512-0Q4NGSVK34tR/YMeQGxDD+v2NfH87/vDPxaBXxSyxfjg3lx/pmidt+YW2vcpxpoQdaPOVVwm8iuzcg0cxFjkCg==}
+ '@scalar/api-reference@1.62.5':
+ resolution: {integrity: sha512-6VZhjtXiYygWrh6llwg/pnKN7S4eWqINOGt2Fu7TQkCdNUKwZEq7/XiOTqzZvGp/1Uu60ne/9nJK+UbQTSVpBg==}
engines: {node: '>=22'}
'@scalar/asyncapi-upgrader@0.1.2':
resolution: {integrity: sha512-h6NUhsctrhucrbO2XHWbTXp9EWt7eL5vvlsooUEw2bB014KSPd41JrBQ6t0h/dFdmhwxdbBI7Hmg9eZa/mlCXA==}
engines: {node: '>=22'}
- '@scalar/blocks@0.1.2':
- resolution: {integrity: sha512-vJQFlEckV4NTn5x95Q1Ff5HeeHwAqaX/8MLOX3O63F/XFXotIAp+MS8BQG2jnlVxzQn5omRSCNug2Y5J5ETZEw==}
+ '@scalar/blocks@0.1.4':
+ resolution: {integrity: sha512-L6fN2azd56pQK0VN7YTPpgKXGFlATOJmIdTFfr8+G74ZAhpNifGa/6jtNe9gsfwCYW5TYu+yhbGy62Jd8MLhSg==}
engines: {node: '>=22'}
- '@scalar/code-highlight@0.4.0':
- resolution: {integrity: sha512-ajUQ9oq5MwVHrXGze0SZVatgSXP/WbN4qgE0usYDFt1XuJ+O56TaBsCWb043r3Y9ZnHSnK9GHreVaLOxXsbf1A==}
+ '@scalar/code-highlight@0.4.1':
+ resolution: {integrity: sha512-pnr8gbQuvSXu4fcPPNkFNjAxxMWiJLffN57lRgVN3FCk+Q8hKHWWT01ulAT1/0Kg3/VmgtObrMHhX2qYnpM9+g==}
engines: {node: '>=22'}
- '@scalar/components@0.27.4':
- resolution: {integrity: sha512-1sbsMYGJcWiQ+5GouI1hHCn1VrytHPhzhHhCAZTXxi1Tw4SzsPSQuACARehXca+w2p7RK9ayGRYQ+K5bX18SaQ==}
+ '@scalar/components@0.27.6':
+ resolution: {integrity: sha512-jXTv2VgYn7/13yCAGKtc/26LCnrQSULGjcnP0LasJDqkVKDdRm1StHDG5iRniqrIzS21gJ6YcNGokksdLIrgQw==}
engines: {node: '>=22'}
'@scalar/helpers@0.9.0':
@@ -6878,8 +6884,8 @@ packages:
resolution: {integrity: sha512-Vw2nrUDIjhvMP6vxFtkiiFlabJ6SyTtfn1BsOxgnr1hIB+/rkngMguiDzl5em21VjyfFGIoADia+QWKM2hdcdA==}
engines: {node: '>=22'}
- '@scalar/oas-utils@0.19.3':
- resolution: {integrity: sha512-+h/vLMfGj/mpr5FYgDLFIc+X75sYH2rc2MJNSvFTmmjMeerJDVINEYs+aYOx1Mn9Z3HnoP+qQohoWTJpg2gh7A==}
+ '@scalar/oas-utils@0.19.4':
+ resolution: {integrity: sha512-ne/Pio9NaTQTjAeJ0B7OXWNIy4ziJmMoeKRzmEvXLXJC15iDI3vJZzQJOOldg5MPVEIqHxC0NWICrwKB6nMERA==}
engines: {node: '>=22'}
'@scalar/openapi-types@0.9.1':
@@ -6890,16 +6896,16 @@ packages:
resolution: {integrity: sha512-D5b0rGLLZgmkO9mdW2j/ND1KBlH1u3RCpr87HPxv9P9ZSr6PtM5iLqFOJq0ACiaHjY2mikCrxgDmnUEhTzRpHQ==}
engines: {node: '>=22'}
- '@scalar/schemas@0.7.1':
- resolution: {integrity: sha512-80bxEp4ZOWxOm8kqhPi3kdJ2gipz2lZBSEHStAh3Z6NZPkFAOlZZYnDFwodhY0LwTihgvv4FVNmi64gziM0F1g==}
+ '@scalar/schemas@0.7.2':
+ resolution: {integrity: sha512-6Ble6WcbiKgD3ypIva+wgZv1qIClmeEjXA6jrOo1bKpYUu6sh4e89LZxDK+LULa2jQl/2O5GEaa6aZ0ImlpkHg==}
engines: {node: '>=22'}
- '@scalar/sidebar@0.9.27':
- resolution: {integrity: sha512-Y2HBOuUuRSJtB4sf9T5sqZZrsT8QNYP8kWuK8lqzsujf3bv7c4ixUFRNS568EMMjr0U7Zv9xa+LP0RHem3rt4g==}
+ '@scalar/sidebar@0.9.29':
+ resolution: {integrity: sha512-Xyq7hnkeABWYLdQ0QhxuK7EpwBKkCItyTCidmX2j8xeKw1/b/RWE95co5P09GtkjHs1g+ePU/P919WaSn80+CA==}
engines: {node: '>=22'}
- '@scalar/snippetz@0.9.20':
- resolution: {integrity: sha512-A3gSBYtoTmW3m511d02vUyl/W/eabX5y/EPAwz/u88LTzdwuDrKWbZ8iY+5dkz5e5EErhNOwQDwngmOCAA91hA==}
+ '@scalar/snippetz@0.9.21':
+ resolution: {integrity: sha512-0XFKdiKh5OnBxnK/NCBxaXpva53MRpvW4o6T2SMEUd+/xVa4Xmz7oHCHoq2g86+uY4bmepG1kZ0ndapyQjg/vw==}
engines: {node: '>=22'}
'@scalar/themes@0.16.2':
@@ -6909,8 +6915,8 @@ packages:
'@scalar/typebox@0.1.3':
resolution: {integrity: sha512-lU055AUccECZMIfGA0z/C1StYmboAYIPJLDFBzOO81yXBi35Pxdq+I4fWX6iUZ8qcoHneiLGk9jAUM1rA93iEg==}
- '@scalar/types@0.16.1':
- resolution: {integrity: sha512-zzApf0dtEqztdY//3gmRJTgySGMpKnAVqcZltAzt95yuQPXbkSqxXDTitBLd1abeSeik+W6GFTIjffL8K+1wqQ==}
+ '@scalar/types@0.16.2':
+ resolution: {integrity: sha512-QAlCtDVRsX/UV1N9ctLqPsKQy84eceFf4dMnTZM0JhaRfwS/Ovwp8oFf3POSpqQILNiqLFZLE6IV6p/5rNoAag==}
engines: {node: '>=22'}
'@scalar/use-codemirror@0.14.12':
@@ -6929,8 +6935,8 @@ packages:
resolution: {integrity: sha512-tpmmG+/xRE2Kn9RpflU3AIyZv08v10+E1ZrJCx7z6+/91zHVxy0M73kC1LT4/8PbYNt85ywyC8+n+D99JdMcGA==}
engines: {node: '>=20'}
- '@scalar/workspace-store@0.55.2':
- resolution: {integrity: sha512-/8BfJkave9vmweLdzH7w2TCaUFNcLu1vmE87id0QIi08enOwOExmPsz8YpUtaKLHM2bi/R2Tj/s9Uwp9i8Lttw==}
+ '@scalar/workspace-store@0.55.3':
+ resolution: {integrity: sha512-qqSSq8OSxx582h/DSgMYH68iqzp+M8c9B+YGB7/qi5ZQK3TzazeCM1BVakkSbFYvD+X4FanV4V4x/aAhjv6MfQ==}
engines: {node: '>=22'}
'@schummar/icu-type-parser@1.21.5':
@@ -7488,215 +7494,215 @@ packages:
'@testcontainers/redis@12.0.4':
resolution: {integrity: sha512-44Ov3Lcptb3KqljcCy6xIJ2VxNsN+3Kw/YpBiotZpOcI4iLgLNmcOgvCFPVo+vDoh4rCfgtNUEbIpL5Mu7oRuw==}
- '@tiptap/core@3.27.1':
- resolution: {integrity: sha512-rV6Qn4wmC6BxfF+4mu6bqGWj9vA4oXXhsrpXaJL2uhjxeHAGofjwcHof2X84VYzeyXgdlsGmqKie4TAppVXZUQ==}
+ '@tiptap/core@3.27.3':
+ resolution: {integrity: sha512-TJj5929M96C1KlH796wS8MywfHDh49RhmakOyzyMMc9pFmRj9UXi1gj0TCXgsZtjEOG7B+m/DRvNOvnuvR9kmg==}
peerDependencies:
- '@tiptap/pm': 3.27.1
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-blockquote@3.27.1':
- resolution: {integrity: sha512-VMF7xJx6qEGiX6DTKNiL31NLqypOcd/4sNjFSe8rb41PwejBJh/nOqVIbBvWkiT6NMGFLxMhj7zJ8/zPo1hXeg==}
+ '@tiptap/extension-blockquote@3.27.3':
+ resolution: {integrity: sha512-VGoVMcqcGkkoduzEqQ70ZK5OOHBDn5iYeHJSgkvNoSHzYHl0CaKoWxoDKJjSWC5DAM4mBU+tXTlsiUp3evRMfA==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-bold@3.27.1':
- resolution: {integrity: sha512-TlC5bsS+pqETTrlz4CZz9RO/cKBYtELGIxwtKeivUn3eNfnOxQbbu4WDsiwIfzRFyd0OMnKl6BPM2KnYEehoEQ==}
+ '@tiptap/extension-bold@3.27.3':
+ resolution: {integrity: sha512-pchbycFppBqBmvk+OxrQLIPZLNd3rNbcm7zOa+OTjluphpAcsJ6AmHBmiRhJUYWitV6/SA+0nujcaWxBp5hNcQ==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-bubble-menu@3.27.1':
- resolution: {integrity: sha512-j/j8Qp9Z5nViade2m7zjrO/CYH/Ca80Qj7aqo0eUaei6FZQ5izlF9o4XQU5EFMAutV6mwynsPUp8FVo5sCuYfw==}
+ '@tiptap/extension-bubble-menu@3.27.3':
+ resolution: {integrity: sha512-PKSM9g8BXzO0Lxm2gOin7FAFvxO6T0QvlXTXVke/GJn/sR1tEz7w5ybsvweytUPmSliUc601pfIUOHKEhIVC2Q==}
peerDependencies:
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-bullet-list@3.27.1':
- resolution: {integrity: sha512-faCUHnRP47o9Zh9VZZX6EX/569udw9Vopm2PgEKPWuKLE2qaS5WBuUVU0iItdJmKUqaWiOZkpoW4jvnDmj0dfg==}
+ '@tiptap/extension-bullet-list@3.27.3':
+ resolution: {integrity: sha512-owQW6mcgnYgQU1z5BqmslcjZFBUm1SGM/Ax++4R6XelIt/7ol6uSTjzjAzum+ASW7UlBbuJHuSgRjl8cA+RGkg==}
peerDependencies:
- '@tiptap/extension-list': 3.27.1
+ '@tiptap/extension-list': 3.27.3
- '@tiptap/extension-code-block@3.27.1':
- resolution: {integrity: sha512-pHlzmZx2OlHfyQ0yRlT5UL4mGokz947DthZuYefN1OleVqOkHpWBG+2JQwqoNq6bmzMne92zbH32rhcJUEYSjA==}
+ '@tiptap/extension-code-block@3.27.3':
+ resolution: {integrity: sha512-3CVnzkpGoqqI5KaXI9l9PMwLkx34SYY63tpeo0I0QjDk4LU+JTAQDTPJFSwB4zTsHZ7ZFMU0jjasFOZ1kZRVgw==}
peerDependencies:
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-code@3.27.1':
- resolution: {integrity: sha512-epOUpFfEmBzjvnqvjv2qHX7NAuLo5dlOGV690lWu+sAYMjibuJBeVvAiKPyFCfRCCTUxdbDB3jbaOA1yEcEJ7w==}
+ '@tiptap/extension-code@3.27.3':
+ resolution: {integrity: sha512-T7JF10Y3k7fyVujXXLVubdUh7fctgBUoiuxbvjotpltg1U/mPbOcT0UW/uif9j3H8TFvAwNApVw3x8bwwFUakA==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-color@3.27.1':
- resolution: {integrity: sha512-9R/vW4dDTce0E0HU+AyfSkKhz08Hlrx7noRRj3CKrTwsCTR86wReTKFHlzxhLKZiDrJuV2Y7CtNG7KGrAArf+A==}
+ '@tiptap/extension-color@3.27.3':
+ resolution: {integrity: sha512-tNXyK3VXPGygJP+vq1+YyPmrxLabx4vs+rYiVhGtmhIapTQeMVYcHbFH4s4v3h5m8JGVlTWnpI8n7cb5ExIhSQ==}
peerDependencies:
- '@tiptap/extension-text-style': 3.27.1
+ '@tiptap/extension-text-style': 3.27.3
- '@tiptap/extension-document@3.27.1':
- resolution: {integrity: sha512-8FbBTkfnRP4iVaoj+2h3iWa+H0eGDD3yTyVCwrmue/sQTkqUNUoSuAZa3GDG4Sd41xdPwTJxl9nUWGgM1qDCnw==}
+ '@tiptap/extension-document@3.27.3':
+ resolution: {integrity: sha512-PR25MRv56Nm4ETVLwA8nAh/0RrVdvD4D2nxnAC8kUkxz1WOYDaqTfPqqEeSWDoUUTUp1I1xzDkD4x0gEnAlmZA==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-dropcursor@3.27.1':
- resolution: {integrity: sha512-blFf9x9RG0Qr7P3FoAH/033ffa+mMLZn34trVs8Vi0Ppk6FmJAg5HpYFOtmYoeREdNDJ5rHJKV7SoACbOHgskQ==}
+ '@tiptap/extension-dropcursor@3.27.3':
+ resolution: {integrity: sha512-XsL0Ziual+ynXyx5JgLb0KIOShlMN3MW7+GQvf9PGRb1vOB7IOTRFDxMPrxDWcFIZ6WWMWSrbkCLOKHStt1BWg==}
peerDependencies:
- '@tiptap/extensions': 3.27.1
+ '@tiptap/extensions': 3.27.3
- '@tiptap/extension-floating-menu@3.27.1':
- resolution: {integrity: sha512-BmJF1VqB7dSJkgAalrpVFj88WLhxKjcWPuWHOqf2ITrUU2832BhKLXKmxjWUy1gqV8PfNNVWtGfIERy7I0y0+Q==}
+ '@tiptap/extension-floating-menu@3.27.3':
+ resolution: {integrity: sha512-qL+g1Z6MqZvYG4mHTPwub9II2fWZY+2I5VFfV8fzqy1HchBOyY6Df0mRKDNb0bmjBdFabIXnswz3iqLx3mDTbw==}
peerDependencies:
'@floating-ui/dom': ^1.0.0
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-gapcursor@3.27.1':
- resolution: {integrity: sha512-QoezN0wdvXIwLQ4ee2ccWDaX3RG0lzgQpIMpMz55oPDhpUVax1+19ApsS53LkcktpS4EbnPL4xO4DaJk0Vp7PQ==}
+ '@tiptap/extension-gapcursor@3.27.3':
+ resolution: {integrity: sha512-MVBqzwYrDOttkn2GOrvvKTDCymfSS2VGSKpahcKKhge5mweSDiqko2X1vBDnMF8aVW3WxIFfDMmO4VMmh8HDZA==}
peerDependencies:
- '@tiptap/extensions': 3.27.1
+ '@tiptap/extensions': 3.27.3
- '@tiptap/extension-hard-break@3.27.1':
- resolution: {integrity: sha512-iv/m9hzl6jfSj9Q8UEjAxONvCoUDaP7M9SRCPx3PaLNxA230TTD6RE0Ye4zFJ8ze7ZVoJJMAqg9Qpq1iYg2JOQ==}
+ '@tiptap/extension-hard-break@3.27.3':
+ resolution: {integrity: sha512-cySObJITR2CRrWII87mI2LJ12wEETTnxt2p1vvC6ZtUmKnB50fOu+ux8ZEt6KYNocIOtrEZthNFzTOx7R7UtrQ==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-heading@3.27.1':
- resolution: {integrity: sha512-SrC4l1kEIyv9ZXFaI/8LQqU2MyMmjczw7XXsWUQOTN4YXv0JyVgMNR3cI/wz0d2xsTfBdZ1N85Tdng+Ga1t0Sg==}
+ '@tiptap/extension-heading@3.27.3':
+ resolution: {integrity: sha512-QHXnsNic6iId8pnsFZ8z4PkX5L+HCHa/D7rAi3nNWtPlSIAOxo4nKrALcB5/tHmY+XL8kEXKH3nsNLNEDLCYPg==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-highlight@3.27.1':
- resolution: {integrity: sha512-IeMIUKbW4oyRkgn92BPYQ0fifkbTwVigKwa107nGDHMokz+pHQPFHy8xG3U7gtUOra/8OUo57bFgNGuP0TaH4A==}
+ '@tiptap/extension-highlight@3.27.3':
+ resolution: {integrity: sha512-99QYxMx8F/NhdvznM8/Zhm4XiCdMU0OEiLwPvLNObJiKV8UBqjdA68cJLX6FRuOi2nqD7xfJq2KuSsFKBldi2A==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-horizontal-rule@3.27.1':
- resolution: {integrity: sha512-QlKE7qn5qMnIGVGhXQlvYedvLtNJ9z0dmit5w8vPb8tKzW4Spk6M7N2kruprrDA8GBwHfeR5wmF+njfUm34qxg==}
+ '@tiptap/extension-horizontal-rule@3.27.3':
+ resolution: {integrity: sha512-sNCuo0+Q001B5XTVWY+ULpWXQqtBNRmAqXxAexZl44bx3rDqHG8OzjwT4EM0LIj2+BYVbdqwaJ1vfQbZVEEbig==}
peerDependencies:
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-image@3.27.1':
- resolution: {integrity: sha512-+JTahgQT+NxiGjduaB3qJVyhU/wh4m3pVkht1Earioku2bm/apj5Lb8rSowa/NJYP3B+oQgV/V4YLw5dtDgBoA==}
+ '@tiptap/extension-image@3.27.3':
+ resolution: {integrity: sha512-3OVLRH54Xkh9yrI5oGIempuqZkhLG1plyJBRnapx0N8j9IjEImOLF78kPYoAZzaBuU78M3Zk/E7HQZgmnaNRBg==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-italic@3.27.1':
- resolution: {integrity: sha512-jGGeyn9uRUnNjSTHpbqhiGsp6KaYTSbV09jDXPJI9cDwfV9hpugLvpaCZd0BMBbhU1B1W6kOfX0BE15qX/HQfA==}
+ '@tiptap/extension-italic@3.27.3':
+ resolution: {integrity: sha512-7VpVi2vn8kGFAc/HLrt96J/E6+LXOGKn8xLhJS863t150yLIG3EPQLA1h+G5O6eo+/w+9YokvJAAJoeDihj1Jg==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-link@3.27.1':
- resolution: {integrity: sha512-/2jBfsxBZUDGJmpZifqRQPz7f1E5qpS1BckTZ39TADzUJX+feKy7RJ3DtQ02+8y6SSMzvP9loGVjrk6zEMTk4g==}
+ '@tiptap/extension-link@3.27.3':
+ resolution: {integrity: sha512-iXmu1tJ/3vP60c9d+zfO3+X64vod2EyBrM1qeufecAtWA6t0bT9tYeka0Zq6qDRGsZK5zViO9F2lsY7eHXiYuA==}
peerDependencies:
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-list-item@3.27.1':
- resolution: {integrity: sha512-zwRl01ETfCkWUvtvK5fw9bXtAajMPkvlkE3Cq6JvH3LF7XXJwDtNj5Tj7exacMpCaSZmlNc43vFb2rAYnrnwMA==}
+ '@tiptap/extension-list-item@3.27.3':
+ resolution: {integrity: sha512-UddhVaQ7+V9IfQVVE8AJLNzSmyaaNpZPQsoPQxFNlJyOFxD6RwSTT8L4rb/TwbUctxSFWpyd1J7exzf33Ony/g==}
peerDependencies:
- '@tiptap/extension-list': 3.27.1
+ '@tiptap/extension-list': 3.27.3
- '@tiptap/extension-list-keymap@3.27.1':
- resolution: {integrity: sha512-OIMZNlzPSO8WRd4ic73Fxckzl4N1tesjjLL2XApaNA/uMpO0LoF6WSRPAWv+Z24Wp92ARRJAnRP7iZoI5+Jxig==}
+ '@tiptap/extension-list-keymap@3.27.3':
+ resolution: {integrity: sha512-GZPVg4QCFm41yTMPEPeTlH2odNeQwRuWHY/pt3pI5LsfipQ4kDBv6h9we928vJQUnU2Gg9Y3cL5iRbmXIWWTUA==}
peerDependencies:
- '@tiptap/extension-list': 3.27.1
+ '@tiptap/extension-list': 3.27.3
- '@tiptap/extension-list@3.27.1':
- resolution: {integrity: sha512-c2Upru7lj0/ZV/Ibww6cNz6sUS8m6Dp/9uygFhYcZOd3X8M0xBIEk42c6m6SQehkPziVA8QOgNJz7sMqsbz1OQ==}
+ '@tiptap/extension-list@3.27.3':
+ resolution: {integrity: sha512-52rcaSzYjtVGUrNkdB8k1Bw/rId2lBirrWMvmnBLsieoeFd8zo8ow5zkwV057BYSgWXfnMAV7GOpDyq2IoSD9A==}
peerDependencies:
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-ordered-list@3.27.1':
- resolution: {integrity: sha512-GYrKqD//9nHJ2r80uXqbDMzRnFpGzbaEQRTSGaO/SH7DvXWFMow8evkOdjQ7PCQO07jNjJo75+A85Jwu3Ov3AA==}
+ '@tiptap/extension-ordered-list@3.27.3':
+ resolution: {integrity: sha512-oHYoE65WfRSM5tCcXi8MtQmzPxz83E2qw0pa2yHBKwr9xCCQUu8vJHJE+EJGduWdaNImv43+6/6kVMeYYbXRKg==}
peerDependencies:
- '@tiptap/extension-list': 3.27.1
+ '@tiptap/extension-list': 3.27.3
- '@tiptap/extension-paragraph@3.27.1':
- resolution: {integrity: sha512-7K7eo1gruOgAsnbK+GCV23AUVUI0cL1bTig8HaPneoFMVbig7vddk8jNLKBWO8TXVbG7TuHdnDN4F98vdtwh5Q==}
+ '@tiptap/extension-paragraph@3.27.3':
+ resolution: {integrity: sha512-G5XPCN7lm0nULYPelJC2eUbKbt1q97j67e/HSWxwMYEXhceec5eNAtVfpDCRyXNO9osyBi2kXqLv/IQtxbch9A==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-placeholder@3.27.1':
- resolution: {integrity: sha512-lhcNDcczQ75yJOSywCHb58Hmtg1aPL/2TdYmeLPxVrP048D7rRs133sfONcgyyw0AvhnfmPOkHLTv3QtKSowhw==}
+ '@tiptap/extension-placeholder@3.27.3':
+ resolution: {integrity: sha512-Y43dGaN3rA0oU4CWmXkZ2idjZjrxPX9oy0zZL92EgXOguhAUToBs0dIxRG5ZanYX9A8kKKWPlfeRFlBMtRhKvg==}
peerDependencies:
- '@tiptap/extensions': 3.27.1
+ '@tiptap/extensions': 3.27.3
- '@tiptap/extension-strike@3.27.1':
- resolution: {integrity: sha512-Y3DW1jlSlCNCyMGHP3+3qBNNPS83wuFz4RTYGjZtvRRTCRh7apZme9XRWMq1rN5mJ2Cr7fKocA2/5Bs13KgN6Q==}
+ '@tiptap/extension-strike@3.27.3':
+ resolution: {integrity: sha512-dp6Rs3I4zLVJPvAw2Q9yrNuYKcX5LTONH3/oyULvGsrqq5DKz7pqscfwhwnDSzrgm/3aCz6B9r1BVHlYI/DXlA==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-table-cell@3.27.1':
- resolution: {integrity: sha512-aopweoHugP+ZR5WTgb7mccXXWmjoNv7PBjtQDl8rvS4IWsJE1w23B+rkj7VuoncO8WK5bU3SS9O3l5aObql68w==}
+ '@tiptap/extension-table-cell@3.27.3':
+ resolution: {integrity: sha512-W8onBLgjge3D2PlYetbPC/BvwH5jgYfL9PLqMurfCPD7t8fyU4s+4E3SwbZkuf6eCH0twBjqyapH7+sOW/sPhA==}
peerDependencies:
- '@tiptap/extension-table': 3.27.1
+ '@tiptap/extension-table': 3.27.3
- '@tiptap/extension-table-header@3.27.1':
- resolution: {integrity: sha512-+J9EyKP6RMInfMJbIoNemqWzHxZe9XZv/7OjpsvtVZO1cxMTd5W1xIg0Ntr7YMdG9eKBC8Vwx5jjFbRm2tbM3A==}
+ '@tiptap/extension-table-header@3.27.3':
+ resolution: {integrity: sha512-8iBOxh0S1Wh5VC1rmVTZVJKanGhJpZd5E5O7Pycf+KKUu+BcWQZ17ewj3+VVSdU76sDCUWIjQE0qJ/EyI1vZeg==}
peerDependencies:
- '@tiptap/extension-table': 3.27.1
+ '@tiptap/extension-table': 3.27.3
- '@tiptap/extension-table-row@3.27.1':
- resolution: {integrity: sha512-peEcbNRrJJ9Qc/WNKQNFbkwBrJvBvq22Dp5WNqEygn/ZJez1qD9ctd10+D6f3b9GtSyx12sfDgn8yBufWa+Iug==}
+ '@tiptap/extension-table-row@3.27.3':
+ resolution: {integrity: sha512-AFMVQI+1kRh97++g+NA6MjATpwQPvjar4JUyaGlnSBIt+b5sYLTW3qQS8EzpMbKPqUp7uZOX9EkLgpvepWYSow==}
peerDependencies:
- '@tiptap/extension-table': 3.27.1
+ '@tiptap/extension-table': 3.27.3
- '@tiptap/extension-table@3.27.1':
- resolution: {integrity: sha512-tNB8kjxo0+XPremnWkd6NUikpeJ+JQrss7HntL8GgIxX4t0gkdnLn9yUWb0JzcaYP7Y8iTZZHdkPs0P154DG8Q==}
+ '@tiptap/extension-table@3.27.3':
+ resolution: {integrity: sha512-P7iQ0SkkDWZwnXzQDOVFLXktXlX67VQ3s2YxoJYKTHlc8rPZ4UCaSogFq0G2APyBlizlY3LbMNrDeZAVFOD8wQ==}
peerDependencies:
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-task-item@3.27.1':
- resolution: {integrity: sha512-HxS85Xqlf9voWpqW6yJNExjnqy9AcQbvL7K41gzKUIaXZdNxAyEkUg7wve7WAd7AUPI9yrS9WONplhmq7pWuJw==}
+ '@tiptap/extension-task-item@3.27.3':
+ resolution: {integrity: sha512-CajIPpHTsuE1l+bM3xKgpZ/3PTvRuFb+ZEyC+yxI/cY2pZd4EJ7iXHT5Fl3ITwdDq8/syVev1BBZ/QDZTOA3rw==}
peerDependencies:
- '@tiptap/extension-list': 3.27.1
+ '@tiptap/extension-list': 3.27.3
- '@tiptap/extension-task-list@3.27.1':
- resolution: {integrity: sha512-5LaJU3q/O6S1aNe9uj/VbZ7uS8G9mJMvJGNm/wRGyR3HcZtHAcFsPh9+woylQvUThD0qO9OMeGXkgqRSE+ayuA==}
+ '@tiptap/extension-task-list@3.27.3':
+ resolution: {integrity: sha512-g1zp2SnR+3DbsXbK1GbAucrj0lh1WnTarp1YPY4beFENzjAPklyVIpF22IjFZD/08QWN1j1fRN3zVzTGHuFXFA==}
peerDependencies:
- '@tiptap/extension-list': 3.27.1
+ '@tiptap/extension-list': 3.27.3
- '@tiptap/extension-text-align@3.27.1':
- resolution: {integrity: sha512-EXawuJBO55wd8WcTbHTMoPhv0CGQxza4yCCPB5Hqz4ZPQwahIr3ej+8yp/kimIl0xokabwZ0/Fu8STQ4AkZv5g==}
+ '@tiptap/extension-text-align@3.27.3':
+ resolution: {integrity: sha512-yyhlwRz0Eh6xQCn+GtTDWUGqxGajT02Qf8zBN/3eZQtl3EZ2xrI8lvfLmcV9SAW0srgMd+5hX0CVV+zKeXuxeg==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-text-style@3.27.1':
- resolution: {integrity: sha512-J48WIl+6YDYTFPhWXUBQk+u7+AKVUqTdvrZOQyPYCGuQMgHrYzgWrI5+HeEifUgXJ5rMIWWP3qytp7KhVVqpDQ==}
+ '@tiptap/extension-text-style@3.27.3':
+ resolution: {integrity: sha512-oim4RqFtMBCA4N+J8f8dTFFYZrwyfmXLxLL5SvQkn+kkpfGLv8PqJCnJ4uHxsnHXDNsWHBtVVhfTGUABZsTEHg==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-text@3.27.1':
- resolution: {integrity: sha512-6ZwaZwSrDh+KFFv6V1J79oO37yPs7y1bFxvk1/9Ih2rn3Xr5AWz+eMS+n8RpH3djBVVAQpdIAeYQgcn+VCSsTg==}
+ '@tiptap/extension-text@3.27.3':
+ resolution: {integrity: sha512-wSatZ/bop0pleeC18nF90zvWWEoRe/ewZncvm8LjcMrXwq41kTEs3j7nZflMYAh7X8fZvu00UIMeEyCNJl+5Yg==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extension-underline@3.27.1':
- resolution: {integrity: sha512-N889J4nXN/TPfVt8uF9N1A0SY82E90zwc1y26lqOcw6KWNLmQrlhMh/9OD4ikLDbekmFpOBq/UicpHf/6S8hbQ==}
+ '@tiptap/extension-underline@3.27.3':
+ resolution: {integrity: sha512-YH7ka/Rp7ZwlzTuQCcs0OZ4CMSx/P/MzbseQKxKebEIZreWaKMZAaED97Fnu0dA66VlreD4/1C7xHJy84ovamg==}
peerDependencies:
- '@tiptap/core': 3.27.1
+ '@tiptap/core': 3.27.3
- '@tiptap/extensions@3.27.1':
- resolution: {integrity: sha512-1Tdx9faw8k0/83V6X+xCDVhV8yElGt95JxeW3YMkKQJI56QdlPz0xOdJPlMiSGJKinPyVier+x9LJD/YZUZIaw==}
+ '@tiptap/extensions@3.27.3':
+ resolution: {integrity: sha512-IA2QKUVJgzUPEhhkUfr6P5u5GFVfhiApiEaaHXBz07saL2c4HNoVs2RC18QlZDCtLNKrPR1mUScr72u7uYs+YQ==}
peerDependencies:
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
- '@tiptap/pm@3.27.1':
- resolution: {integrity: sha512-Ffjx+vimmBU7zH/KrpXzJid3+pziCe/VL2aexSTP63cyQwKQ65LkFkCKaIsSpFdQQuakVZBGWjCA5RoBV852pw==}
+ '@tiptap/pm@3.27.3':
+ resolution: {integrity: sha512-ppiG57RxM3HSHHgcHT0hP6Ib4P56Sd5itxdV4w0hIGHKPGyLLKiAkYp+htIHa9T7IvjMdaqxIlsfyV3ZKsS1sw==}
- '@tiptap/react@3.27.1':
- resolution: {integrity: sha512-/Wn2fc9zMtX08MXYScDFsm4wJ8lzfhfPEdbtls7WCDlbtrop48PWlkHDBBJrywARfAQTB2mFs9KiFy9yrQm5Lg==}
+ '@tiptap/react@3.27.3':
+ resolution: {integrity: sha512-lanXxMScw/LevbRFuFw5MoQJ1grmHUDszwph2VIk4l2U5e/EDIw3rr4CeDME6Z4isVReD6zccMFVShkHqsv+jg==}
peerDependencies:
- '@tiptap/core': 3.27.1
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3
+ '@tiptap/pm': 3.27.3
'@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0
'@types/react-dom': ^17.0.0 || ^18.0.0 || ^19.0.0
react: ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0
- '@tiptap/starter-kit@3.27.1':
- resolution: {integrity: sha512-vfxRsqW8rCc0k4pzo0ilU3wobVi2wqVj88VZI2SlgZlNnUAkrDGDIAph7CTa9k9fshV+O1ivpEgPC5yC046jow==}
+ '@tiptap/starter-kit@3.27.3':
+ resolution: {integrity: sha512-xX3baFqiC30skntdhxUUvyJo755ON9c1pE83+2Wiq2g+Qnffg9knUuLCZStHoZZ318yB0aBsKAMvHWLtYDo8AA==}
'@trpc/client@11.18.0':
resolution: {integrity: sha512-wOqeg3Fvl25V1ZisQhUD3K8G60ZJDlSGJNSyeXrLH24xAo5w6GSR2Kzb1cSNY9Y+IQ2YZvYGZstBU+V/ulo/ow==}
@@ -7751,37 +7757,37 @@ packages:
'@tsconfig/docusaurus@2.0.9':
resolution: {integrity: sha512-0jVxZCgy2v7TnJrW9kVNikNwJHeiWb68Zhiiw2vHw4tzBFSP5vS2zn3O5EY2oPEVz5dXZRkK7MnWG3Ay5q0mIg==}
- '@turbo/darwin-64@2.10.2':
- resolution: {integrity: sha512-wBM3ObqOWnKUDmg7QfUFDkDHPFUAJmrYlYqmEM8jMPAPA/I6wRJIbWimeQUqhOiQ8xPKhzyWM+xaiUP0wz8FEQ==}
+ '@turbo/darwin-64@2.10.4':
+ resolution: {integrity: sha512-m1MUEI4MJ69r5CwfMYxmHi0H0rrgiYCBOp0tgBZ9x/YVvOb5uu/lRIDyDwdtH054R2yWeQaIigUGu6aCX9f8cA==}
cpu: [x64]
os: [darwin]
- '@turbo/darwin-arm64@2.10.2':
- resolution: {integrity: sha512-/Cq0joWnuMjDPfhjbFP4sv+C/7gkQ415zlaO4XUzD5EZxbtrKgXKvuuydMvogG8GeUnN1aDltW71RlmEfpjbyw==}
+ '@turbo/darwin-arm64@2.10.4':
+ resolution: {integrity: sha512-VQ1Yxs5zkPT+2z7t1P4mvn6JmcKLkOCAsPuK9XbOvuVj0DlTlETfIXNisX0771v/vTWHOQqiwoGi+TtAUq8efw==}
cpu: [arm64]
os: [darwin]
- '@turbo/gen@2.10.2':
- resolution: {integrity: sha512-euo5g9gAjMaWt0sl8Xg2ThahSIuGvK/hqciXt8sthH+HrifzjKa9TQaIVtdTpFzsTKfOqBlUvd5O+aPrEnvxqQ==}
+ '@turbo/gen@2.10.4':
+ resolution: {integrity: sha512-FP3XAL344PohE7yN8cR+SDLyhWIMk7kn+jCNlovzhXDQJBHjfn9Iv7GgMf1dnSTO7etYeOfe4v41Ix26bzYm+A==}
hasBin: true
- '@turbo/linux-64@2.10.2':
- resolution: {integrity: sha512-mMsf5IIhiKuceEXNstd25IbadjBXZ0amxzFOqliEzJX6HyeeHdBQPVSY583PWqYDyqM/FB8d5ZjkthfBSeuH3Q==}
+ '@turbo/linux-64@2.10.4':
+ resolution: {integrity: sha512-IzV1QovmwX7mfGnVinmE++2IB8tbeo38weltiuH5zNqwCTBjLs/DytyRKx+bmnhHdXIq9SheR8p0Nip/LBUPHg==}
cpu: [x64]
os: [linux]
- '@turbo/linux-arm64@2.10.2':
- resolution: {integrity: sha512-Wcng1i2kaKmXutmwxT9MUoYZvdaIekXAdlGr4+0TpgbhGLw7nDuEcRBFrxb5BbRoX1d1q8SpdRxLc45TvDZIdQ==}
+ '@turbo/linux-arm64@2.10.4':
+ resolution: {integrity: sha512-rfujSQkP5aYiRn0PgTM7F00WkJCP/bKDVZbOx3WmrZwa/vHA0bplhCl328kpX7VI9HH2vI90ISGwuSVgJgoqTw==}
cpu: [arm64]
os: [linux]
- '@turbo/windows-64@2.10.2':
- resolution: {integrity: sha512-SsNhM7Ho7EpAdwtrJKBOic9Hso23vu6Dp0gAfLOvUFjPzurr/sGQlXZEvr6z89ne4RDOypTwz5CBDrixpMKtXw==}
+ '@turbo/windows-64@2.10.4':
+ resolution: {integrity: sha512-NnspP7Wd5fa3Wwnqv9bKfhegqZzuHBgbPxdZU/idTLQcazx/vgKu95JlCx2YHY0hdvKCnPcARrDwM+KEUmaO7A==}
cpu: [x64]
os: [win32]
- '@turbo/windows-arm64@2.10.2':
- resolution: {integrity: sha512-Gf+S7ICAdimT/n02bOuVWKvhHnct/HYjZg3oBNIz5hZ9ZyWHbQim9J3P5Qip8WpX0ksxF7eaBVziJCuLnjhqDg==}
+ '@turbo/windows-arm64@2.10.4':
+ resolution: {integrity: sha512-Iv02YgOpaEShc2OkG7mgCJ2pEw1RUKiKbs0h8W5wAf4jZ5vpmraTEjuGTgHRuOORQnC1GN3KHo5WB+hu1abRMA==}
cpu: [arm64]
os: [win32]
@@ -8028,6 +8034,9 @@ packages:
'@types/node@24.13.2':
resolution: {integrity: sha512-fRa09kZTgu8o71KFcDjUFuc7F+dEbZYZmkI0mg5YBTRs0yMKjYHsq/c0urDKeDb+D5qVgXOdFcuu+DZPKOITwA==}
+ '@types/node@24.13.3':
+ resolution: {integrity: sha512-Dh8vAsV36ig5wa9OX4pXvMc9D3Veibfw2wix0CUwYODLD8nkj9UsLjASr49nPg+2eKzxhBV+v7L8pXvT4e639Q==}
+
'@types/normalize-package-data@2.4.4':
resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
@@ -9874,9 +9883,6 @@ packages:
resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
engines: {node: '>= 4'}
- dompurify@3.4.10:
- resolution: {integrity: sha512-0xzNv0e7oYC6yyuOGZIABPM4qtg3QxLFniDNPP4ZP90wR8Yq3zgwpRbrNiT4N3IKqDbbYFEJLV+JWEs19aZ//w==}
-
dompurify@3.4.11:
resolution: {integrity: sha512-zhlUV12GsaRzMsf9q5M254YhA4+VuF0fG+QFqu6aYpoGlKtz+w8//jBcGVYBgQkR5GHjUomejY84AV+/uPbWdw==}
@@ -12502,8 +12508,8 @@ packages:
outvariant@1.4.3:
resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==}
- oxfmt@0.57.0:
- resolution: {integrity: sha512-ZB7Bi+rGDSqmVIo9jwcLyFgjxXvQhDdU+jx+ZrVy6VRiVXK2+CHc4hO3J4dUQjHe7V0ymHB+MDuv5z+NhK07HA==}
+ oxfmt@0.58.0:
+ resolution: {integrity: sha512-8feG/7NVEHDVwc1OUpP6Pks+TnaDFUw2jLLFIMi5bcmmwxAX2wBQvjSzj62RRTYBf2Op1Wt8xbkmagmPTR5ETg==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
@@ -13278,8 +13284,8 @@ packages:
resolution: {integrity: sha512-Ray65LYEJrMMqDtsBUBXunEVP/g4wtATvq/xz9rchUoLy/9mSkkFgUko/8DVtGxgiP3vivpFMgfb9HpCuDrBHg==}
engines: {node: '>=10.15.1'}
- posthog-js@1.396.5:
- resolution: {integrity: sha512-huW/8R151I08i/tkOaAv3Q/yWVqzhqPj3SxyhpgNLB/xysaNeV1ibp6DHzbRWV5D7FRM48Zg6Icxsm4q0irEtg==}
+ posthog-js@1.399.0:
+ resolution: {integrity: sha512-8l+uZJZM3+OAc0D0+iLBMDRVfWF9s26Rt0jv8EC3kMJcA/9oyOets0zDgqIZk2TTfUs3H96ycLE6Lwj1wWG16Q==}
posthog-node@5.39.4:
resolution: {integrity: sha512-+fCQ7htBFRQQFbIzl1T0TA7bDwYyaB9XP308ZFMCUoB5LzTzOFxBa6TYVrxdH/VQl43WXTp6sf0QsG2Z4XlNBg==}
@@ -13298,8 +13304,13 @@ packages:
preact@10.24.3:
resolution: {integrity: sha512-Z2dPnBnMUfyQfSQ+GBdsGa16hz35YmLmtTLhM169uW944hYL6xzTYkJjC07j+Wosz733pMWx0fgON3JNw1jJQA==}
- preact@10.29.2:
- resolution: {integrity: sha512-7tNmwg/7mzzAoB/8kSg6Hl37JraAZw3Z3A0JSY7VXlZwo82Xn0G7wKbNNs2qoF4ZEEsQGTwDAroNdqKs1ofJxQ==}
+ preact@10.29.7:
+ resolution: {integrity: sha512-DCHYrK/B10yUD3ZjLfhZ3WIE/9Vf9VFUODcRE2dRomTYDpJk6z6L9wecSfhfE6M9ZTHUdyQkoC46arIDhEV84Q==}
+ peerDependencies:
+ preact-render-to-string: '>=5'
+ peerDependenciesMeta:
+ preact-render-to-string:
+ optional: true
prebuild-install@7.1.2:
resolution: {integrity: sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==}
@@ -13357,20 +13368,20 @@ packages:
property-information@7.0.0:
resolution: {integrity: sha512-7D/qOz/+Y4X/rzSB6jKxKUsQnphO046ei8qxG59mtM3RG3DHgTK81HrxrmoDVINJb8NKT5ZsRbwHvQ6B68Iyhg==}
- prosemirror-changeset@2.3.0:
- resolution: {integrity: sha512-8wRKhlEwEJ4I13Ju54q2NZR1pVKGTgJ/8XsQ8L5A5uUsQ/YQScQJuEAuh8Bn8i6IwAMjjLRABd9lVli+DlIiVw==}
+ prosemirror-changeset@2.4.1:
+ resolution: {integrity: sha512-96WBLhOaYhJ+kPhLg3uW359Tz6I/MfcrQfL4EGv4SrcqKEMC1gmoGrXHecPE8eOwTVCJ4IwgfzM8fFad25wNfw==}
- prosemirror-commands@1.6.2:
- resolution: {integrity: sha512-0nDHH++qcf/BuPLYvmqZTUUsPJUCPBUXt0J1ErTcDIS369CTp773itzLGIgIXG4LJXOlwYCr44+Mh4ii6MP1QA==}
+ prosemirror-commands@1.7.1:
+ resolution: {integrity: sha512-rT7qZnQtx5c0/y/KlYaGvtG411S97UaL6gdp6RIZ23DLHanMYLyfGBV5DtSnZdthQql7W+lEVbpSfwtO8T+L2w==}
- prosemirror-dropcursor@1.8.1:
- resolution: {integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==}
+ prosemirror-dropcursor@1.8.3:
+ resolution: {integrity: sha512-FoYbsJR8gK+DGlqhNoE29Loa38eIZPzQRIb1VMaDNBoo4OLP6vVof/jR8qFY/6XvUd6Dhug8MDCHl2a/h8RTfQ==}
- prosemirror-gapcursor@1.3.2:
- resolution: {integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==}
+ prosemirror-gapcursor@1.4.1:
+ resolution: {integrity: sha512-pMdYaEnjNMSwl11yjEGtgTmLkR08m/Vl+Jj443167p9eB3HVQKhYCc4gmHVDsLPODfZfjr/MmirsdyZziXbQKw==}
- prosemirror-history@1.4.1:
- resolution: {integrity: sha512-2JZD8z2JviJrboD9cPuX/Sv/1ChFng+xh2tChQ2X4bB2HeK+rra/bmJ3xGntCcjhOqIzSDG6Id7e8RJ9QPXLEQ==}
+ prosemirror-history@1.5.0:
+ resolution: {integrity: sha512-zlzTiH01eKA55UAf1MEjtssJeHnGxO0j4K4Dpx+gnmX9n+SHNlDqI2oO1Kv1iPN5B1dm5fsljCfqKF9nFL6HRg==}
prosemirror-inputrules@1.5.1:
resolution: {integrity: sha512-7wj4uMjKaXWAQ1CDgxNzNtR9AlsuwzHfdFH1ygEHA2KHF2DOEaXl1CJfNPAKCg9qNEh4rum975QLaCiQPyY6Fw==}
@@ -13378,8 +13389,8 @@ packages:
prosemirror-keymap@1.2.3:
resolution: {integrity: sha512-4HucRlpiLd1IPQQXNqeo81BGtkY8Ai5smHhKW9jjPKRc2wQIxksg7Hl1tTI2IfT2B/LgX6bfYvXxEpJl7aKYKw==}
- prosemirror-model@1.25.7:
- resolution: {integrity: sha512-A79aN8QEFUwI6cax8Yq4Rpcx1TJZ3Kagn+ii7qLo4/V8H3mMiHrhFyhTyHHvpSnOgMPpWiDGSwM3etwrxE50ug==}
+ prosemirror-model@1.25.10:
+ resolution: {integrity: sha512-9n6rH4DbJU1eH4SxLt6Y0HhJIo6cZsb7DJ/30uob1hOKPeO6TAaMWI2tc7kwR92BjfPOU2fFHWbZLovLi3XQfA==}
prosemirror-schema-list@1.5.1:
resolution: {integrity: sha512-927lFx/uwyQaGwJxLWCZRkjXG0p48KpMj6ueoYiu4JX05GGuGcgzAy62dfiV8eFZftgyBUvLx76RsMe20fJl+Q==}
@@ -13393,8 +13404,8 @@ packages:
prosemirror-transform@1.12.0:
resolution: {integrity: sha512-GxboyN4AMIsoHNtz5uf2r2Ru551i5hWeCMD6E2Ib4Eogqoub0NflniaBPVQ4MrGE5yZ8JV9tUHg9qcZTTrcN4w==}
- prosemirror-view@1.41.8:
- resolution: {integrity: sha512-TnKDdohEatgyZNGCDWIdccOHXhYloJwbwU+phw/a23KBvJIR9lWQWW7WHHK3vBdOLDNuF7TaX98GObUZOWkOnA==}
+ prosemirror-view@1.42.0:
+ resolution: {integrity: sha512-N54DF3OXNWDuP81G1kbfCys8ZzIjuL1VnvJ2mk5STSu/fNxWIcX/EutQLA3s9KR/2wVhgDi4hzBB/1fINVxk0A==}
proto-list@1.2.4:
resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
@@ -14433,8 +14444,8 @@ packages:
'@swc/core': ^1.2.147
webpack: '>=2'
- swiper@14.0.1:
- resolution: {integrity: sha512-dibQY282S5rn6S9Ba+GTIvofyY4Qujy526a0cPaJnjR2S18Z7HMGKZBr8k/3ukboeKW/ig5h0q//7CYip0MCQw==}
+ swiper@14.0.2:
+ resolution: {integrity: sha512-KRFQZP0zXUh6MEmSQOJKSw27ARqS884OX/dfBz4i2/It9aixL7svh7/Ng0yZ0FE+PrjrW5vzBcjCfmNnq109XQ==}
engines: {node: '>= 4.7.0'}
swrv@1.2.0:
@@ -14746,8 +14757,8 @@ packages:
resolution: {integrity: sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==}
engines: {node: '>=0.6.11 <=0.7.0 || >=0.7.3'}
- turbo@2.10.2:
- resolution: {integrity: sha512-wTExrNrRjB8qzIcg+ZLm0A3GFNLDsWNwdS/RBXB0FPrBDyzk3i96Yx+TxWZC7a0k1SIreFB8ciUbxjmEqTH8IQ==}
+ turbo@2.10.4:
+ resolution: {integrity: sha512-GQpduILaKjoaGljw097ScsSyKTtZSY7cZ3bJktzfTkPMyCf3ShKLuXK2IaOEN2Plziml+ArR7WJ1m+V4VbnaKQ==}
hasBin: true
tweetnacl@0.14.5:
@@ -16515,12 +16526,12 @@ snapshots:
optionalDependencies:
'@opentelemetry/api': 1.9.0
- '@better-auth/drizzle-adapter@1.6.15(@better-auth/core@1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.1)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))':
+ '@better-auth/drizzle-adapter@1.6.15(@better-auth/core@1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.1)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))':
dependencies:
'@better-auth/core': 1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0)
'@better-auth/utils': 0.4.1
optionalDependencies:
- drizzle-orm: 0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1)
+ drizzle-orm: 0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1)
'@better-auth/kysely-adapter@1.6.15(@better-auth/core@1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.1)(kysely@0.29.2)':
dependencies:
@@ -18721,156 +18732,156 @@ snapshots:
'@inquirer/ansi@2.0.5':
optional: true
- '@inquirer/checkbox@4.3.2(@types/node@24.13.2)':
+ '@inquirer/checkbox@4.3.2(@types/node@24.13.3)':
dependencies:
'@inquirer/ansi': 1.0.2
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
'@inquirer/figures': 1.0.15
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/confirm@5.1.21(@types/node@24.13.2)':
+ '@inquirer/confirm@5.1.21(@types/node@24.13.3)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/confirm@6.0.13(@types/node@24.13.2)':
+ '@inquirer/confirm@6.0.13(@types/node@24.13.3)':
dependencies:
- '@inquirer/core': 11.1.10(@types/node@24.13.2)
- '@inquirer/type': 4.0.5(@types/node@24.13.2)
+ '@inquirer/core': 11.1.10(@types/node@24.13.3)
+ '@inquirer/type': 4.0.5(@types/node@24.13.3)
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
optional: true
- '@inquirer/core@10.3.2(@types/node@24.13.2)':
+ '@inquirer/core@10.3.2(@types/node@24.13.3)':
dependencies:
'@inquirer/ansi': 1.0.2
'@inquirer/figures': 1.0.15
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
cli-width: 4.1.0
mute-stream: 2.0.0
signal-exit: 4.1.0
wrap-ansi: 6.2.0
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/core@11.1.10(@types/node@24.13.2)':
+ '@inquirer/core@11.1.10(@types/node@24.13.3)':
dependencies:
'@inquirer/ansi': 2.0.5
'@inquirer/figures': 2.0.5
- '@inquirer/type': 4.0.5(@types/node@24.13.2)
+ '@inquirer/type': 4.0.5(@types/node@24.13.3)
cli-width: 4.1.0
fast-wrap-ansi: 0.2.2
mute-stream: 3.0.0
signal-exit: 4.1.0
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
optional: true
- '@inquirer/editor@4.2.23(@types/node@24.13.2)':
+ '@inquirer/editor@4.2.23(@types/node@24.13.3)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
- '@inquirer/external-editor': 1.0.3(@types/node@24.13.2)
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
+ '@inquirer/external-editor': 1.0.3(@types/node@24.13.3)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/expand@4.0.23(@types/node@24.13.2)':
+ '@inquirer/expand@4.0.23(@types/node@24.13.3)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/external-editor@1.0.3(@types/node@24.13.2)':
+ '@inquirer/external-editor@1.0.3(@types/node@24.13.3)':
dependencies:
chardet: 2.1.1
iconv-lite: 0.7.2
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
'@inquirer/figures@1.0.15': {}
'@inquirer/figures@2.0.5':
optional: true
- '@inquirer/input@4.3.1(@types/node@24.13.2)':
+ '@inquirer/input@4.3.1(@types/node@24.13.3)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/number@3.0.23(@types/node@24.13.2)':
+ '@inquirer/number@3.0.23(@types/node@24.13.3)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/password@4.0.23(@types/node@24.13.2)':
+ '@inquirer/password@4.0.23(@types/node@24.13.3)':
dependencies:
'@inquirer/ansi': 1.0.2
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/prompts@7.10.1(@types/node@24.13.2)':
+ '@inquirer/prompts@7.10.1(@types/node@24.13.3)':
dependencies:
- '@inquirer/checkbox': 4.3.2(@types/node@24.13.2)
- '@inquirer/confirm': 5.1.21(@types/node@24.13.2)
- '@inquirer/editor': 4.2.23(@types/node@24.13.2)
- '@inquirer/expand': 4.0.23(@types/node@24.13.2)
- '@inquirer/input': 4.3.1(@types/node@24.13.2)
- '@inquirer/number': 3.0.23(@types/node@24.13.2)
- '@inquirer/password': 4.0.23(@types/node@24.13.2)
- '@inquirer/rawlist': 4.1.11(@types/node@24.13.2)
- '@inquirer/search': 3.2.2(@types/node@24.13.2)
- '@inquirer/select': 4.4.2(@types/node@24.13.2)
+ '@inquirer/checkbox': 4.3.2(@types/node@24.13.3)
+ '@inquirer/confirm': 5.1.21(@types/node@24.13.3)
+ '@inquirer/editor': 4.2.23(@types/node@24.13.3)
+ '@inquirer/expand': 4.0.23(@types/node@24.13.3)
+ '@inquirer/input': 4.3.1(@types/node@24.13.3)
+ '@inquirer/number': 3.0.23(@types/node@24.13.3)
+ '@inquirer/password': 4.0.23(@types/node@24.13.3)
+ '@inquirer/rawlist': 4.1.11(@types/node@24.13.3)
+ '@inquirer/search': 3.2.2(@types/node@24.13.3)
+ '@inquirer/select': 4.4.2(@types/node@24.13.3)
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/rawlist@4.1.11(@types/node@24.13.2)':
+ '@inquirer/rawlist@4.1.11(@types/node@24.13.3)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/search@3.2.2(@types/node@24.13.2)':
+ '@inquirer/search@3.2.2(@types/node@24.13.3)':
dependencies:
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
'@inquirer/figures': 1.0.15
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/select@4.4.2(@types/node@24.13.2)':
+ '@inquirer/select@4.4.2(@types/node@24.13.3)':
dependencies:
'@inquirer/ansi': 1.0.2
- '@inquirer/core': 10.3.2(@types/node@24.13.2)
+ '@inquirer/core': 10.3.2(@types/node@24.13.3)
'@inquirer/figures': 1.0.15
- '@inquirer/type': 3.0.10(@types/node@24.13.2)
+ '@inquirer/type': 3.0.10(@types/node@24.13.3)
yoctocolors-cjs: 2.1.3
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/type@3.0.10(@types/node@24.13.2)':
+ '@inquirer/type@3.0.10(@types/node@24.13.3)':
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
- '@inquirer/type@4.0.5(@types/node@24.13.2)':
+ '@inquirer/type@4.0.5(@types/node@24.13.3)':
optionalDependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
optional: true
'@internationalized/date@3.12.2':
@@ -19243,12 +19254,12 @@ snapshots:
dependencies:
react: 19.2.7
- '@mantine/tiptap@9.4.1(@mantine/core@9.4.1(@mantine/hooks@9.4.1(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@mantine/hooks@9.4.1(react@19.2.7))(@tiptap/extension-link@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))(@tiptap/react@3.27.1(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)':
+ '@mantine/tiptap@9.4.1(@mantine/core@9.4.1(@mantine/hooks@9.4.1(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(@mantine/hooks@9.4.1(react@19.2.7))(@tiptap/extension-link@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))(@tiptap/react@3.27.3(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)':
dependencies:
'@mantine/core': 9.4.1(@mantine/hooks@9.4.1(react@19.2.7))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
'@mantine/hooks': 9.4.1(react@19.2.7)
- '@tiptap/extension-link': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
- '@tiptap/react': 3.27.1(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
+ '@tiptap/extension-link': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
+ '@tiptap/react': 3.27.3(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)
react: 19.2.7
react-dom: 19.2.7(react@19.2.7)
@@ -19744,61 +19755,61 @@ snapshots:
'@oxc-project/types@0.138.0': {}
- '@oxfmt/binding-android-arm-eabi@0.57.0':
+ '@oxfmt/binding-android-arm-eabi@0.58.0':
optional: true
- '@oxfmt/binding-android-arm64@0.57.0':
+ '@oxfmt/binding-android-arm64@0.58.0':
optional: true
- '@oxfmt/binding-darwin-arm64@0.57.0':
+ '@oxfmt/binding-darwin-arm64@0.58.0':
optional: true
- '@oxfmt/binding-darwin-x64@0.57.0':
+ '@oxfmt/binding-darwin-x64@0.58.0':
optional: true
- '@oxfmt/binding-freebsd-x64@0.57.0':
+ '@oxfmt/binding-freebsd-x64@0.58.0':
optional: true
- '@oxfmt/binding-linux-arm-gnueabihf@0.57.0':
+ '@oxfmt/binding-linux-arm-gnueabihf@0.58.0':
optional: true
- '@oxfmt/binding-linux-arm-musleabihf@0.57.0':
+ '@oxfmt/binding-linux-arm-musleabihf@0.58.0':
optional: true
- '@oxfmt/binding-linux-arm64-gnu@0.57.0':
+ '@oxfmt/binding-linux-arm64-gnu@0.58.0':
optional: true
- '@oxfmt/binding-linux-arm64-musl@0.57.0':
+ '@oxfmt/binding-linux-arm64-musl@0.58.0':
optional: true
- '@oxfmt/binding-linux-ppc64-gnu@0.57.0':
+ '@oxfmt/binding-linux-ppc64-gnu@0.58.0':
optional: true
- '@oxfmt/binding-linux-riscv64-gnu@0.57.0':
+ '@oxfmt/binding-linux-riscv64-gnu@0.58.0':
optional: true
- '@oxfmt/binding-linux-riscv64-musl@0.57.0':
+ '@oxfmt/binding-linux-riscv64-musl@0.58.0':
optional: true
- '@oxfmt/binding-linux-s390x-gnu@0.57.0':
+ '@oxfmt/binding-linux-s390x-gnu@0.58.0':
optional: true
- '@oxfmt/binding-linux-x64-gnu@0.57.0':
+ '@oxfmt/binding-linux-x64-gnu@0.58.0':
optional: true
- '@oxfmt/binding-linux-x64-musl@0.57.0':
+ '@oxfmt/binding-linux-x64-musl@0.58.0':
optional: true
- '@oxfmt/binding-openharmony-arm64@0.57.0':
+ '@oxfmt/binding-openharmony-arm64@0.58.0':
optional: true
- '@oxfmt/binding-win32-arm64-msvc@0.57.0':
+ '@oxfmt/binding-win32-arm64-msvc@0.58.0':
optional: true
- '@oxfmt/binding-win32-ia32-msvc@0.57.0':
+ '@oxfmt/binding-win32-ia32-msvc@0.58.0':
optional: true
- '@oxfmt/binding-win32-x64-msvc@0.57.0':
+ '@oxfmt/binding-win32-x64-msvc@0.58.0':
optional: true
'@oxlint/binding-android-arm-eabi@1.72.0':
@@ -20048,8 +20059,14 @@ snapshots:
dependencies:
'@posthog/types': 1.392.0
+ '@posthog/core@1.40.0':
+ dependencies:
+ '@posthog/types': 1.393.0
+
'@posthog/types@1.392.0': {}
+ '@posthog/types@1.393.0': {}
+
'@protobufjs/aspromise@1.1.2': {}
'@protobufjs/base64@1.1.2': {}
@@ -20263,21 +20280,21 @@ snapshots:
'@rvf/set-get@7.0.1': {}
- '@scalar/agent-chat@0.12.16(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)':
+ '@scalar/agent-chat@0.12.18(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)':
dependencies:
'@ai-sdk/vue': 3.0.33(vue@3.5.35(typescript@6.0.3))(zod@4.4.3)
- '@scalar/api-client': 3.13.1(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)
- '@scalar/components': 0.27.4(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/api-client': 3.13.3(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/components': 0.27.6(tailwindcss@4.3.2)(typescript@6.0.3)
'@scalar/helpers': 0.9.0
'@scalar/icons': 0.7.3(typescript@6.0.3)
'@scalar/json-magic': 0.12.17
'@scalar/openapi-types': 0.9.1
- '@scalar/schemas': 0.7.1
+ '@scalar/schemas': 0.7.2
'@scalar/themes': 0.16.2
- '@scalar/types': 0.16.1
+ '@scalar/types': 0.16.2
'@scalar/use-toasts': 0.10.2(typescript@6.0.3)
'@scalar/validation': 0.6.0
- '@scalar/workspace-store': 0.55.2(typescript@6.0.3)
+ '@scalar/workspace-store': 0.55.3(typescript@6.0.3)
'@vueuse/core': 13.9.0(vue@3.5.35(typescript@6.0.3))
ai: 6.0.33(zod@4.4.3)
js-base64: 3.7.8
@@ -20301,25 +20318,25 @@ snapshots:
- universal-cookie
- zod
- '@scalar/api-client@3.13.1(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)':
+ '@scalar/api-client@3.13.3(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)':
dependencies:
'@headlessui/tailwindcss': 0.2.2(tailwindcss@4.3.2)
'@headlessui/vue': 1.7.23(vue@3.5.35(typescript@6.0.3))
- '@scalar/blocks': 0.1.2(tailwindcss@4.3.2)(typescript@6.0.3)
- '@scalar/components': 0.27.4(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/blocks': 0.1.4(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/components': 0.27.6(tailwindcss@4.3.2)(typescript@6.0.3)
'@scalar/helpers': 0.9.0
'@scalar/icons': 0.7.3(typescript@6.0.3)
- '@scalar/oas-utils': 0.19.3(typescript@6.0.3)
+ '@scalar/oas-utils': 0.19.4(typescript@6.0.3)
'@scalar/openapi-types': 0.9.1
- '@scalar/sidebar': 0.9.27(tailwindcss@4.3.2)(typescript@6.0.3)
- '@scalar/snippetz': 0.9.20
+ '@scalar/sidebar': 0.9.29(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/snippetz': 0.9.21
'@scalar/themes': 0.16.2
'@scalar/typebox': 0.1.3
- '@scalar/types': 0.16.1
+ '@scalar/types': 0.16.2
'@scalar/use-codemirror': 0.14.12(typescript@6.0.3)
'@scalar/use-hooks': 0.4.7(typescript@6.0.3)
'@scalar/use-toasts': 0.10.2(typescript@6.0.3)
- '@scalar/workspace-store': 0.55.2(typescript@6.0.3)
+ '@scalar/workspace-store': 0.55.3(typescript@6.0.3)
'@vueuse/core': 13.9.0(vue@3.5.35(typescript@6.0.3))
'@vueuse/integrations': 13.9.0(focus-trap@7.8.0)(fuse.js@7.4.2)(nprogress@0.2.0)(vue@3.5.35(typescript@6.0.3))
focus-trap: 7.8.0
@@ -20349,10 +20366,10 @@ snapshots:
- typescript
- universal-cookie
- '@scalar/api-reference-react@0.9.52(nprogress@0.2.0)(react@19.2.7)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)':
+ '@scalar/api-reference-react@0.9.54(nprogress@0.2.0)(react@19.2.7)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)':
dependencies:
- '@scalar/api-reference': 1.62.3(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)
- '@scalar/types': 0.16.1
+ '@scalar/api-reference': 1.62.5(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)
+ '@scalar/types': 0.16.2
react: 19.2.7
transitivePeerDependencies:
- '@vue/composition-api'
@@ -20371,26 +20388,26 @@ snapshots:
- universal-cookie
- zod
- '@scalar/api-reference@1.62.3(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)':
+ '@scalar/api-reference@1.62.5(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)':
dependencies:
'@headlessui/vue': 1.7.23(vue@3.5.35(typescript@6.0.3))
- '@scalar/agent-chat': 0.12.16(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)
- '@scalar/api-client': 3.13.1(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)
- '@scalar/blocks': 0.1.2(tailwindcss@4.3.2)(typescript@6.0.3)
- '@scalar/code-highlight': 0.4.0
- '@scalar/components': 0.27.4(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/agent-chat': 0.12.18(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)(zod@4.4.3)
+ '@scalar/api-client': 3.13.3(nprogress@0.2.0)(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/blocks': 0.1.4(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/code-highlight': 0.4.1
+ '@scalar/components': 0.27.6(tailwindcss@4.3.2)(typescript@6.0.3)
'@scalar/helpers': 0.9.0
'@scalar/icons': 0.7.3(typescript@6.0.3)
- '@scalar/oas-utils': 0.19.3(typescript@6.0.3)
- '@scalar/schemas': 0.7.1
- '@scalar/sidebar': 0.9.27(tailwindcss@4.3.2)(typescript@6.0.3)
- '@scalar/snippetz': 0.9.20
+ '@scalar/oas-utils': 0.19.4(typescript@6.0.3)
+ '@scalar/schemas': 0.7.2
+ '@scalar/sidebar': 0.9.29(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/snippetz': 0.9.21
'@scalar/themes': 0.16.2
- '@scalar/types': 0.16.1
+ '@scalar/types': 0.16.2
'@scalar/use-hooks': 0.4.7(typescript@6.0.3)
'@scalar/use-toasts': 0.10.2(typescript@6.0.3)
'@scalar/validation': 0.6.0
- '@scalar/workspace-store': 0.55.2(typescript@6.0.3)
+ '@scalar/workspace-store': 0.55.3(typescript@6.0.3)
'@unhead/vue': 2.1.15(vue@3.5.35(typescript@6.0.3))
'@vueuse/core': 13.9.0(vue@3.5.35(typescript@6.0.3))
fuse.js: 7.4.2
@@ -20419,15 +20436,15 @@ snapshots:
dependencies:
'@scalar/helpers': 0.9.0
- '@scalar/blocks@0.1.2(tailwindcss@4.3.2)(typescript@6.0.3)':
+ '@scalar/blocks@0.1.4(tailwindcss@4.3.2)(typescript@6.0.3)':
dependencies:
- '@scalar/components': 0.27.4(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/components': 0.27.6(tailwindcss@4.3.2)(typescript@6.0.3)
'@scalar/helpers': 0.9.0
'@scalar/icons': 0.7.3(typescript@6.0.3)
- '@scalar/snippetz': 0.9.20
+ '@scalar/snippetz': 0.9.21
'@scalar/themes': 0.16.2
- '@scalar/types': 0.16.1
- '@scalar/workspace-store': 0.55.2(typescript@6.0.3)
+ '@scalar/types': 0.16.2
+ '@scalar/workspace-store': 0.55.3(typescript@6.0.3)
'@types/har-format': 1.2.16
js-base64: 3.7.8
vue: 3.5.35(typescript@6.0.3)
@@ -20437,7 +20454,7 @@ snapshots:
- tailwindcss
- typescript
- '@scalar/code-highlight@0.4.0':
+ '@scalar/code-highlight@0.4.1':
dependencies:
hast-util-to-text: 4.0.2
highlight.js: 11.11.1
@@ -20457,13 +20474,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@scalar/components@0.27.4(tailwindcss@4.3.2)(typescript@6.0.3)':
+ '@scalar/components@0.27.6(tailwindcss@4.3.2)(typescript@6.0.3)':
dependencies:
'@floating-ui/utils': 0.2.10
'@floating-ui/vue': 1.1.9(vue@3.5.35(typescript@6.0.3))
'@headlessui/tailwindcss': 0.2.2(tailwindcss@4.3.2)
'@headlessui/vue': 1.7.23(vue@3.5.35(typescript@6.0.3))
- '@scalar/code-highlight': 0.4.0
+ '@scalar/code-highlight': 0.4.1
'@scalar/helpers': 0.9.0
'@scalar/icons': 0.7.3(typescript@6.0.3)
'@scalar/themes': 0.16.2
@@ -20496,12 +20513,12 @@ snapshots:
pathe: 2.0.3
yaml: 2.9.0
- '@scalar/oas-utils@0.19.3(typescript@6.0.3)':
+ '@scalar/oas-utils@0.19.4(typescript@6.0.3)':
dependencies:
'@scalar/helpers': 0.9.0
'@scalar/themes': 0.16.2
- '@scalar/types': 0.16.1
- '@scalar/workspace-store': 0.55.2(typescript@6.0.3)
+ '@scalar/types': 0.16.2
+ '@scalar/workspace-store': 0.55.3(typescript@6.0.3)
flatted: 3.4.2
vue: 3.5.35(typescript@6.0.3)
yaml: 2.9.0
@@ -20514,19 +20531,19 @@ snapshots:
dependencies:
'@scalar/openapi-types': 0.9.1
- '@scalar/schemas@0.7.1':
+ '@scalar/schemas@0.7.2':
dependencies:
'@scalar/helpers': 0.9.0
'@scalar/validation': 0.6.0
- '@scalar/sidebar@0.9.27(tailwindcss@4.3.2)(typescript@6.0.3)':
+ '@scalar/sidebar@0.9.29(tailwindcss@4.3.2)(typescript@6.0.3)':
dependencies:
- '@scalar/components': 0.27.4(tailwindcss@4.3.2)(typescript@6.0.3)
+ '@scalar/components': 0.27.6(tailwindcss@4.3.2)(typescript@6.0.3)
'@scalar/helpers': 0.9.0
'@scalar/icons': 0.7.3(typescript@6.0.3)
'@scalar/themes': 0.16.2
'@scalar/use-hooks': 0.4.7(typescript@6.0.3)
- '@scalar/workspace-store': 0.55.2(typescript@6.0.3)
+ '@scalar/workspace-store': 0.55.3(typescript@6.0.3)
vue: 3.5.35(typescript@6.0.3)
transitivePeerDependencies:
- '@vue/composition-api'
@@ -20534,10 +20551,10 @@ snapshots:
- tailwindcss
- typescript
- '@scalar/snippetz@0.9.20':
+ '@scalar/snippetz@0.9.21':
dependencies:
'@scalar/helpers': 0.9.0
- '@scalar/types': 0.16.1
+ '@scalar/types': 0.16.2
js-base64: 3.7.8
stringify-object: 6.0.0
@@ -20547,7 +20564,7 @@ snapshots:
'@scalar/typebox@0.1.3': {}
- '@scalar/types@0.16.1':
+ '@scalar/types@0.16.2':
dependencies:
'@scalar/helpers': 0.9.0
nanoid: 5.1.16
@@ -20594,16 +20611,16 @@ snapshots:
'@scalar/validation@0.6.0': {}
- '@scalar/workspace-store@0.55.2(typescript@6.0.3)':
+ '@scalar/workspace-store@0.55.3(typescript@6.0.3)':
dependencies:
'@scalar/asyncapi-upgrader': 0.1.2
'@scalar/helpers': 0.9.0
'@scalar/json-magic': 0.12.17
'@scalar/openapi-upgrader': 0.2.9
- '@scalar/schemas': 0.7.1
- '@scalar/snippetz': 0.9.20
+ '@scalar/schemas': 0.7.2
+ '@scalar/snippetz': 0.9.21
'@scalar/typebox': 0.1.3
- '@scalar/types': 0.16.1
+ '@scalar/types': 0.16.2
'@scalar/validation': 0.6.0
js-base64: 3.7.8
type-fest: 5.7.0
@@ -21152,187 +21169,187 @@ snapshots:
- bare-buffer
- supports-color
- '@tiptap/core@3.27.1(@tiptap/pm@3.27.1)':
+ '@tiptap/core@3.27.3(@tiptap/pm@3.27.3)':
dependencies:
- '@tiptap/pm': 3.27.1
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-blockquote@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-blockquote@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-bold@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-bold@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-bubble-menu@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)':
+ '@tiptap/extension-bubble-menu@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)':
dependencies:
'@floating-ui/dom': 1.7.6
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
optional: true
- '@tiptap/extension-bullet-list@3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-bullet-list@3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-list': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-list': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-code-block@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)':
+ '@tiptap/extension-code-block@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-code@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-code@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-color@3.27.1(@tiptap/extension-text-style@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1)))':
+ '@tiptap/extension-color@3.27.3(@tiptap/extension-text-style@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3)))':
dependencies:
- '@tiptap/extension-text-style': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
+ '@tiptap/extension-text-style': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
- '@tiptap/extension-document@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-document@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-dropcursor@3.27.1(@tiptap/extensions@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-dropcursor@3.27.3(@tiptap/extensions@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extensions': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extensions': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-floating-menu@3.27.1(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)':
+ '@tiptap/extension-floating-menu@3.27.3(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)':
dependencies:
'@floating-ui/dom': 1.7.6
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
optional: true
- '@tiptap/extension-gapcursor@3.27.1(@tiptap/extensions@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-gapcursor@3.27.3(@tiptap/extensions@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extensions': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extensions': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-hard-break@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-hard-break@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-heading@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-heading@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-highlight@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-highlight@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-horizontal-rule@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)':
+ '@tiptap/extension-horizontal-rule@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-image@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-image@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-italic@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-italic@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-link@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)':
+ '@tiptap/extension-link@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
linkifyjs: 4.3.3
- '@tiptap/extension-list-item@3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-list-item@3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-list': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-list': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-list-keymap@3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-list-keymap@3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-list': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-list': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)':
+ '@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-ordered-list@3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-ordered-list@3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-list': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-list': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-paragraph@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-paragraph@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-placeholder@3.27.1(@tiptap/extensions@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-placeholder@3.27.3(@tiptap/extensions@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extensions': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extensions': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-strike@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-strike@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-table-cell@3.27.1(@tiptap/extension-table@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-table-cell@3.27.3(@tiptap/extension-table@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-table': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-table': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-table-header@3.27.1(@tiptap/extension-table@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-table-header@3.27.3(@tiptap/extension-table@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-table': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-table': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-table-row@3.27.1(@tiptap/extension-table@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-table-row@3.27.3(@tiptap/extension-table@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-table': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-table': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-table@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)':
+ '@tiptap/extension-table@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
- '@tiptap/extension-task-item@3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-task-item@3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-list': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-list': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-task-list@3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-task-list@3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/extension-list': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-list': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
- '@tiptap/extension-text-align@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-text-align@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-text-style@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-text-style@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-text@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-text@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extension-underline@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))':
+ '@tiptap/extension-underline@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
- '@tiptap/extensions@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)':
+ '@tiptap/extensions@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
- '@tiptap/pm@3.27.1':
+ '@tiptap/pm@3.27.3':
dependencies:
- prosemirror-changeset: 2.3.0
- prosemirror-commands: 1.6.2
- prosemirror-dropcursor: 1.8.1
- prosemirror-gapcursor: 1.3.2
- prosemirror-history: 1.4.1
+ prosemirror-changeset: 2.4.1
+ prosemirror-commands: 1.7.1
+ prosemirror-dropcursor: 1.8.3
+ prosemirror-gapcursor: 1.4.1
+ prosemirror-history: 1.5.0
prosemirror-inputrules: 1.5.1
prosemirror-keymap: 1.2.3
- prosemirror-model: 1.25.7
+ prosemirror-model: 1.25.10
prosemirror-schema-list: 1.5.1
prosemirror-state: 1.4.4
prosemirror-tables: 1.8.5
prosemirror-transform: 1.12.0
- prosemirror-view: 1.41.8
+ prosemirror-view: 1.42.0
- '@tiptap/react@3.27.1(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)':
+ '@tiptap/react@3.27.3(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)(@types/react-dom@19.2.3(@types/react@19.2.17))(@types/react@19.2.17)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
'@types/react': 19.2.17
'@types/react-dom': 19.2.3(@types/react@19.2.17)
'@types/use-sync-external-store': 0.0.6
@@ -21341,37 +21358,37 @@ snapshots:
react-dom: 19.2.7(react@19.2.7)
use-sync-external-store: 1.6.0(react@19.2.7)
optionalDependencies:
- '@tiptap/extension-bubble-menu': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
- '@tiptap/extension-floating-menu': 3.27.1(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
+ '@tiptap/extension-bubble-menu': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
+ '@tiptap/extension-floating-menu': 3.27.3(@floating-ui/dom@1.7.6)(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
transitivePeerDependencies:
- '@floating-ui/dom'
- '@tiptap/starter-kit@3.27.1':
+ '@tiptap/starter-kit@3.27.3':
dependencies:
- '@tiptap/core': 3.27.1(@tiptap/pm@3.27.1)
- '@tiptap/extension-blockquote': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-bold': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-bullet-list': 3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
- '@tiptap/extension-code': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-code-block': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
- '@tiptap/extension-document': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-dropcursor': 3.27.1(@tiptap/extensions@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
- '@tiptap/extension-gapcursor': 3.27.1(@tiptap/extensions@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
- '@tiptap/extension-hard-break': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-heading': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-horizontal-rule': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
- '@tiptap/extension-italic': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-link': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
- '@tiptap/extension-list': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
- '@tiptap/extension-list-item': 3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
- '@tiptap/extension-list-keymap': 3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
- '@tiptap/extension-ordered-list': 3.27.1(@tiptap/extension-list@3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1))
- '@tiptap/extension-paragraph': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-strike': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-text': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extension-underline': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))
- '@tiptap/extensions': 3.27.1(@tiptap/core@3.27.1(@tiptap/pm@3.27.1))(@tiptap/pm@3.27.1)
- '@tiptap/pm': 3.27.1
+ '@tiptap/core': 3.27.3(@tiptap/pm@3.27.3)
+ '@tiptap/extension-blockquote': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-bold': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-bullet-list': 3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
+ '@tiptap/extension-code': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-code-block': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
+ '@tiptap/extension-document': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-dropcursor': 3.27.3(@tiptap/extensions@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
+ '@tiptap/extension-gapcursor': 3.27.3(@tiptap/extensions@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
+ '@tiptap/extension-hard-break': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-heading': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-horizontal-rule': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
+ '@tiptap/extension-italic': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-link': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
+ '@tiptap/extension-list': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
+ '@tiptap/extension-list-item': 3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
+ '@tiptap/extension-list-keymap': 3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
+ '@tiptap/extension-ordered-list': 3.27.3(@tiptap/extension-list@3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3))
+ '@tiptap/extension-paragraph': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-strike': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-text': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extension-underline': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))
+ '@tiptap/extensions': 3.27.3(@tiptap/core@3.27.3(@tiptap/pm@3.27.3))(@tiptap/pm@3.27.3)
+ '@tiptap/pm': 3.27.3
'@trpc/client@11.18.0(@trpc/server@11.18.0(typescript@6.0.3))(typescript@6.0.3)':
dependencies:
@@ -21412,29 +21429,29 @@ snapshots:
'@tsconfig/docusaurus@2.0.9': {}
- '@turbo/darwin-64@2.10.2':
+ '@turbo/darwin-64@2.10.4':
optional: true
- '@turbo/darwin-arm64@2.10.2':
+ '@turbo/darwin-arm64@2.10.4':
optional: true
- '@turbo/gen@2.10.2(@types/node@24.13.2)':
+ '@turbo/gen@2.10.4(@types/node@24.13.3)':
dependencies:
- '@inquirer/prompts': 7.10.1(@types/node@24.13.2)
+ '@inquirer/prompts': 7.10.1(@types/node@24.13.3)
esbuild: 0.28.1
transitivePeerDependencies:
- '@types/node'
- '@turbo/linux-64@2.10.2':
+ '@turbo/linux-64@2.10.4':
optional: true
- '@turbo/linux-arm64@2.10.2':
+ '@turbo/linux-arm64@2.10.4':
optional: true
- '@turbo/windows-64@2.10.2':
+ '@turbo/windows-64@2.10.4':
optional: true
- '@turbo/windows-arm64@2.10.2':
+ '@turbo/windows-arm64@2.10.4':
optional: true
'@tybys/wasm-util@0.10.3':
@@ -21444,7 +21461,7 @@ snapshots:
'@types/adm-zip@0.5.8':
dependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
'@types/aws-lambda@8.10.146': {}
@@ -21454,7 +21471,7 @@ snapshots:
'@types/better-sqlite3@7.6.13':
dependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
'@types/body-parser@1.19.5':
dependencies:
@@ -21720,11 +21737,15 @@ snapshots:
dependencies:
undici-types: 7.18.2
+ '@types/node@24.13.3':
+ dependencies:
+ undici-types: 7.18.2
+
'@types/normalize-package-data@2.4.4': {}
'@types/pg@8.20.0':
dependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
pg-protocol: 1.15.0
pg-types: 2.2.0
@@ -21784,7 +21805,7 @@ snapshots:
'@types/set-cookie-parser@2.4.10':
dependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
optional: true
'@types/sockjs@0.3.36':
@@ -21930,7 +21951,7 @@ snapshots:
obug: 2.1.1
std-env: 4.0.0
tinyrainbow: 3.1.0
- vitest: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.2)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
+ vitest: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
'@vitest/expect@4.1.9':
dependencies:
@@ -21941,15 +21962,25 @@ snapshots:
chai: 6.2.2
tinyrainbow: 3.1.0
- '@vitest/mocker@4.1.9(msw@2.14.6(@types/node@24.13.2)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))':
+ '@vitest/mocker@4.1.9(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))':
dependencies:
'@vitest/spy': 4.1.9
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- msw: 2.14.6(@types/node@24.13.2)(typescript@6.0.3)
+ msw: 2.14.6(@types/node@24.13.3)(typescript@6.0.3)
vite: 8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)
+ '@vitest/mocker@4.1.9(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.3)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))':
+ dependencies:
+ '@vitest/spy': 4.1.9
+ estree-walker: 3.0.3
+ magic-string: 0.30.21
+ optionalDependencies:
+ msw: 2.14.6(@types/node@24.13.3)(typescript@6.0.3)
+ vite: 8.1.3(@types/node@24.13.3)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)
+ optional: true
+
'@vitest/pretty-format@4.1.9':
dependencies:
tinyrainbow: 3.1.0
@@ -21977,7 +22008,7 @@ snapshots:
sirv: 3.0.2
tinyglobby: 0.2.17
tinyrainbow: 3.1.0
- vitest: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.2)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
+ vitest: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
'@vitest/utils@4.1.9':
dependencies:
@@ -22529,10 +22560,10 @@ snapshots:
before-after-hook@4.0.0: {}
- better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.2))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)):
+ better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)):
dependencies:
'@better-auth/core': 1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0)
- '@better-auth/drizzle-adapter': 1.6.15(@better-auth/core@1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.1)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))
+ '@better-auth/drizzle-adapter': 1.6.15(@better-auth/core@1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.1)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))
'@better-auth/kysely-adapter': 1.6.15(@better-auth/core@1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.1)(kysely@0.29.2)
'@better-auth/memory-adapter': 1.6.15(@better-auth/core@1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.1)
'@better-auth/mongo-adapter': 1.6.15(@better-auth/core@1.6.15(@better-auth/utils@0.4.1)(@better-fetch/fetch@1.1.21)(@opentelemetry/api@1.9.0)(better-call@1.3.5(zod@4.4.3))(jose@6.2.3)(kysely@0.29.2)(nanostores@1.3.0))(@better-auth/utils@0.4.1)
@@ -22551,13 +22582,13 @@ snapshots:
optionalDependencies:
better-sqlite3: 12.11.1
drizzle-kit: 0.31.10
- drizzle-orm: 0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1)
- mysql2: 3.22.5(@types/node@24.13.2)
+ drizzle-orm: 0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1)
+ mysql2: 3.22.5(@types/node@24.13.3)
next: 16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)
pg: 8.22.0
react: 19.2.7
react-dom: 19.2.7(react@19.2.7)
- vitest: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.2)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
+ vitest: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.3)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.3)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
vue: 3.5.35(typescript@6.0.3)
transitivePeerDependencies:
- '@cloudflare/workers-types'
@@ -23727,10 +23758,6 @@ snapshots:
dependencies:
domelementtype: 2.3.0
- dompurify@3.4.10:
- optionalDependencies:
- '@types/trusted-types': 2.0.7
-
dompurify@3.4.11:
optionalDependencies:
'@types/trusted-types': 2.0.7
@@ -23795,6 +23822,19 @@ snapshots:
pg: 8.22.0
sql.js: 1.14.1
+ drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1):
+ optionalDependencies:
+ '@libsql/client-wasm': 0.14.0
+ '@opentelemetry/api': 1.9.0
+ '@types/better-sqlite3': 7.6.13
+ '@types/pg': 8.20.0
+ better-sqlite3: 12.11.1
+ gel: 2.0.0
+ kysely: 0.29.2
+ mysql2: 3.22.5(@types/node@24.13.3)
+ pg: 8.22.0
+ sql.js: 1.14.1
+
drizzle-zod@0.8.3(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))(zod@4.4.3):
dependencies:
drizzle-orm: 0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1)
@@ -25418,7 +25458,7 @@ snapshots:
jest-worker@27.5.1:
dependencies:
- '@types/node': 24.13.2
+ '@types/node': 24.13.3
merge-stream: 2.0.0
supports-color: 8.1.1
@@ -26081,7 +26121,7 @@ snapshots:
d3-sankey: 0.12.3
dagre-d3-es: 7.0.14
dayjs: 1.11.21
- dompurify: 3.4.10
+ dompurify: 3.4.11
es-toolkit: 1.46.1
katex: 0.16.47
khroma: 2.1.0
@@ -26474,9 +26514,9 @@ snapshots:
ms@2.1.3: {}
- msw@2.14.6(@types/node@24.13.2)(typescript@6.0.3):
+ msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3):
dependencies:
- '@inquirer/confirm': 6.0.13(@types/node@24.13.2)
+ '@inquirer/confirm': 6.0.13(@types/node@24.13.3)
'@mswjs/interceptors': 0.41.9
'@open-draft/deferred-promise': 3.0.0
'@types/statuses': 2.0.6
@@ -26527,6 +26567,19 @@ snapshots:
named-placeholders: 1.1.6
sql-escaper: 1.3.3
+ mysql2@3.22.5(@types/node@24.13.3):
+ dependencies:
+ '@types/node': 24.13.3
+ aws-ssl-profiles: 1.1.2
+ denque: 2.1.0
+ generate-function: 2.3.1
+ iconv-lite: 0.7.2
+ long: 5.3.2
+ lru.min: 1.1.4
+ named-placeholders: 1.1.6
+ sql-escaper: 1.3.3
+ optional: true
+
mz@2.7.0:
dependencies:
any-promise: 1.3.0
@@ -26789,29 +26842,29 @@ snapshots:
outvariant@1.4.3:
optional: true
- oxfmt@0.57.0:
+ oxfmt@0.58.0:
dependencies:
tinypool: 2.1.0
optionalDependencies:
- '@oxfmt/binding-android-arm-eabi': 0.57.0
- '@oxfmt/binding-android-arm64': 0.57.0
- '@oxfmt/binding-darwin-arm64': 0.57.0
- '@oxfmt/binding-darwin-x64': 0.57.0
- '@oxfmt/binding-freebsd-x64': 0.57.0
- '@oxfmt/binding-linux-arm-gnueabihf': 0.57.0
- '@oxfmt/binding-linux-arm-musleabihf': 0.57.0
- '@oxfmt/binding-linux-arm64-gnu': 0.57.0
- '@oxfmt/binding-linux-arm64-musl': 0.57.0
- '@oxfmt/binding-linux-ppc64-gnu': 0.57.0
- '@oxfmt/binding-linux-riscv64-gnu': 0.57.0
- '@oxfmt/binding-linux-riscv64-musl': 0.57.0
- '@oxfmt/binding-linux-s390x-gnu': 0.57.0
- '@oxfmt/binding-linux-x64-gnu': 0.57.0
- '@oxfmt/binding-linux-x64-musl': 0.57.0
- '@oxfmt/binding-openharmony-arm64': 0.57.0
- '@oxfmt/binding-win32-arm64-msvc': 0.57.0
- '@oxfmt/binding-win32-ia32-msvc': 0.57.0
- '@oxfmt/binding-win32-x64-msvc': 0.57.0
+ '@oxfmt/binding-android-arm-eabi': 0.58.0
+ '@oxfmt/binding-android-arm64': 0.58.0
+ '@oxfmt/binding-darwin-arm64': 0.58.0
+ '@oxfmt/binding-darwin-x64': 0.58.0
+ '@oxfmt/binding-freebsd-x64': 0.58.0
+ '@oxfmt/binding-linux-arm-gnueabihf': 0.58.0
+ '@oxfmt/binding-linux-arm-musleabihf': 0.58.0
+ '@oxfmt/binding-linux-arm64-gnu': 0.58.0
+ '@oxfmt/binding-linux-arm64-musl': 0.58.0
+ '@oxfmt/binding-linux-ppc64-gnu': 0.58.0
+ '@oxfmt/binding-linux-riscv64-gnu': 0.58.0
+ '@oxfmt/binding-linux-riscv64-musl': 0.58.0
+ '@oxfmt/binding-linux-s390x-gnu': 0.58.0
+ '@oxfmt/binding-linux-x64-gnu': 0.58.0
+ '@oxfmt/binding-linux-x64-musl': 0.58.0
+ '@oxfmt/binding-openharmony-arm64': 0.58.0
+ '@oxfmt/binding-win32-arm64-msvc': 0.58.0
+ '@oxfmt/binding-win32-ia32-msvc': 0.58.0
+ '@oxfmt/binding-win32-x64-msvc': 0.58.0
oxlint@1.72.0:
optionalDependencies:
@@ -27622,16 +27675,18 @@ snapshots:
posthog-docusaurus@2.0.5: {}
- posthog-js@1.396.5:
+ posthog-js@1.399.0(preact-render-to-string@6.5.11):
dependencies:
- '@posthog/core': 1.39.6
- '@posthog/types': 1.392.0
+ '@posthog/core': 1.40.0
+ '@posthog/types': 1.393.0
core-js: 3.49.0
dompurify: 3.4.11
fflate: 0.4.8
- preact: 10.29.2
+ preact: 10.29.7(preact-render-to-string@6.5.11)
query-selector-shadow-dom: 1.0.1
web-vitals: 5.3.0
+ transitivePeerDependencies:
+ - preact-render-to-string
posthog-node@5.39.4(rxjs@7.8.2):
dependencies:
@@ -27643,9 +27698,16 @@ snapshots:
dependencies:
preact: 10.24.3
+ preact-render-to-string@6.5.11(preact@10.29.7):
+ dependencies:
+ preact: 10.29.7(preact-render-to-string@6.5.11)
+ optional: true
+
preact@10.24.3: {}
- preact@10.29.2: {}
+ preact@10.29.7(preact-render-to-string@6.5.11):
+ optionalDependencies:
+ preact-render-to-string: 6.5.11(preact@10.29.7)
prebuild-install@7.1.2:
dependencies:
@@ -27717,34 +27779,34 @@ snapshots:
property-information@7.0.0: {}
- prosemirror-changeset@2.3.0:
+ prosemirror-changeset@2.4.1:
dependencies:
prosemirror-transform: 1.12.0
- prosemirror-commands@1.6.2:
+ prosemirror-commands@1.7.1:
dependencies:
- prosemirror-model: 1.25.7
+ prosemirror-model: 1.25.10
prosemirror-state: 1.4.4
prosemirror-transform: 1.12.0
- prosemirror-dropcursor@1.8.1:
+ prosemirror-dropcursor@1.8.3:
dependencies:
prosemirror-state: 1.4.4
prosemirror-transform: 1.12.0
- prosemirror-view: 1.41.8
+ prosemirror-view: 1.42.0
- prosemirror-gapcursor@1.3.2:
+ prosemirror-gapcursor@1.4.1:
dependencies:
prosemirror-keymap: 1.2.3
- prosemirror-model: 1.25.7
+ prosemirror-model: 1.25.10
prosemirror-state: 1.4.4
- prosemirror-view: 1.41.8
+ prosemirror-view: 1.42.0
- prosemirror-history@1.4.1:
+ prosemirror-history@1.5.0:
dependencies:
prosemirror-state: 1.4.4
prosemirror-transform: 1.12.0
- prosemirror-view: 1.41.8
+ prosemirror-view: 1.42.0
rope-sequence: 1.3.4
prosemirror-inputrules@1.5.1:
@@ -27757,37 +27819,37 @@ snapshots:
prosemirror-state: 1.4.4
w3c-keyname: 2.2.8
- prosemirror-model@1.25.7:
+ prosemirror-model@1.25.10:
dependencies:
orderedmap: 2.1.1
prosemirror-schema-list@1.5.1:
dependencies:
- prosemirror-model: 1.25.7
+ prosemirror-model: 1.25.10
prosemirror-state: 1.4.4
prosemirror-transform: 1.12.0
prosemirror-state@1.4.4:
dependencies:
- prosemirror-model: 1.25.7
+ prosemirror-model: 1.25.10
prosemirror-transform: 1.12.0
- prosemirror-view: 1.41.8
+ prosemirror-view: 1.42.0
prosemirror-tables@1.8.5:
dependencies:
prosemirror-keymap: 1.2.3
- prosemirror-model: 1.25.7
+ prosemirror-model: 1.25.10
prosemirror-state: 1.4.4
prosemirror-transform: 1.12.0
- prosemirror-view: 1.41.8
+ prosemirror-view: 1.42.0
prosemirror-transform@1.12.0:
dependencies:
- prosemirror-model: 1.25.7
+ prosemirror-model: 1.25.10
- prosemirror-view@1.41.8:
+ prosemirror-view@1.42.0:
dependencies:
- prosemirror-model: 1.25.7
+ prosemirror-model: 1.25.10
prosemirror-state: 1.4.4
prosemirror-transform: 1.12.0
@@ -29107,7 +29169,7 @@ snapshots:
'@swc/counter': 0.1.3
webpack: 5.107.1(@swc/core@1.15.3(@swc/helpers@0.5.15))(clean-css@5.3.3)(cssnano@6.1.2(postcss@8.5.16))(esbuild@0.28.1)(html-minifier-terser@7.2.0)(postcss@8.5.16)
- swiper@14.0.1: {}
+ swiper@14.0.2: {}
swrv@1.2.0(vue@3.5.35(typescript@6.0.3)):
dependencies:
@@ -29366,22 +29428,22 @@ snapshots:
trough@2.2.0: {}
- trpc-to-mcp@1.3.2(@trpc/server@11.18.0(typescript@6.0.3))(better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.2))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)))(mcp-handler@1.1.0(@modelcontextprotocol/sdk@1.29.0(zod@4.4.3))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)))(zod@4.4.3):
+ trpc-to-mcp@1.3.2(@trpc/server@11.18.0(typescript@6.0.3))(better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.3))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)))(mcp-handler@1.1.0(@modelcontextprotocol/sdk@1.29.0(zod@4.4.3))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)))(zod@4.4.3):
dependencies:
'@modelcontextprotocol/sdk': 1.29.0(zod@4.4.3)
'@trpc/server': 11.18.0(typescript@6.0.3)
- better-auth: 1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.2))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3))
+ better-auth: 1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3))
mcp-handler: 1.1.0(@modelcontextprotocol/sdk@1.29.0(zod@4.4.3))(next@16.2.10(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))
zod: 4.4.3
transitivePeerDependencies:
- '@cfworker/json-schema'
- supports-color
- trpc-to-mcp@1.3.2(@trpc/server@11.18.0(typescript@6.0.3))(better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.2))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)))(mcp-handler@1.1.0(@modelcontextprotocol/sdk@1.26.0(zod@4.4.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)))(zod@4.4.3):
+ trpc-to-mcp@1.3.2(@trpc/server@11.18.0(typescript@6.0.3))(better-auth@1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3)))(mcp-handler@1.1.0(@modelcontextprotocol/sdk@1.26.0(zod@4.4.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0)))(zod@4.4.3):
dependencies:
'@modelcontextprotocol/sdk': 1.29.0(zod@4.4.3)
'@trpc/server': 11.18.0(typescript@6.0.3)
- better-auth: 1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.2))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.2))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3))
+ better-auth: 1.6.15(@opentelemetry/api@1.9.0)(better-sqlite3@12.11.1)(drizzle-kit@0.31.10)(drizzle-orm@0.45.2(@libsql/client-wasm@0.14.0)(@opentelemetry/api@1.9.0)(@types/better-sqlite3@7.6.13)(@types/pg@8.20.0)(better-sqlite3@12.11.1)(gel@2.0.0)(kysely@0.29.2)(mysql2@3.22.5(@types/node@24.13.3))(pg@8.22.0)(sql.js@1.14.1))(mysql2@3.22.5(@types/node@24.13.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))(pg@8.22.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(vitest@4.1.9)(vue@3.5.35(typescript@6.0.3))
mcp-handler: 1.1.0(@modelcontextprotocol/sdk@1.26.0(zod@4.4.3))(next@16.2.10(@opentelemetry/api@1.9.0)(@playwright/test@1.61.1)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(sass@1.101.0))
zod: 4.4.3
transitivePeerDependencies:
@@ -29448,14 +29510,14 @@ snapshots:
tunnel@0.0.6: {}
- turbo@2.10.2:
+ turbo@2.10.4:
optionalDependencies:
- '@turbo/darwin-64': 2.10.2
- '@turbo/darwin-arm64': 2.10.2
- '@turbo/linux-64': 2.10.2
- '@turbo/linux-arm64': 2.10.2
- '@turbo/windows-64': 2.10.2
- '@turbo/windows-arm64': 2.10.2
+ '@turbo/darwin-64': 2.10.4
+ '@turbo/darwin-arm64': 2.10.4
+ '@turbo/linux-64': 2.10.4
+ '@turbo/linux-arm64': 2.10.4
+ '@turbo/windows-64': 2.10.4
+ '@turbo/windows-arm64': 2.10.4
tweetnacl@0.14.5: {}
@@ -29795,10 +29857,29 @@ snapshots:
tsx: 4.21.0
yaml: 2.9.0
- vitest@4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.2)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)):
+ vite@8.1.3(@types/node@24.13.3)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0):
+ dependencies:
+ lightningcss: 1.32.0
+ picomatch: 4.0.4
+ postcss: 8.5.16
+ rolldown: 1.1.4
+ tinyglobby: 0.2.17
+ optionalDependencies:
+ '@types/node': 24.13.3
+ esbuild: 0.28.1
+ fsevents: 2.3.3
+ jiti: 2.7.0
+ sass: 1.101.0
+ sugarss: 5.0.0(postcss@8.5.16)
+ terser: 5.46.1
+ tsx: 4.21.0
+ yaml: 2.9.0
+ optional: true
+
+ vitest@4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.2)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)):
dependencies:
'@vitest/expect': 4.1.9
- '@vitest/mocker': 4.1.9(msw@2.14.6(@types/node@24.13.2)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
+ '@vitest/mocker': 4.1.9(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.2)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
'@vitest/pretty-format': 4.1.9
'@vitest/runner': 4.1.9
'@vitest/snapshot': 4.1.9
@@ -29826,6 +29907,38 @@ snapshots:
transitivePeerDependencies:
- msw
+ vitest@4.1.9(@opentelemetry/api@1.9.0)(@types/node@24.13.3)(@vitest/coverage-v8@4.1.9)(@vitest/ui@4.1.9)(jsdom@29.1.1(@noble/hashes@2.0.1))(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.3)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)):
+ dependencies:
+ '@vitest/expect': 4.1.9
+ '@vitest/mocker': 4.1.9(msw@2.14.6(@types/node@24.13.3)(typescript@6.0.3))(vite@8.1.3(@types/node@24.13.3)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0))
+ '@vitest/pretty-format': 4.1.9
+ '@vitest/runner': 4.1.9
+ '@vitest/snapshot': 4.1.9
+ '@vitest/spy': 4.1.9
+ '@vitest/utils': 4.1.9
+ es-module-lexer: 2.1.0
+ expect-type: 1.3.0
+ magic-string: 0.30.21
+ obug: 2.1.1
+ pathe: 2.0.3
+ picomatch: 4.0.4
+ std-env: 4.0.0
+ tinybench: 2.9.0
+ tinyexec: 1.0.2
+ tinyglobby: 0.2.17
+ tinyrainbow: 3.1.0
+ vite: 8.1.3(@types/node@24.13.3)(esbuild@0.28.1)(jiti@2.7.0)(sass@1.101.0)(sugarss@5.0.0(postcss@8.5.16))(terser@5.46.1)(tsx@4.21.0)(yaml@2.9.0)
+ why-is-node-running: 2.3.0
+ optionalDependencies:
+ '@opentelemetry/api': 1.9.0
+ '@types/node': 24.13.3
+ '@vitest/coverage-v8': 4.1.9(vitest@4.1.9)
+ '@vitest/ui': 4.1.9(vitest@4.1.9)
+ jsdom: 29.1.1(@noble/hashes@2.0.1)
+ transitivePeerDependencies:
+ - msw
+ optional: true
+
vue-component-type-helpers@3.3.4: {}
vue-demi@0.14.10(vue@3.5.35(typescript@6.0.3)):
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index f58a43ed7..e46043821 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -59,28 +59,28 @@ catalog:
"@testcontainers/mysql": ^12.0.4
"@testcontainers/postgresql": ^12.0.4
"@testcontainers/redis": ^12.0.4
- "@tiptap/extension-color": 3.27.1
- "@tiptap/extension-highlight": 3.27.1
- "@tiptap/extension-image": 3.27.1
- "@tiptap/extension-link": ^3.27.1
- "@tiptap/extension-placeholder": ^3.27.1
- "@tiptap/extension-table": 3.27.1
- "@tiptap/extension-table-cell": 3.27.1
- "@tiptap/extension-table-header": 3.27.1
- "@tiptap/extension-table-row": 3.27.1
- "@tiptap/extension-task-item": 3.27.1
- "@tiptap/extension-task-list": 3.27.1
- "@tiptap/extension-text-align": 3.27.1
- "@tiptap/extension-text-style": 3.27.1
- "@tiptap/extension-underline": 3.27.1
- "@tiptap/react": ^3.27.1
- "@tiptap/starter-kit": ^3.27.1
+ "@tiptap/extension-color": 3.27.3
+ "@tiptap/extension-highlight": 3.27.3
+ "@tiptap/extension-image": 3.27.3
+ "@tiptap/extension-link": ^3.27.3
+ "@tiptap/extension-placeholder": ^3.27.3
+ "@tiptap/extension-table": 3.27.3
+ "@tiptap/extension-table-cell": 3.27.3
+ "@tiptap/extension-table-header": 3.27.3
+ "@tiptap/extension-table-row": 3.27.3
+ "@tiptap/extension-task-item": 3.27.3
+ "@tiptap/extension-task-list": 3.27.3
+ "@tiptap/extension-text-align": 3.27.3
+ "@tiptap/extension-text-style": 3.27.3
+ "@tiptap/extension-underline": 3.27.3
+ "@tiptap/react": ^3.27.3
+ "@tiptap/starter-kit": ^3.27.3
"@trpc/client": ^11.18.0
"@trpc/next": ^11.18.0
"@trpc/react-query": ^11.18.0
"@trpc/server": ^11.18.0
"@trpc/tanstack-react-query": ^11.18.0
- "@turbo/gen": ^2.10.2
+ "@turbo/gen": ^2.10.4
"@types/adm-zip": 0.5.8
"@types/bcrypt": 6.0.0
"@types/better-sqlite3": 7.6.13
@@ -89,18 +89,18 @@ catalog:
"@types/crypto-js": ^4.2.2
"@types/css-modules": ^1.0.5
"@types/dockerode": ^4.0.1
- "@types/node": ^24.13.2
+ "@types/node": ^24.13.3
"@types/node-unifi": ^2.5.1
"@types/pg": ^8.20.0
"@types/prismjs": ^1.26.6
"@types/react": 19.2.17
"@types/react-dom": 19.2.3
- "@scalar/api-reference-react": ^0.9.51
+ "@scalar/api-reference-react": ^0.9.54
"@types/video.js": ^7.3.58
"@types/ws": ^8.18.1
"@uiw/react-codemirror": ^4.25.11
"@types/xml2js": ^0.4.14
- posthog-js: ^1.396.4
+ posthog-js: ^1.398.2
posthog-node: ^5.39.2
"@vitejs/plugin-react": ^6.0.3
"@vitest/coverage-v8": ^4.1.9
@@ -160,7 +160,7 @@ catalog:
next-intl: 4.13.1
node-loader: ^2.1.0
octokit: ^5.0.5
- oxfmt: ^0.57.0
+ oxfmt: ^0.58.0
oxlint: ^1.72.0
pg: ^8.22.0
postcss-preset-mantine: ^1.18.0
@@ -184,7 +184,7 @@ catalog:
trpc-to-openapi: ^3.3.0
tsdav: ^2.3.0
tsx: 4.20.4
- turbo: ^2.10.2
+ turbo: ^2.10.4
typescript: ^6.0.3
vite: ^8.1.2
undici: 7.28.0
@@ -226,7 +226,7 @@ overrides:
"brace-expansion@>=1.0.0 <=1.1.11": ">=5.0.7"
"esbuild@<=0.24.2": ">=0.28.1"
"form-data@>=4.0.0 <4.0.4": ">=4.0.6"
- "hono@<4.6.5": ">=4.12.27"
+ "hono@<4.6.5": ">=4.12.28"
"linkifyjs@<4.3.2": ">=4.3.3"
"nanoid@>=4.0.0 <5.0.9": ">=5.1.16"
"prismjs@<1.30.0": ">=1.30.0"