Compare commits

...

17 Commits

Author SHA1 Message Date
renovate[bot]
6d9638970d fix(deps): update dependency @codemirror/view to v6.39.15 2026-02-21 01:37:27 +00:00
Elian Doran
299f694aa9 chore: disable support notice for i18next
Signed-off-by: Elian Doran <contact@eliandoran.me>
2026-02-20 23:39:55 +02:00
Elian Doran
2675698d3a feat: enhance build-docs utility with pnpm and Nix support (#8574) 2026-02-20 23:13:05 +02:00
Elian Doran
3056f3cfcf fix(deps): update dependency preact to v10.28.4 (#8772) 2026-02-20 18:32:24 +02:00
Elian Doran
e19f344dc1 Translations update from Hosted Weblate (#8777) 2026-02-20 15:17:24 +02:00
손상모
1525ecdb05 Translated using Weblate (Korean)
Currently translated at 5.8% (105 of 1808 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/ko/
2026-02-20 13:12:07 +00:00
손상모
4f6a13b2c4 Translated using Weblate (Korean)
Currently translated at 31.8% (124 of 389 strings)

Translation: Trilium Notes/Server
Translate-URL: https://hosted.weblate.org/projects/trilium/server/ko/
2026-02-20 13:12:06 +00:00
Ulices
4747297adc Translated using Weblate (Spanish)
Currently translated at 100.0% (1808 of 1808 strings)

Translation: Trilium Notes/Client
Translate-URL: https://hosted.weblate.org/projects/trilium/client/es/
2026-02-20 13:12:05 +00:00
Hosted Weblate
f753974800 Update translation files
Updated by "Cleanup translation files" add-on in Weblate.

Translation: Trilium Notes/README
Translate-URL: https://hosted.weblate.org/projects/trilium/readme/
2026-02-20 13:12:05 +00:00
Elian Doran
bd4002529c chore(deps): update dependency @anthropic-ai/sdk to v0.78.0 (#8773) 2026-02-20 15:11:38 +02:00
Elian Doran
00588eb099 chore(deps): update dependency electron to v40.6.0 (#8774) 2026-02-20 15:11:28 +02:00
Elian Doran
81420b6168 chore(deps): update dependency jsonc-eslint-parser to v3 (#8775) 2026-02-20 15:09:08 +02:00
renovate[bot]
fe74d2aec9 chore(deps): update dependency jsonc-eslint-parser to v3 2026-02-20 09:52:34 +00:00
renovate[bot]
6514701c6a chore(deps): update dependency electron to v40.6.0 2026-02-20 00:02:14 +00:00
renovate[bot]
9e206ce7ea chore(deps): update dependency @anthropic-ai/sdk to v0.78.0 2026-02-20 00:01:39 +00:00
renovate[bot]
b32ad68e4f fix(deps): update dependency preact to v10.28.4 2026-02-20 00:01:06 +00:00
Wael Nasreddine
07f273fda4 feat: enhance build-docs utility with pnpm and Nix support
This enhances the `build-docs` utility to allow running it via pnpm and
packaging it as a Nix application. Changes include:

- Added `build` and `cli` scripts to `apps/build-docs/package.json`.
- Implemented a standalone CLI wrapper for documentation generation.
- Added a `trilium-build-docs` package to the Nix flake for use in other projects.
- Integrated `apps/build-docs` into the Nix workspace and build pipeline.

These changes make the documentation build process more portable and easier
to integrate into CI/CD pipelines outside of the main repository.
2026-02-01 00:32:51 -08:00
31 changed files with 630 additions and 290 deletions

View File

@@ -1,10 +1,15 @@
{
"name": "build-docs",
"version": "1.0.0",
"description": "",
"description": "Build documentation from Trilium notes",
"main": "src/main.ts",
"bin": {
"trilium-build-docs": "dist/cli.js"
},
"scripts": {
"start": "tsx ."
"start": "tsx .",
"cli": "tsx src/cli.ts",
"build": "tsx scripts/build.ts"
},
"keywords": [],
"author": "Elian Doran <contact@eliandoran.me>",
@@ -14,6 +19,7 @@
"@redocly/cli": "2.19.1",
"archiver": "7.0.1",
"fs-extra": "11.3.3",
"js-yaml": "4.1.1",
"react": "19.2.4",
"react-dom": "19.2.4",
"typedoc": "0.28.17",

View File

@@ -0,0 +1,23 @@
import BuildHelper from "../../../scripts/build-utils";
const build = new BuildHelper("apps/build-docs");
async function main() {
// Build the CLI and other TypeScript files
await build.buildBackend([
"src/cli.ts",
"src/main.ts",
"src/build-docs.ts",
"src/swagger.ts",
"src/script-api.ts",
"src/context.ts"
]);
// Copy HTML template
build.copy("src/index.html", "index.html");
// Copy node modules dependencies if needed
build.copyNodeModules([ "better-sqlite3", "bindings", "file-uri-to-path" ]);
}
main();

View File

@@ -13,8 +13,12 @@
* Make sure to keep in line with backend's `script_context.ts`.
*/
export type { default as AbstractBeccaEntity } from "../../server/src/becca/entities/abstract_becca_entity.js";
export type { default as BAttachment } from "../../server/src/becca/entities/battachment.js";
export type {
default as AbstractBeccaEntity
} from "../../server/src/becca/entities/abstract_becca_entity.js";
export type {
default as BAttachment
} from "../../server/src/becca/entities/battachment.js";
export type { default as BAttribute } from "../../server/src/becca/entities/battribute.js";
export type { default as BBranch } from "../../server/src/becca/entities/bbranch.js";
export type { default as BEtapiToken } from "../../server/src/becca/entities/betapi_token.js";
@@ -31,6 +35,7 @@ export type { Api };
const fakeNote = new BNote();
/**
* The `api` global variable allows access to the backend script API, which is documented in {@link Api}.
* The `api` global variable allows access to the backend script API,
* which is documented in {@link Api}.
*/
export const api: Api = new BackendScriptApi(fakeNote, {});

View File

@@ -1,19 +1,90 @@
process.env.TRILIUM_INTEGRATION_TEST = "memory-no-store";
process.env.TRILIUM_RESOURCE_DIR = "../server/src";
// Only set TRILIUM_RESOURCE_DIR if not already set (e.g., by Nix wrapper)
if (!process.env.TRILIUM_RESOURCE_DIR) {
process.env.TRILIUM_RESOURCE_DIR = "../server/src";
}
process.env.NODE_ENV = "development";
import cls from "@triliumnext/server/src/services/cls.js";
import { dirname, join, resolve } from "path";
import archiver from "archiver";
import { execSync } from "child_process";
import { WriteStream } from "fs";
import * as fs from "fs/promises";
import * as fsExtra from "fs-extra";
import archiver from "archiver";
import { WriteStream } from "fs";
import { execSync } from "child_process";
import yaml from "js-yaml";
import { dirname, join, resolve } from "path";
import BuildContext from "./context.js";
interface NoteMapping {
rootNoteId: string;
path: string;
format: "markdown" | "html" | "share";
ignoredFiles?: string[];
exportOnly?: boolean;
}
interface Config {
baseUrl: string;
noteMappings: NoteMapping[];
}
const DOCS_ROOT = "../../../docs";
const OUTPUT_DIR = "../../site";
// Load configuration from edit-docs-config.yaml
async function loadConfig(configPath?: string): Promise<Config | null> {
const pathsToTry = configPath
? [resolve(configPath)]
: [
join(process.cwd(), "edit-docs-config.yaml"),
join(__dirname, "../../../edit-docs-config.yaml")
];
for (const path of pathsToTry) {
try {
const configContent = await fs.readFile(path, "utf-8");
const config = yaml.load(configContent) as Config;
// Resolve all paths relative to the config file's directory
const CONFIG_DIR = dirname(path);
config.noteMappings = config.noteMappings.map((mapping) => ({
...mapping,
path: resolve(CONFIG_DIR, mapping.path)
}));
return config;
} catch (error) {
if (error.code !== "ENOENT") {
throw error; // rethrow unexpected errors
}
}
}
return null; // No config file found
}
async function exportDocs(
noteId: string,
format: "markdown" | "html" | "share",
outputPath: string,
ignoredFiles?: string[]
) {
const zipFilePath = `output-${noteId}.zip`;
try {
const { exportToZipFile } = (await import("@triliumnext/server/src/services/export/zip.js"))
.default;
await exportToZipFile(noteId, format, zipFilePath, {});
const ignoredSet = ignoredFiles ? new Set(ignoredFiles) : undefined;
await extractZip(zipFilePath, outputPath, ignoredSet);
} finally {
if (await fsExtra.exists(zipFilePath)) {
await fsExtra.rm(zipFilePath);
}
}
}
async function importAndExportDocs(sourcePath: string, outputSubDir: string) {
const note = await importData(sourcePath);
@@ -21,15 +92,18 @@ async function importAndExportDocs(sourcePath: string, outputSubDir: string) {
const zipName = outputSubDir || "user-guide";
const zipFilePath = `output-${zipName}.zip`;
try {
const { exportToZip } = (await import("@triliumnext/server/src/services/export/zip.js")).default;
const { exportToZip } = (await import("@triliumnext/server/src/services/export/zip.js"))
.default;
const branch = note.getParentBranches()[0];
const taskContext = new (await import("@triliumnext/server/src/services/task_context.js")).default(
"no-progress-reporting",
"export",
null
);
const taskContext = new (await import("@triliumnext/server/src/services/task_context.js"))
.default(
"no-progress-reporting",
"export",
null
);
const fileOutputStream = fsExtra.createWriteStream(zipFilePath);
await exportToZip(taskContext, branch, "share", fileOutputStream);
const { waitForStreamToFinish } = await import("@triliumnext/server/src/services/utils.js");
await waitForStreamToFinish(fileOutputStream);
// Output to root directory if outputSubDir is empty, otherwise to subdirectory
@@ -42,7 +116,7 @@ async function importAndExportDocs(sourcePath: string, outputSubDir: string) {
}
}
async function buildDocsInner() {
async function buildDocsInner(config?: Config) {
const i18n = await import("@triliumnext/server/src/services/i18n.js");
await i18n.initializeTranslations();
@@ -53,18 +127,49 @@ async function buildDocsInner() {
const beccaLoader = await import("../../server/src/becca/becca_loader.js");
await beccaLoader.beccaLoaded;
// Build User Guide
console.log("Building User Guide...");
await importAndExportDocs(join(__dirname, DOCS_ROOT, "User Guide"), "user-guide");
if (config) {
// Config-based build (reads from edit-docs-config.yaml)
console.log("Building documentation from config file...");
// Build Developer Guide
console.log("Building Developer Guide...");
await importAndExportDocs(join(__dirname, DOCS_ROOT, "Developer Guide"), "developer-guide");
// Import all non-export-only mappings
for (const mapping of config.noteMappings) {
if (!mapping.exportOnly) {
console.log(`Importing from ${mapping.path}...`);
await importData(mapping.path);
}
}
// Copy favicon.
await fs.copyFile("../../apps/website/src/assets/favicon.ico", join(OUTPUT_DIR, "favicon.ico"));
await fs.copyFile("../../apps/website/src/assets/favicon.ico", join(OUTPUT_DIR, "user-guide", "favicon.ico"));
await fs.copyFile("../../apps/website/src/assets/favicon.ico", join(OUTPUT_DIR, "developer-guide", "favicon.ico"));
// Export all mappings
for (const mapping of config.noteMappings) {
if (mapping.exportOnly) {
console.log(`Exporting ${mapping.format} to ${mapping.path}...`);
await exportDocs(
mapping.rootNoteId,
mapping.format,
mapping.path,
mapping.ignoredFiles
);
}
}
} else {
// Legacy hardcoded build (for backward compatibility)
console.log("Building User Guide...");
await importAndExportDocs(join(__dirname, DOCS_ROOT, "User Guide"), "user-guide");
console.log("Building Developer Guide...");
await importAndExportDocs(
join(__dirname, DOCS_ROOT, "Developer Guide"),
"developer-guide"
);
// Copy favicon.
await fs.copyFile("../../apps/website/src/assets/favicon.ico",
join(OUTPUT_DIR, "favicon.ico"));
await fs.copyFile("../../apps/website/src/assets/favicon.ico",
join(OUTPUT_DIR, "user-guide", "favicon.ico"));
await fs.copyFile("../../apps/website/src/assets/favicon.ico",
join(OUTPUT_DIR, "developer-guide", "favicon.ico"));
}
console.log("Documentation built successfully!");
}
@@ -91,12 +196,13 @@ async function createImportZip(path: string) {
zlib: { level: 0 }
});
console.log("Archive path is ", resolve(path))
console.log("Archive path is ", resolve(path));
archive.directory(path, "/");
const outputStream = fsExtra.createWriteStream(inputFile);
archive.pipe(outputStream);
archive.finalize();
const { waitForStreamToFinish } = await import("@triliumnext/server/src/services/utils.js");
await waitForStreamToFinish(outputStream);
try {
@@ -106,15 +212,15 @@ async function createImportZip(path: string) {
}
}
function waitForStreamToFinish(stream: WriteStream) {
return new Promise<void>((res, rej) => {
stream.on("finish", () => res());
stream.on("error", (err) => rej(err));
});
}
export async function extractZip(zipFilePath: string, outputPath: string, ignoredFiles?: Set<string>) {
const { readZipFile, readContent } = (await import("@triliumnext/server/src/services/import/zip.js"));
export async function extractZip(
zipFilePath: string,
outputPath: string,
ignoredFiles?: Set<string>
) {
const { readZipFile, readContent } = (await import(
"@triliumnext/server/src/services/import/zip.js"
));
await readZipFile(await fs.readFile(zipFilePath), async (zip, entry) => {
// We ignore directories since they can appear out of order anyway.
if (!entry.fileName.endsWith("/") && !ignoredFiles?.has(entry.fileName)) {
@@ -129,6 +235,27 @@ export async function extractZip(zipFilePath: string, outputPath: string, ignore
});
}
export async function buildDocsFromConfig(configPath?: string, gitRootDir?: string) {
const config = await loadConfig(configPath);
if (gitRootDir) {
// Build the share theme if we have a gitRootDir (for Trilium project)
execSync(`pnpm run --filter share-theme build`, {
stdio: "inherit",
cwd: gitRootDir
});
}
// Trigger the actual build.
await new Promise((res, rej) => {
cls.init(() => {
buildDocsInner(config ?? undefined)
.catch(rej)
.then(res);
});
});
}
export default async function buildDocs({ gitRootDir }: BuildContext) {
// Build the share theme.
execSync(`pnpm run --filter share-theme build`, {

View File

@@ -0,0 +1,89 @@
#!/usr/bin/env node
import packageJson from "../package.json" with { type: "json" };
import { buildDocsFromConfig } from "./build-docs.js";
// Parse command-line arguments
function parseArgs() {
const args = process.argv.slice(2);
let configPath: string | undefined;
let showHelp = false;
let showVersion = false;
for (let i = 0; i < args.length; i++) {
if (args[i] === "--config" || args[i] === "-c") {
configPath = args[i + 1];
if (!configPath) {
console.error("Error: --config/-c requires a path argument");
process.exit(1);
}
i++; // Skip the next argument as it's the value
} else if (args[i] === "--help" || args[i] === "-h") {
showHelp = true;
} else if (args[i] === "--version" || args[i] === "-v") {
showVersion = true;
}
}
return { configPath, showHelp, showVersion };
}
function getVersion(): string {
return packageJson.version;
}
function printHelp() {
const version = getVersion();
console.log(`
Usage: trilium-build-docs [options]
Options:
-c, --config <path> Path to the configuration file
(default: edit-docs-config.yaml in current directory)
-h, --help Display this help message
-v, --version Display version information
Description:
Builds documentation from Trilium note structure and exports to various formats.
Configuration file should be in YAML format with the following structure:
baseUrl: "https://example.com"
noteMappings:
- rootNoteId: "noteId123"
path: "docs"
format: "markdown"
- rootNoteId: "noteId456"
path: "public/docs"
format: "share"
exportOnly: true
Version: ${version}
`);
}
function printVersion() {
const version = getVersion();
console.log(version);
}
async function main() {
const { configPath, showHelp, showVersion } = parseArgs();
if (showHelp) {
printHelp();
process.exit(0);
} else if (showVersion) {
printVersion();
process.exit(0);
}
try {
await buildDocsFromConfig(configPath);
process.exit(0);
} catch (error) {
console.error("Error building documentation:", error);
process.exit(1);
}
}
main();

View File

@@ -13,16 +13,19 @@
* Make sure to keep in line with frontend's `script_context.ts`.
*/
export type { default as BasicWidget } from "../../client/src/widgets/basic_widget.js";
export type { default as FAttachment } from "../../client/src/entities/fattachment.js";
export type { default as FAttribute } from "../../client/src/entities/fattribute.js";
export type { default as FBranch } from "../../client/src/entities/fbranch.js";
export type { default as FNote } from "../../client/src/entities/fnote.js";
export type { Api } from "../../client/src/services/frontend_script_api.js";
export type { default as NoteContextAwareWidget } from "../../client/src/widgets/note_context_aware_widget.js";
export type { default as BasicWidget } from "../../client/src/widgets/basic_widget.js";
export type {
default as NoteContextAwareWidget
} from "../../client/src/widgets/note_context_aware_widget.js";
export type { default as RightPanelWidget } from "../../client/src/widgets/right_panel_widget.js";
import FrontendScriptApi, { type Api } from "../../client/src/services/frontend_script_api.js";
//@ts-expect-error
// @ts-expect-error - FrontendScriptApi is not directly exportable as Api without this simulation.
export const api: Api = new FrontendScriptApi();

View File

@@ -1,9 +1,10 @@
import { join } from "path";
import BuildContext from "./context";
import buildSwagger from "./swagger";
import { cpSync, existsSync, mkdirSync, rmSync } from "fs";
import { join } from "path";
import buildDocs from "./build-docs";
import BuildContext from "./context";
import buildScriptApi from "./script-api";
import buildSwagger from "./swagger";
const context: BuildContext = {
gitRootDir: join(__dirname, "../../../"),

View File

@@ -1,7 +1,8 @@
import { execSync } from "child_process";
import BuildContext from "./context";
import { join } from "path";
import BuildContext from "./context";
export default function buildScriptApi({ baseDir, gitRootDir }: BuildContext) {
// Generate types
execSync(`pnpm typecheck`, { stdio: "inherit", cwd: gitRootDir });

View File

@@ -1,7 +1,8 @@
import BuildContext from "./context";
import { join } from "path";
import { execSync } from "child_process";
import { mkdirSync } from "fs";
import { join } from "path";
import BuildContext from "./context";
interface BuildInfo {
specPath: string;
@@ -27,6 +28,9 @@ export default function buildSwagger({ baseDir, gitRootDir }: BuildContext) {
const absSpecPath = join(gitRootDir, specPath);
const targetDir = join(baseDir, outDir);
mkdirSync(targetDir, { recursive: true });
execSync(`pnpm redocly build-docs ${absSpecPath} -o ${targetDir}/index.html`, { stdio: "inherit" });
execSync(
`pnpm redocly build-docs ${absSpecPath} -o ${targetDir}/index.html`,
{ stdio: "inherit" }
);
}
}

View File

@@ -1,6 +1,8 @@
{
"extends": "../../tsconfig.base.json",
"include": [],
"include": [
"scripts/**/*.ts"
],
"references": [
{
"path": "../server"

View File

@@ -4,6 +4,7 @@
"entryPoints": [
"src/backend_script_entrypoint.ts"
],
"tsconfig": "tsconfig.app.json",
"plugin": [
"typedoc-plugin-missing-exports"
]

View File

@@ -4,6 +4,7 @@
"entryPoints": [
"src/frontend_script_entrypoint.ts"
],
"tsconfig": "tsconfig.app.json",
"plugin": [
"typedoc-plugin-missing-exports"
]

View File

@@ -59,7 +59,7 @@
"mind-elixir": "5.8.3",
"normalize.css": "8.0.1",
"panzoom": "9.4.3",
"preact": "10.28.3",
"preact": "10.28.4",
"react-i18next": "16.5.4",
"react-window": "2.2.7",
"reveal.js": "5.2.1",

View File

@@ -24,7 +24,8 @@ export async function initLocale() {
backend: {
loadPath: `${window.glob.assetPath}/translations/{{lng}}/{{ns}}.json`
},
returnEmptyString: false
returnEmptyString: false,
showSupportNotice: false
});
await setDayjsLocale(locale);

View File

@@ -669,7 +669,7 @@
"button_exit": "Salir del modo Zen"
},
"sync_status": {
"unknown": "<p>El estado de sincronización será conocido una vez que el siguiente intento de sincronización comience.</p><p>Dé clic para activar la sincronización ahora</p>",
"unknown": "<p>El estado de sincronización será conocido una vez que el siguiente intento de sincronización comience.</p><p>Dé clic para activar la sincronización ahora.</p>",
"connected_with_changes": "<p>Conectado al servidor de sincronización. <br>Hay cambios pendientes que aún no se han sincronizado.</p><p>Dé clic para activar la sincronización.</p>",
"connected_no_changes": "<p>Conectado al servidor de sincronización.<br>Todos los cambios ya han sido sincronizados.</p><p>Dé clic para activar la sincronización.</p>",
"disconnected_with_changes": "<p>El establecimiento de la conexión con el servidor de sincronización no ha tenido éxito.<br>Hay algunos cambios pendientes que aún no se han sincronizado.</p><p>Dé clic para activar la sincronización.</p>",
@@ -760,7 +760,7 @@
"mobile_detail_menu": {
"insert_child_note": "Insertar subnota",
"delete_this_note": "Eliminar esta nota",
"error_cannot_get_branch_id": "No se puede obtener el branchID del notePath '{{notePath}}'",
"error_cannot_get_branch_id": "No se puede obtener el branchId del notePath '{{notePath}}'",
"error_unrecognized_command": "Comando no reconocido {{command}}",
"note_revisions": "Revisiones de notas",
"backlinks": "Vínculos de retroceso",
@@ -1012,7 +1012,7 @@
"no_attachments": "Esta nota no tiene archivos adjuntos."
},
"book": {
"no_children_help": "Esta nota de tipo libro no tiene ninguna subnota así que no hay nada que mostrar. Véa la <a href=\"https://triliumnext.github.io/Docs/Wiki/book-note.html\">wiki</a> para más detalles.",
"no_children_help": "Esta colección no tiene ninguna subnota así que no hay nada que mostrar.",
"drag_locked_title": "Bloqueado para edición",
"drag_locked_message": "No se permite Arrastrar pues la colección está bloqueada para edición."
},
@@ -1560,7 +1560,7 @@
"shortcuts": {
"keyboard_shortcuts": "Atajos de teclado",
"multiple_shortcuts": "Varios atajos para la misma acción se pueden separar mediante comas.",
"electron_documentation": "Véa la <a href=\"https://www.electronjs.org/docs/latest/api/accelerator\">documentación de Electron </a> para los modificadores y códigos de tecla disponibles.",
"electron_documentation": "Consulte la <a href=\"https://www.electronjs.org/docs/latest/api/accelerator\">documentación de Electron</a> para los modificadores y códigos de tecla disponibles.",
"type_text_to_filter": "Escriba texto para filtrar los accesos directos...",
"action_name": "Nombre de la acción",
"shortcuts": "Atajos",
@@ -1826,7 +1826,7 @@
"no_headings": "Sin encabezados."
},
"watched_file_update_status": {
"file_last_modified": "Archivo <code class=\"file-path\"></code> ha sido modificado por última vez en<span class=\"file-last-modified\"></span>.",
"file_last_modified": "El archivo <code class=\"file-path\"></code> ha sido modificado por última vez en <span class=\"file-last-modified\"></span>.",
"upload_modified_file": "Subir archivo modificado",
"ignore_this_change": "Ignorar este cambio"
},
@@ -2050,7 +2050,8 @@
"max-nesting-depth": "Máxima profundidad de anidamiento:",
"vector_light": "Vector (claro)",
"vector_dark": "Vector (oscuro)",
"raster": "Trama"
"raster": "Trama",
"show-labels": "Mostrar nombres de marcadores"
},
"table_context_menu": {
"delete_row": "Eliminar fila"
@@ -2158,7 +2159,9 @@
"percentage": "%"
},
"pagination": {
"total_notes": "{{count}} notas"
"total_notes": "{{count}} notas",
"prev_page": "Página anterior",
"next_page": "Página siguiente"
},
"presentation_view": {
"edit-slide": "Editar este slide",

View File

@@ -81,13 +81,17 @@
"search_for_note_by_its_name": "이름으로 노트 검색하기",
"no_path_to_clone_to": "클론할 경로가 존재하지 않습니다.",
"note_cloned": "노트 \"{{clonedTitle}}\"이(가) \"{{targetTitle}}\"로 클론되었습니다",
"cloned_note_prefix_title": "클론된 노트는 지정된 접두사와 함께 노트 트리에 표시됩니다"
"cloned_note_prefix_title": "클론된 노트는 지정된 접두사와 함께 노트 트리에 표시됩니다",
"prefix_optional": "접두사 (선택 사항)",
"clone_to_selected_note": "선택한 노트에 클론"
},
"confirm": {
"confirmation": "확인",
"cancel": "취소",
"ok": "OK",
"are_you_sure_remove_note": "관계 맵에서 \"{{title}}\" 노트를 정말로 제거하시겠습니까? "
"are_you_sure_remove_note": "관계 맵에서 \"{{title}}\" 노트를 정말로 제거하시겠습니까? ",
"if_you_dont_check": "이 항목을 선택하지 않으면 해당 노트는 관계 맵에서만 제거됩니다.",
"also_delete_note": "노트를 함께 삭제"
},
"delete_notes": {
"erase_notes_description": "일반(소프트) 삭제는 메모를 삭제된 것으로 표시하는 것일 뿐이며, 일정 시간 동안 (최근 변경 내용 대화 상자에서) 복구할 수 있습니다. 이 옵션을 선택하면 메모가 즉시 삭제되며 복구할 수 없습니다.",
@@ -97,7 +101,10 @@
"broken_relations_to_be_deleted": "다음 관계가 끊어지고 삭제됩니다({{ relationCount}})",
"cancel": "취소",
"ok": "OK",
"deleted_relation_text": "삭제 예정인 노트 {{- note}} (은)는 {{- source}}에서 시작된 관계 {{- relation}}에 의해 참조되고 있습니다."
"deleted_relation_text": "삭제 예정인 노트 {{- note}} (은)는 {{- source}}에서 시작된 관계 {{- relation}}에 의해 참조되고 있습니다.",
"delete_notes_preview": "노트 미리보기 삭제",
"close": "닫기",
"delete_all_clones_description": "모든 복제본 삭제(최근 변경 사항에서 되돌릴 수 있습니다)"
},
"export": {
"export_note_title": "노트 내보내기",
@@ -108,10 +115,25 @@
"export_in_progress": "내보내기 진행 중: {{progressCount}}",
"export_finished_successfully": "내보내기를 성공적으로 완료했습니다.",
"format_pdf": "PDF - 인쇄 또는 공유용",
"share-format": "웹 게시용 HTML - 공유 노트에 사용되는 것과 동일한 테마를 사용하지만 정적 웹사이트로 게시할 수 있습니다."
"share-format": "웹 게시용 HTML - 공유 노트에 사용되는 것과 동일한 테마를 사용하지만 정적 웹사이트로 게시할 수 있습니다.",
"close": "닫기",
"export_type_subtree": "이 노트와 모든 후손 노트",
"format_html": "HTML - 모든 형식 유지됨, 권장",
"format_html_zip": "HTML(ZIP 아카이브) - 모든 서식이 유지됨, 권장.",
"format_markdown": "마크다운 - 대부분의 서식이 유지됩니다.",
"format_opml": "OPML은 텍스트 전용 아웃라이너 교환 형식입니다. 서식, 이미지 및 파일은 포함되지 않습니다.",
"opml_version_1": "OPML v1.0 - 일반 텍스트만",
"opml_version_2": "OPML v2.0 - HTML 지원"
},
"help": {
"title": "치트 시트",
"editShortcuts": "키보드 단축키 편집"
"editShortcuts": "키보드 단축키 편집",
"noteNavigation": "노트 내비게이션",
"goUpDown": "노트 목록에서 위/아래로 이동",
"collapseExpand": "노트 접기/펼치기",
"notSet": "미설정",
"goBackForwards": "히스토리에서 뒤로/앞으로 이동",
"showJumpToNoteDialog": "<a class=\"external\" href=\"https://triliumnext.github.io/Docs/Wiki/note-navigation.html#jump-to-note\">\"노트로 이동\" 대화 상자</a> 표시",
"scrollToActiveNote": "활성화된 노트로 스크롤 이동"
}
}

View File

@@ -35,7 +35,7 @@
"@triliumnext/commons": "workspace:*",
"@triliumnext/server": "workspace:*",
"copy-webpack-plugin": "13.0.1",
"electron": "40.4.1",
"electron": "40.6.0",
"@electron-forge/cli": "7.11.1",
"@electron-forge/maker-deb": "7.11.1",
"@electron-forge/maker-dmg": "7.11.1",

View File

@@ -12,7 +12,7 @@
"@triliumnext/desktop": "workspace:*",
"@types/fs-extra": "11.0.4",
"copy-webpack-plugin": "13.0.1",
"electron": "40.4.1",
"electron": "40.6.0",
"fs-extra": "11.3.3"
},
"scripts": {

View File

@@ -35,7 +35,7 @@
"sucrase": "3.35.1"
},
"devDependencies": {
"@anthropic-ai/sdk": "0.77.0",
"@anthropic-ai/sdk": "0.78.0",
"@braintree/sanitize-url": "7.1.2",
"@electron/remote": "2.1.3",
"@triliumnext/commons": "workspace:*",
@@ -83,7 +83,7 @@
"debounce": "3.0.0",
"debug": "4.4.3",
"ejs": "4.0.1",
"electron": "40.4.1",
"electron": "40.6.0",
"electron-debug": "4.1.0",
"electron-window-state": "5.0.3",
"escape-html": "1.0.3",

View File

@@ -21,7 +21,8 @@ beforeAll(async () => {
ns: "server",
backend: {
loadPath: join(__dirname, "../src/assets/translations/{{lng}}/{{ns}}.json")
}
},
showSupportNotice: false
});
// Initialize dayjs

View File

@@ -1,6 +1,6 @@
{
"keyboard_actions": {
"back-in-note-history": "기록 내 이전 노트로 이동하기",
"back-in-note-history": "히스토리의 이전 노트로 이동하기",
"open-command-palette": "명령어 팔레트 열기",
"delete-note": "노트 삭제",
"quick-search": "빠른 검색바 활성화",
@@ -81,7 +81,27 @@
"open-dev-tools": "개발자 도구 열기",
"find-in-text": "검색 패널 토글",
"toggle-left-note-tree-panel": "좌측(노트 트리) 패널 토글",
"toggle-full-screen": "전체 화면 토글"
"toggle-full-screen": "전체 화면 토글",
"paste-markdown-into-text": "클립보드에서 마크다운 파일을 텍스트 노트에 붙여넣습니다",
"cut-into-note": "현재 노트에서 선택 영역을 잘라내어 하위 노트를 생성합니다",
"add-include-note-to-text": "노트 추가 대화 상자를 열기",
"edit-readonly-note": "읽기 전용 메모를 편집",
"toggle-link-map": "링크 맵 토글",
"toggle-note-info": "노트 정보 토글",
"toggle-note-paths": "노트 경로 토글",
"toggle-similar-notes": "유사 노트 토글",
"other": "기타",
"toggle-right-pane": "오른쪽 창(목차와 하이라이트) 표시 여부 전환",
"print-active-note": "활성 노트 인쇄",
"open-note-externally": "노트를 파일 형식으로 열기(기본 애플리케이션 사용)",
"zoom-out": "축소",
"zoom-in": "확대",
"note-navigation": "노트 내비게이션",
"reset-zoom-level": "확대/축소 초기화",
"copy-without-formatting": "선택한 텍스트를 서식 없이 복사",
"force-save-revision": "활성 노트의 새 버전을 강제로 생성/저장",
"toggle-book-properties": "컬렉션 속성 토글",
"toggle-classic-editor-toolbar": "고정 도구 모음 에디터의 서식 탭을 전환"
},
"hidden-subtree": {
"zen-mode": "젠 모드",

View File

@@ -3,7 +3,7 @@
import dateUtils from "../date_utils.js";
import path from "path";
import packageInfo from "../../../package.json" with { type: "json" };
import { getContentDisposition } from "../utils.js";
import { getContentDisposition, waitForStreamToFinish } from "../utils.js";
import protectedSessionService from "../protected_session.js";
import sanitize from "sanitize-filename";
import fs from "fs";
@@ -468,6 +468,7 @@ async function exportToZip(taskContext: TaskContext<"export">, branch: BBranch,
taskContext.taskSucceeded(null);
}
async function exportToZipFile(noteId: string, format: ExportFormat, zipFilePath: string, zipExportOptions?: AdvancedExportOptions) {
const fileOutputStream = fs.createWriteStream(zipFilePath);
const taskContext = new TaskContext("no-progress-reporting", "export", null);
@@ -479,6 +480,7 @@ async function exportToZipFile(noteId: string, format: ExportFormat, zipFilePath
}
await exportToZip(taskContext, note.getParentBranches()[0], format, fileOutputStream, false, zipExportOptions);
await waitForStreamToFinish(fileOutputStream);
log.info(`Exported '${noteId}' with format '${format}' to '${zipFilePath}'`);
}

View File

@@ -18,7 +18,8 @@ export async function initializeTranslations() {
ns: "server",
backend: {
loadPath: join(resourceDir, "assets/translations/{{lng}}/{{ns}}.json")
}
},
showSupportNotice: false
});
// Initialize dayjs locale.

View File

@@ -1,5 +1,4 @@
import chardet from "chardet";
import crypto from "crypto";
import escape from "escape-html";
@@ -516,6 +515,13 @@ function slugify(text: string) {
.replace(/(^-|-$)+/g, ""); // trim dashes
}
export function waitForStreamToFinish(stream: any): Promise<void> {
return new Promise((resolve, reject) => {
stream.on("finish", () => resolve());
stream.on("error", (err) => reject(err));
});
}
export default {
compareVersions,
constantTimeCompare,
@@ -556,5 +562,6 @@ export default {
toBase64,
toMap,
toObject,
unescapeHtml
unescapeHtml,
waitForStreamToFinish
};

View File

@@ -11,7 +11,7 @@
"dependencies": {
"i18next": "25.8.11",
"i18next-http-backend": "3.0.2",
"preact": "10.28.3",
"preact": "10.28.4",
"preact-iso": "2.11.1",
"preact-render-to-string": "6.6.5",
"react-i18next": "16.5.4"

View File

@@ -27,7 +27,8 @@ export function initTranslations(lng: string) {
initAsync: false,
react: {
useSuspense: false
}
},
showSupportNotice: false
});
}

62
docs/README-ko.md vendored
View File

@@ -139,13 +139,11 @@ zadam/Trilium 인스턴스에서 TriliumNext/Trilium 인스턴스로 마이그
zadam/trilium 버전과 호환됩니다. 이후 버전의 TriliumNext/Trilium은 동기화 버전이 증가되어 직접 마이그레이션이
불가능합니다.
## 💬 Discuss with us
## 💬 함께 토론해 보세요
Feel free to join our official conversations. We would love to hear what
features, suggestions, or issues you may have!
저희 공식 대화에 자유롭게 참여해 주세요. 어떤 기능, 제안 또는 문제점이 있으시면 언제든지 알려주세요!
- [Matrix](https://matrix.to/#/#triliumnext:matrix.org) (For synchronous
discussions.)
- [Matrix](https://matrix.to/#/#triliumnext:matrix.org) (동기식 토론용)
- `General` 매트릭스 룸은 [XMPP](xmpp:discuss@trilium.thisgreat.party?join)에도 브리지되어
있습니다
- [Github Discussions](https://github.com/TriliumNext/Trilium/discussions) (비동기
@@ -162,17 +160,15 @@ features, suggestions, or issues you may have!
### Linux
If your distribution is listed in the table below, use your distribution's
package.
사용하시는 배포판이 아래 표에 나와 있다면 해당 배포판의 패키지를 사용하십시오.
[![Packaging
status](https://repology.org/badge/vertical-allrepos/triliumnext.svg)](https://repology.org/project/triliumnext/versions)
[![패키징
상태](https://repology.org/badge/vertical-allrepos/triliumnext.svg)](https://repology.org/project/triliumnext/versions)
You may also download the binary release for your platform from the [latest
release page](https://github.com/TriliumNext/Trilium/releases/latest), unzip the
package and run the `trilium` executable.
또한 [최신 릴리스 페이지](https://github.com/TriliumNext/Trilium/releases/latest)에서 해당
플랫폼용 바이너리 릴리스를 다운로드하고 패키지의 압축을 풀고 `trilium` 실행 파일을 실행할 수도 있습니다.
TriliumNext is also provided as a Flatpak, but not yet published on FlatHub.
TriliumNext는 Flatpak으로도 제공되지만, 아직 FlatHub에는 게시되지 않았습니다.
### 브라우저 (모든 운영체제)
@@ -201,22 +197,21 @@ TriliumNext를 자체 서버에 설치하려면 [서버 설치
문서](https://docs.triliumnotes.org/user-guide/setup/server)를 따르세요.
## 💻 Contribute
## 💻 참여하기
### Translations
### 번역
If you are a native speaker, help us translate Trilium by heading over to our
[Weblate page](https://hosted.weblate.org/engage/trilium/).
원어민이시라면 [Weblate 페이지](https://hosted.weblate.org/engage/trilium/)로 이동하여 Trilium
번역을 도와주세요.
Here's the language coverage we have so far:
현재까지 지원되는 언어는 다음과 같습니다:
[![Translation
status](https://hosted.weblate.org/widget/trilium/multi-auto.svg)](https://hosted.weblate.org/engage/trilium/)
[![번역
상태](https://hosted.weblate.org/widget/trilium/multi-auto.svg)](https://hosted.weblate.org/engage/trilium/)
### Code
### 코드
Download the repository, install dependencies using `pnpm` and then run the
server (available at http://localhost:8080):
저장소를 다운로드하고 `pnpm`을 사용하여 종속성을 설치한 다음 서버를 실행하세요(http://localhost:8080에서 접속 가능):
```shell
git clone https://github.com/TriliumNext/Trilium.git
cd Trilium
@@ -224,7 +219,7 @@ pnpm install
pnpm run server:start
```
### Documentation
### 문서
저장소를 다운로드하고 `pnpm`을 사용하여 종속성을 설치한 다음 문서 편집에 필요한 환경을 실행하세요.
```shell
@@ -258,19 +253,16 @@ docs](https://github.com/TriliumNext/Trilium/tree/main/docs/Developer%20Guide/De
* [zadam](https://github.com/zadam)은 애플리케이션의 원래 개념과 구현에 대한 공로를 인정받았습니다.
* [Sarah Hussein](https://github.com/Sarah-Hussein)은 애플리케이션 아이콘을 디자인했습니다.
* [nriver](https://github.com/nriver) 국제화에 공헌.
* [Thomas Frei](https://github.com/thfrei) for his original work on the Canvas.
* [antoniotejada](https://github.com/nriver) for the original syntax highlight
widget.
* [Dosu](https://dosu.dev/) for providing us with the automated responses to
GitHub issues and discussions.
* [Tabler Icons](https://tabler.io/icons) for the system tray icons.
* [Thomas Frei](https://github.com/thfrei) 캔버스에 대한 독창적인 작업.
* [antoniotejada](https://github.com/nriver) 구문 강조 위젯의 원본.
* [Dosu](https://dosu.dev/) GitHub 이슈 및 토론에 대한 자동 응답을 제공.
* [Tabler Icons](https://tabler.io/icons) 시스템 트레이 아이콘.
Trilium would not be possible without the technologies behind it:
트릴리움은 다음의 기반 기술들이 없었다면 불가능했을 것입니다:
* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - the visual editor behind
text notes. We are grateful for being offered a set of the premium features.
* [CodeMirror](https://github.com/codemirror/CodeMirror) - code editor with
support for huge amount of languages.
* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - 텍스트 노트의 시각적 편집기입니다. 프리미엄
기능을 제공해주셔서 감사합니다.
* [CodeMirror](https://github.com/codemirror/CodeMirror) - 수많은 언어를 지원하는 코드 편집기.
* [Excalidraw](https://github.com/excalidraw/excalidraw) - the infinite
whiteboard used in Canvas notes.
* [Mind Elixir](https://github.com/SSShooter/mind-elixir-core) - providing the

View File

@@ -113,7 +113,7 @@
[
moreutils # sponge
nodejs.python
removeReferencesTo
removeReferencesTo
]
++ lib.optionals (app == "desktop" || app == "edit-docs") [
copyDesktopItems
@@ -126,7 +126,7 @@
which
electron
]
++ lib.optionals (app == "server") [
++ lib.optionals (app == "server" || app == "build-docs") [
makeBinaryWrapper
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
@@ -153,7 +153,7 @@
# This file is a symlink into /build which is not allowed.
postFixup = ''
rm $out/opt/trilium*/node_modules/better-sqlite3/node_modules/.bin/prebuild-install || true
find $out/opt -name prebuild-install -path "*/better-sqlite3/node_modules/.bin/*" -delete || true
'';
components = [
@@ -169,6 +169,7 @@
"packages/highlightjs"
"packages/turndown-plugin-gfm"
"apps/build-docs"
"apps/client"
"apps/db-compare"
"apps/desktop"
@@ -277,11 +278,46 @@
'';
};
build-docs = makeApp {
app = "build-docs";
preBuildCommands = ''
pushd apps/server
pnpm rebuild || true
popd
'';
buildTask = "client:build && pnpm run server:build && pnpm run --filter build-docs build";
mainProgram = "trilium-build-docs";
installCommands = ''
mkdir -p $out/{bin,opt/trilium-build-docs}
# Copy build-docs dist
cp --archive apps/build-docs/dist/* $out/opt/trilium-build-docs
# Copy server dist (needed for runtime)
mkdir -p $out/opt/trilium-build-docs/server
cp --archive apps/server/dist/* $out/opt/trilium-build-docs/server/
# Copy client dist (needed for runtime)
mkdir -p $out/opt/trilium-build-docs/client
cp --archive apps/client/dist/* $out/opt/trilium-build-docs/client/
# Copy share-theme (needed for exports)
mkdir -p $out/opt/trilium-build-docs/packages/share-theme
cp --archive packages/share-theme/dist/* $out/opt/trilium-build-docs/packages/share-theme/
# Create wrapper script
makeWrapper ${lib.getExe nodejs} $out/bin/trilium-build-docs \
--add-flags $out/opt/trilium-build-docs/cli.cjs \
--set TRILIUM_RESOURCE_DIR $out/opt/trilium-build-docs/server
'';
};
in
{
packages.desktop = desktop;
packages.server = server;
packages.edit-docs = edit-docs;
packages.build-docs = build-docs;
packages.default = desktop;

View File

@@ -67,7 +67,7 @@
"http-server": "14.1.1",
"jiti": "2.6.1",
"js-yaml": "4.1.1",
"jsonc-eslint-parser": "2.4.2",
"jsonc-eslint-parser": "3.1.0",
"react-refresh": "0.18.0",
"rollup-plugin-webpack-stats": "2.1.11",
"tslib": "2.8.1",
@@ -101,7 +101,7 @@
},
"overrides": {
"mermaid": "11.12.3",
"preact": "10.28.3",
"preact": "10.28.4",
"roughjs": "4.6.6",
"@types/express-serve-static-core": "5.1.0",
"flat@<5.0.1": ">=5.0.1",

View File

@@ -16,7 +16,7 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/legacy-modes": "6.5.2",
"@codemirror/search": "6.6.0",
"@codemirror/view": "6.39.14",
"@codemirror/view": "6.39.15",
"@fsegurai/codemirror-theme-abcdef": "6.2.3",
"@fsegurai/codemirror-theme-abyss": "6.2.3",
"@fsegurai/codemirror-theme-android-studio": "6.2.3",

341
pnpm-lock.yaml generated
View File

@@ -6,7 +6,7 @@ settings:
overrides:
mermaid: 11.12.3
preact: 10.28.3
preact: 10.28.4
roughjs: 4.6.6
'@types/express-serve-static-core': 5.1.0
flat@<5.0.1: '>=5.0.1'
@@ -120,8 +120,8 @@ importers:
specifier: 4.1.1
version: 4.1.1
jsonc-eslint-parser:
specifier: 2.4.2
version: 2.4.2
specifier: 3.1.0
version: 3.1.0
react-refresh:
specifier: 0.18.0
version: 0.18.0
@@ -164,6 +164,9 @@ importers:
fs-extra:
specifier: 11.3.3
version: 11.3.3
js-yaml:
specifier: 4.1.1
version: 4.1.1
react:
specifier: 19.2.4
version: 19.2.4
@@ -214,7 +217,7 @@ importers:
version: 2.11.8
'@preact/signals':
specifier: 2.8.1
version: 2.8.1(preact@10.28.3)
version: 2.8.1(preact@10.28.4)
'@triliumnext/ckeditor5':
specifier: workspace:*
version: link:../../packages/ckeditor5
@@ -309,8 +312,8 @@ importers:
specifier: 9.4.3
version: 9.4.3
preact:
specifier: 10.28.3
version: 10.28.3
specifier: 10.28.4
version: 10.28.4
react-i18next:
specifier: 16.5.4
version: 16.5.4(i18next@25.8.11(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)
@@ -335,7 +338,7 @@ importers:
version: 5.0.0
'@prefresh/vite':
specifier: 2.4.12
version: 2.4.12(preact@10.28.3)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
version: 2.4.12(preact@10.28.4)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
'@types/bootstrap':
specifier: 5.2.10
version: 5.2.10
@@ -392,7 +395,7 @@ importers:
dependencies:
'@electron/remote':
specifier: 2.1.3
version: 2.1.3(electron@40.4.1)
version: 2.1.3(electron@40.6.0)
better-sqlite3:
specifier: 12.6.2
version: 12.6.2
@@ -449,8 +452,8 @@ importers:
specifier: 13.0.1
version: 13.0.1(webpack@5.101.3(esbuild@0.27.3))
electron:
specifier: 40.4.1
version: 40.4.1
specifier: 40.6.0
version: 40.6.0
prebuild-install:
specifier: 7.1.3
version: 7.1.3
@@ -505,8 +508,8 @@ importers:
specifier: 13.0.1
version: 13.0.1(webpack@5.101.3(esbuild@0.27.3))
electron:
specifier: 40.4.1
version: 40.4.1
specifier: 40.6.0
version: 40.6.0
fs-extra:
specifier: 11.3.3
version: 11.3.3
@@ -536,14 +539,14 @@ importers:
version: 3.35.1
devDependencies:
'@anthropic-ai/sdk':
specifier: 0.77.0
version: 0.77.0(zod@4.1.12)
specifier: 0.78.0
version: 0.78.0(zod@4.1.12)
'@braintree/sanitize-url':
specifier: 7.1.2
version: 7.1.2
'@electron/remote':
specifier: 2.1.3
version: 2.1.3(electron@40.4.1)
version: 2.1.3(electron@40.6.0)
'@triliumnext/commons':
specifier: workspace:*
version: link:../../packages/commons
@@ -680,8 +683,8 @@ importers:
specifier: 4.0.1
version: 4.0.1
electron:
specifier: 40.4.1
version: 40.4.1
specifier: 40.6.0
version: 40.6.0
electron-debug:
specifier: 4.1.0
version: 4.1.0
@@ -855,21 +858,21 @@ importers:
specifier: 3.0.2
version: 3.0.2(encoding@0.1.13)
preact:
specifier: 10.28.3
version: 10.28.3
specifier: 10.28.4
version: 10.28.4
preact-iso:
specifier: 2.11.1
version: 2.11.1(preact-render-to-string@6.6.5(preact@10.28.3))(preact@10.28.3)
version: 2.11.1(preact-render-to-string@6.6.5(preact@10.28.4))(preact@10.28.4)
preact-render-to-string:
specifier: 6.6.5
version: 6.6.5(preact@10.28.3)
version: 6.6.5(preact@10.28.4)
react-i18next:
specifier: 16.5.4
version: 16.5.4(i18next@25.8.11(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)
devDependencies:
'@preact/preset-vite':
specifier: 2.10.3
version: 2.10.3(@babel/core@7.28.0)(preact@10.28.3)(rollup@4.52.0)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
version: 2.10.3(@babel/core@7.28.0)(preact@10.28.4)(rollup@4.52.0)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
eslint:
specifier: 10.0.0
version: 10.0.0(jiti@2.6.1)
@@ -1273,89 +1276,89 @@ importers:
specifier: 6.6.0
version: 6.6.0
'@codemirror/view':
specifier: 6.39.14
version: 6.39.14
specifier: 6.39.15
version: 6.39.15
'@fsegurai/codemirror-theme-abcdef':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-abyss':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-android-studio':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-andromeda':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-basic-dark':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-basic-light':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-cobalt2':
specifier: 6.0.3
version: 6.0.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.0.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-forest':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-github-dark':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-github-light':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-gruvbox-dark':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-gruvbox-light':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-material-dark':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-material-light':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-monokai':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-nord':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-palenight':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-solarized-dark':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-solarized-light':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-tokyo-night-day':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-tokyo-night-storm':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-volcano':
specifier: 6.2.3
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-vscode-dark':
specifier: 6.2.4
version: 6.2.4(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.4(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@fsegurai/codemirror-theme-vscode-light':
specifier: 6.2.4
version: 6.2.4(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)
version: 6.2.4(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)
'@replit/codemirror-indentation-markers':
specifier: 6.5.3
version: 6.5.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)
version: 6.5.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)
'@replit/codemirror-lang-nix':
specifier: 6.0.1
version: 6.0.1(@codemirror/autocomplete@6.18.6)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/lr@1.4.2)
version: 6.0.1(@codemirror/autocomplete@6.18.6)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/lr@1.4.2)
'@replit/codemirror-vim':
specifier: 6.3.0
version: 6.3.0(@codemirror/commands@6.10.2)(@codemirror/language@6.11.0)(@codemirror/search@6.6.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)
version: 6.3.0(@codemirror/commands@6.10.2)(@codemirror/language@6.11.0)(@codemirror/search@6.6.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)
'@ssddanbrown/codemirror-lang-smarty':
specifier: 1.0.0
version: 1.0.0
@@ -1516,8 +1519,8 @@ packages:
'@antfu/utils@9.2.0':
resolution: {integrity: sha512-Oq1d9BGZakE/FyoEtcNeSwM7MpDO2vUBi11RWBZXf75zPsbUVWmUs03EqkRFrcgbXyKTas0BdZWC1wcuSoqSAw==}
'@anthropic-ai/sdk@0.77.0':
resolution: {integrity: sha512-TivlT6nfidz3sOyMF72T2x5AkmHrpT7JgL2e/0HNdh7b24v7JC8cR+rCY/42jA68xIsjmiGQ5IKMsH9feEKh3A==}
'@anthropic-ai/sdk@0.78.0':
resolution: {integrity: sha512-PzQhR715td/m1UaaN5hHXjYB8Gl2lF9UVhrrGrZeysiF6Rb74Wc9GCB8hzLdzmQtBd1qe89F9OptgB9Za1Ib5w==}
hasBin: true
peerDependencies:
zod: ^3.25.0 || ^4.0.0
@@ -2173,8 +2176,8 @@ packages:
'@codemirror/theme-one-dark@6.1.2':
resolution: {integrity: sha512-F+sH0X16j/qFLMAfbciKTxVOwkdAS336b7AXTKOZhy8BR3eH/RelsnLgLFINrpST63mmN2OuwUt0W2ndUgYwUA==}
'@codemirror/view@6.39.14':
resolution: {integrity: sha512-WJcvgHm/6Q7dvGT0YFv/6PSkoc36QlR0VCESS6x9tGsnF1lWLmmYxOgX3HH6v8fo6AvSLgpcs+H0Olre6MKXlg==}
'@codemirror/view@6.39.15':
resolution: {integrity: sha512-aCWjgweIIXLBHh7bY6cACvXuyrZ0xGafjQ2VInjp4RM4gMfscK5uESiNdrH0pE+e1lZr2B4ONGsjchl2KsKZzg==}
'@colors/colors@1.5.0':
resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
@@ -4420,7 +4423,7 @@ packages:
'@preact/signals@2.8.1':
resolution: {integrity: sha512-wX6U0SpcCukZTJBs5ChljvBZb3XmYzA5gd4vKHgX8wZZKaQCo2WHtmThdLx+mcVvlBa5u3XShC7ffbETJD4BiQ==}
peerDependencies:
preact: 10.28.3
preact: 10.28.4
'@prefresh/babel-plugin@0.5.2':
resolution: {integrity: sha512-AOl4HG6dAxWkJ5ndPHBgBa49oo/9bOiJuRDKHLSTyH+Fd9x00shTXpdiTj1W41l6oQIwUOAgJeHMn4QwIDpHkA==}
@@ -4428,7 +4431,7 @@ packages:
'@prefresh/core@1.5.5':
resolution: {integrity: sha512-H6GTXUl4V4fe3ijz7yhSa/mZ+pGSOh7XaJb6uP/sQsagBx9yl0D1HKDaeoMQA8Ad2Xm27LqvbitMGSdY9UFSKQ==}
peerDependencies:
preact: 10.28.3
preact: 10.28.4
'@prefresh/utils@1.2.1':
resolution: {integrity: sha512-vq/sIuN5nYfYzvyayXI4C2QkprfNaHUQ9ZX+3xLD8nL3rWyzpxOm1+K7RtMbhd+66QcaISViK7amjnheQ/4WZw==}
@@ -4436,7 +4439,7 @@ packages:
'@prefresh/vite@2.4.12':
resolution: {integrity: sha512-FY1fzXpUjiuosznMV0YM7XAOPZjB5FIdWS0W24+XnlxYkt9hNAwwsiKYn+cuTEoMtD/ZVazS5QVssBr9YhpCQA==}
peerDependencies:
preact: 10.28.3
preact: 10.28.4
vite: '>=2.0.0'
'@promptbook/utils@0.69.5':
@@ -8301,8 +8304,8 @@ packages:
resolution: {integrity: sha512-bO3y10YikuUwUuDUQRM4KfwNkKhnpVO7IPdbsrejwN9/AABJzzTQ4GeHwyzNSrVO+tEH3/Np255a3sVZpZDjvg==}
engines: {node: '>=8.0.0'}
electron@40.4.1:
resolution: {integrity: sha512-N1ZXybQZL8kYemO8vAeh9nrk4mSvqlAO8xs0QCHkXIvRnuB/7VGwEehjvQbsU5/f4bmTKpG+2GQERe/zmKpudQ==}
electron@40.6.0:
resolution: {integrity: sha512-ett8W+yOFGDuM0vhJMamYSkrbV3LoaffzJd9GfjI96zRAxyrNqUSKqBpf/WGbQCweDxX2pkUCUfrv4wwKpsFZA==}
engines: {node: '>= 12.20.55'}
hasBin: true
@@ -8616,10 +8619,6 @@ packages:
resolution: {integrity: sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
espree@9.6.1:
resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
esprima@4.0.1:
resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
engines: {node: '>=4'}
@@ -10252,9 +10251,9 @@ packages:
engines: {node: '>=6'}
hasBin: true
jsonc-eslint-parser@2.4.2:
resolution: {integrity: sha512-1e4qoRgnn448pRuMvKGsFFymUCquZV0mpGgOyIKNgD3JVDTsVJyRBGH/Fm0tBb8WsWGgmB1mDe6/yJMQM37DUA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
jsonc-eslint-parser@3.1.0:
resolution: {integrity: sha512-75EA7EWZExL/j+MDKQrRbdzcRI2HOkRlmUw8fZJc1ioqFEOvBsq7Rt+A6yCxOt9w/TYNpkt52gC6nm/g5tFIng==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
jsonfile@4.0.0:
resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
@@ -12444,20 +12443,21 @@ packages:
preact-iso@2.11.1:
resolution: {integrity: sha512-rLy0RmzP/hrDjnFdnEblxFgKtzUj4njkHrpGJBGS7S4QuYw1zv0lA38qsWpeAAB10JAz/hF2CsHrLen9ufCtbw==}
peerDependencies:
preact: 10.28.3
preact: 10.28.4
preact-render-to-string: '>=6.4.0'
preact-render-to-string@6.6.5:
resolution: {integrity: sha512-O6MHzYNIKYaiSX3bOw0gGZfEbOmlIDtDfWwN1JJdc/T3ihzRT6tGGSEWE088dWrEDGa1u7101q+6fzQnO9XCPA==}
peerDependencies:
preact: 10.28.3
preact: 10.28.4
preact@10.28.3:
resolution: {integrity: sha512-tCmoRkPQLpBeWzpmbhryairGnhW9tKV6c6gr/w+RhoRoKEJwsjzipwp//1oCpGPOchvSLaAPlpcJi9MwMmoPyA==}
preact@10.28.4:
resolution: {integrity: sha512-uKFfOHWuSNpRFVTnljsCluEFq57OKT+0QdOiQo8XWnQ/pSvg7OpX5eNOejELXJMWy+BwM2nobz0FkvzmnpCNsQ==}
prebuild-install@7.1.3:
resolution: {integrity: sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==}
engines: {node: '>=10'}
deprecated: No longer maintained. Please contact the author of the relevant native addon; alternatives are available.
hasBin: true
prelude-ls@1.2.1:
@@ -15344,7 +15344,7 @@ snapshots:
'@antfu/utils@9.2.0': {}
'@anthropic-ai/sdk@0.77.0(zod@4.1.12)':
'@anthropic-ai/sdk@0.78.0(zod@4.1.12)':
dependencies:
json-schema-to-ts: 3.1.1
optionalDependencies:
@@ -16136,8 +16136,6 @@ snapshots:
'@ckeditor/ckeditor5-core': 47.4.0
'@ckeditor/ckeditor5-utils': 47.4.0
ckeditor5: 47.4.0
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-code-block@47.4.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)':
dependencies:
@@ -16203,6 +16201,8 @@ snapshots:
'@ckeditor/ckeditor5-utils': 47.4.0
'@ckeditor/ckeditor5-watchdog': 47.4.0
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-dev-build-tools@54.3.3(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)':
dependencies:
@@ -16328,8 +16328,6 @@ snapshots:
'@ckeditor/ckeditor5-utils': 47.4.0
ckeditor5: 47.4.0
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-editor-classic@47.4.0':
dependencies:
@@ -16565,6 +16563,8 @@ snapshots:
'@ckeditor/ckeditor5-widget': 47.4.0
ckeditor5: 47.4.0
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-icons@47.4.0': {}
@@ -16866,8 +16866,6 @@ snapshots:
'@ckeditor/ckeditor5-ui': 47.4.0
'@ckeditor/ckeditor5-utils': 47.4.0
ckeditor5: 47.4.0
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-restricted-editing@47.4.0':
dependencies:
@@ -16943,7 +16941,7 @@ snapshots:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/theme-one-dark': 6.1.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
ckeditor5: 47.4.0
'@ckeditor/ckeditor5-source-editing@47.4.0':
@@ -17129,21 +17127,21 @@ snapshots:
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@codemirror/commands@6.10.2':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@codemirror/commands@6.8.1':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@codemirror/lang-css@6.3.1':
@@ -17161,7 +17159,7 @@ snapshots:
'@codemirror/lang-javascript': 6.2.4
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@lezer/css': 1.1.11
'@lezer/html': 1.3.12
@@ -17172,7 +17170,7 @@ snapshots:
'@codemirror/language': 6.11.0
'@codemirror/lint': 6.8.5
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@lezer/javascript': 1.5.1
@@ -17187,7 +17185,7 @@ snapshots:
'@codemirror/lang-html': 6.4.11
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@lezer/markdown': 1.4.3
@@ -17197,7 +17195,7 @@ snapshots:
'@codemirror/lang-html': 6.4.11
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@lezer/markdown': 1.4.3
@@ -17223,14 +17221,14 @@ snapshots:
'@codemirror/autocomplete': 6.18.6
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@lezer/xml': 1.0.6
'@codemirror/language@6.11.0':
dependencies:
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@lezer/highlight': 1.2.1
'@lezer/lr': 1.4.2
@@ -17243,13 +17241,13 @@ snapshots:
'@codemirror/lint@6.8.5':
dependencies:
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
crelt: 1.0.6
'@codemirror/search@6.6.0':
dependencies:
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
crelt: 1.0.6
'@codemirror/state@6.5.2':
@@ -17260,10 +17258,10 @@ snapshots:
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@codemirror/view@6.39.14':
'@codemirror/view@6.39.15':
dependencies:
'@codemirror/state': 6.5.2
crelt: 1.0.6
@@ -17754,9 +17752,9 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@electron/remote@2.1.3(electron@40.4.1)':
'@electron/remote@2.1.3(electron@40.6.0)':
dependencies:
electron: 40.4.1
electron: 40.6.0
'@electron/universal@2.0.2':
dependencies:
@@ -18276,177 +18274,177 @@ snapshots:
'@floating-ui/utils@0.2.9': {}
'@fsegurai/codemirror-theme-abcdef@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-abcdef@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-abyss@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-abyss@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-android-studio@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-android-studio@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-andromeda@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-andromeda@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-basic-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-basic-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-basic-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-basic-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-cobalt2@6.0.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-cobalt2@6.0.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-forest@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-forest@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-github-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-github-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-github-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-github-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-gruvbox-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-gruvbox-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-gruvbox-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-gruvbox-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-material-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-material-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-material-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-material-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-monokai@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-monokai@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-nord@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-nord@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-palenight@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-palenight@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-solarized-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-solarized-dark@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-solarized-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-solarized-light@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-tokyo-night-day@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-tokyo-night-day@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-tokyo-night-storm@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-tokyo-night-storm@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-volcano@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-volcano@6.2.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-vscode-dark@6.2.4(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-vscode-dark@6.2.4(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fsegurai/codemirror-theme-vscode-light@6.2.4(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/highlight@1.2.1)':
'@fsegurai/codemirror-theme-vscode-light@6.2.4(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/highlight@1.2.1)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/highlight': 1.2.1
'@fullcalendar/core@6.1.20':
dependencies:
preact: 10.28.3
preact: 10.28.4
'@fullcalendar/daygrid@6.1.20(@fullcalendar/core@6.1.20)':
dependencies:
@@ -19573,12 +19571,12 @@ snapshots:
'@popperjs/core@2.11.8': {}
'@preact/preset-vite@2.10.3(@babel/core@7.28.0)(preact@10.28.3)(rollup@4.52.0)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))':
'@preact/preset-vite@2.10.3(@babel/core@7.28.0)(preact@10.28.4)(rollup@4.52.0)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))':
dependencies:
'@babel/core': 7.28.0
'@babel/plugin-transform-react-jsx': 7.27.1(@babel/core@7.28.0)
'@babel/plugin-transform-react-jsx-development': 7.27.1(@babel/core@7.28.0)
'@prefresh/vite': 2.4.12(preact@10.28.3)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
'@prefresh/vite': 2.4.12(preact@10.28.4)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
'@rollup/pluginutils': 5.1.4(rollup@4.52.0)
babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.28.0)
debug: 4.4.3(supports-color@8.1.1)
@@ -19592,27 +19590,27 @@ snapshots:
'@preact/signals-core@1.13.0': {}
'@preact/signals@2.8.1(preact@10.28.3)':
'@preact/signals@2.8.1(preact@10.28.4)':
dependencies:
'@preact/signals-core': 1.13.0
preact: 10.28.3
preact: 10.28.4
'@prefresh/babel-plugin@0.5.2': {}
'@prefresh/core@1.5.5(preact@10.28.3)':
'@prefresh/core@1.5.5(preact@10.28.4)':
dependencies:
preact: 10.28.3
preact: 10.28.4
'@prefresh/utils@1.2.1': {}
'@prefresh/vite@2.4.12(preact@10.28.3)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))':
'@prefresh/vite@2.4.12(preact@10.28.4)(vite@7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))':
dependencies:
'@babel/core': 7.28.0
'@prefresh/babel-plugin': 0.5.2
'@prefresh/core': 1.5.5(preact@10.28.3)
'@prefresh/core': 1.5.5(preact@10.28.4)
'@prefresh/utils': 1.2.1
'@rollup/pluginutils': 4.2.1
preact: 10.28.3
preact: 10.28.4
vite: 7.3.1(@types/node@24.10.13)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.31.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
transitivePeerDependencies:
- supports-color
@@ -20031,29 +20029,29 @@ snapshots:
outdent: 0.8.0
picomatch: 4.0.3
'@replit/codemirror-indentation-markers@6.5.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)':
'@replit/codemirror-indentation-markers@6.5.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)':
dependencies:
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@replit/codemirror-lang-nix@6.0.1(@codemirror/autocomplete@6.18.6)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/lr@1.4.2)':
'@replit/codemirror-lang-nix@6.0.1(@codemirror/autocomplete@6.18.6)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/lr@1.4.2)':
dependencies:
'@codemirror/autocomplete': 6.18.6
'@codemirror/language': 6.11.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@lezer/common': 1.2.3
'@lezer/highlight': 1.2.1
'@lezer/lr': 1.4.2
'@replit/codemirror-vim@6.3.0(@codemirror/commands@6.10.2)(@codemirror/language@6.11.0)(@codemirror/search@6.6.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.14)':
'@replit/codemirror-vim@6.3.0(@codemirror/commands@6.10.2)(@codemirror/language@6.11.0)(@codemirror/search@6.6.0)(@codemirror/state@6.5.2)(@codemirror/view@6.39.15)':
dependencies:
'@codemirror/commands': 6.10.2
'@codemirror/language': 6.11.0
'@codemirror/search': 6.6.0
'@codemirror/state': 6.5.2
'@codemirror/view': 6.39.14
'@codemirror/view': 6.39.15
'@rolldown/binding-android-arm64@1.0.0-beta.29':
optional: true
@@ -24272,7 +24270,7 @@ snapshots:
- supports-color
optional: true
electron@40.4.1:
electron@40.6.0:
dependencies:
'@electron/get': 2.0.3
'@types/node': 24.10.13
@@ -24863,12 +24861,6 @@ snapshots:
acorn-jsx: 5.3.2(acorn@8.15.0)
eslint-visitor-keys: 5.0.0
espree@9.6.1:
dependencies:
acorn: 8.15.0
acorn-jsx: 5.3.2(acorn@8.15.0)
eslint-visitor-keys: 3.4.3
esprima@4.0.1: {}
esquery@1.6.0:
@@ -25272,7 +25264,7 @@ snapshots:
dependencies:
d3-selection: 3.0.0
kapsule: 1.16.3
preact: 10.28.3
preact: 10.28.4
flora-colossus@2.0.0:
dependencies:
@@ -26758,11 +26750,10 @@ snapshots:
json5@2.2.3: {}
jsonc-eslint-parser@2.4.2:
jsonc-eslint-parser@3.1.0:
dependencies:
acorn: 8.15.0
eslint-visitor-keys: 3.4.3
espree: 9.6.1
eslint-visitor-keys: 5.0.0
semver: 7.7.3
jsonfile@4.0.0:
@@ -29337,16 +29328,16 @@ snapshots:
powershell-utils@0.1.0: {}
preact-iso@2.11.1(preact-render-to-string@6.6.5(preact@10.28.3))(preact@10.28.3):
preact-iso@2.11.1(preact-render-to-string@6.6.5(preact@10.28.4))(preact@10.28.4):
dependencies:
preact: 10.28.3
preact-render-to-string: 6.6.5(preact@10.28.3)
preact: 10.28.4
preact-render-to-string: 6.6.5(preact@10.28.4)
preact-render-to-string@6.6.5(preact@10.28.3):
preact-render-to-string@6.6.5(preact@10.28.4):
dependencies:
preact: 10.28.3
preact: 10.28.4
preact@10.28.3: {}
preact@10.28.4: {}
prebuild-install@7.1.3:
dependencies: