Compare commits

...

11 Commits

Author SHA1 Message Date
SngAbc
b8c6866b72
Merge a81e8adde78e4d608b40d417fdafd2ca3005bdcc into 0b28159e8ee8e0b86e392f5b53d6a38e2aa31d6a 2025-11-30 11:05:29 +02:00
Elian Doran
0b28159e8e
fix(ribbon): formatting toolbar overrides edited notes activation (closes #7900)
Some checks are pending
Checks / main (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Deploy Documentation / Build and Deploy Documentation (push) Waiting to run
Dev / Test development (push) Waiting to run
Dev / Build Docker image (push) Blocked by required conditions
Dev / Check Docker build (Dockerfile) (push) Blocked by required conditions
Dev / Check Docker build (Dockerfile.alpine) (push) Blocked by required conditions
/ Check Docker build (Dockerfile) (push) Waiting to run
/ Check Docker build (Dockerfile.alpine) (push) Waiting to run
/ Build Docker images (Dockerfile, ubuntu-24.04-arm, linux/arm64) (push) Blocked by required conditions
/ Build Docker images (Dockerfile.alpine, ubuntu-latest, linux/amd64) (push) Blocked by required conditions
/ Build Docker images (Dockerfile.legacy, ubuntu-24.04-arm, linux/arm/v7) (push) Blocked by required conditions
/ Build Docker images (Dockerfile.legacy, ubuntu-24.04-arm, linux/arm/v8) (push) Blocked by required conditions
/ Merge manifest lists (push) Blocked by required conditions
playwright / E2E tests on linux-arm64 (push) Waiting to run
playwright / E2E tests on linux-x64 (push) Waiting to run
2025-11-30 10:43:06 +02:00
Elian Doran
d9e8f8e69b
refactor(options): remove unnecessary ribbon activation option 2025-11-30 10:41:26 +02:00
Elian Doran
fa224e46bc
chore(deps): update dependency typedoc to v0.28.15 (#7897) 2025-11-30 09:41:04 +02:00
Elian Doran
06320953e8
chore(deps): update dependency webdriverio to v9.21.0 (#7898) 2025-11-30 09:40:31 +02:00
renovate[bot]
d676084cb3
chore(deps): update dependency webdriverio to v9.21.0 2025-11-30 02:49:59 +00:00
renovate[bot]
0cb5941be0
chore(deps): update dependency typedoc to v0.28.15 2025-11-30 02:49:23 +00:00
SiriusXT
a81e8adde7 client/pageurl: adjust Info bar order
Some checks failed
Checks / main (push) Has been cancelled
2025-11-14 20:22:51 +08:00
SiriusXT
5aec9229d4 chore: remove unnecessary console.log 2025-11-14 18:16:59 +08:00
SiriusXT
0c954322e4 i18n: remove unused translation note_properties.info 2025-11-14 18:08:20 +08:00
SiriusXT
9580d636cf client/pageurl: migrate note origin to info bar 2025-11-14 17:20:35 +08:00
29 changed files with 155 additions and 155 deletions

View File

@ -16,7 +16,7 @@
"fs-extra": "11.3.2",
"react": "19.2.0",
"react-dom": "19.2.0",
"typedoc": "0.28.14",
"typedoc": "0.28.15",
"typedoc-plugin-missing-exports": "4.1.2"
}
}

View File

@ -30,6 +30,7 @@ import ScrollingContainer from "../widgets/containers/scrolling_container.js";
import ScrollPadding from "../widgets/scroll_padding.js";
import SearchResult from "../widgets/search_result.jsx";
import SharedInfo from "../widgets/shared_info.jsx";
import OriginInfo from "../widgets/note_origin.jsx";
import SpacerWidget from "../widgets/spacer.js";
import SplitNoteContainer from "../widgets/containers/split_note_container.js";
import SqlResults from "../widgets/sql_result.js";
@ -139,6 +140,7 @@ export default class DesktopLayout {
.filling()
.child(new ContentHeader()
.child(<ReadOnlyNoteInfoBar />)
.child(<OriginInfo />)
.child(<SharedInfo />)
)
.child(<PromotedAttributes />)

View File

@ -511,7 +511,7 @@
"title": "الملاحظات المعدلة"
},
"note_properties": {
"info": "معلومات"
"this_note_was_originally_taken_from": ""
},
"backend_log": {
"refresh": "تحديث"

View File

@ -840,8 +840,7 @@
"search": "搜索"
},
"note_properties": {
"this_note_was_originally_taken_from": "笔记来源:",
"info": "信息"
"this_note_was_originally_taken_from": "笔记来源:"
},
"owned_attribute_list": {
"owned_attributes": "拥有的属性"

View File

@ -837,8 +837,7 @@
"search": "Suchen"
},
"note_properties": {
"this_note_was_originally_taken_from": "Diese Notiz stammt ursprünglich aus:",
"info": "Info"
"this_note_was_originally_taken_from": "Diese Notiz stammt ursprünglich aus:"
},
"owned_attribute_list": {
"owned_attributes": "Eigene Attribute"

View File

@ -841,8 +841,7 @@
"search": "Search"
},
"note_properties": {
"this_note_was_originally_taken_from": "This note was originally taken from:",
"info": "Info"
"this_note_was_originally_taken_from": "This note was originally taken from:"
},
"owned_attribute_list": {
"owned_attributes": "Owned Attributes"

View File

@ -840,8 +840,7 @@
"search": "Buscar"
},
"note_properties": {
"this_note_was_originally_taken_from": "Esta nota fue tomada originalmente de:",
"info": "Información"
"this_note_was_originally_taken_from": "Esta nota fue tomada originalmente de:"
},
"owned_attribute_list": {
"owned_attributes": "Atributos propios"

View File

@ -834,8 +834,7 @@
"search": "Recherche"
},
"note_properties": {
"this_note_was_originally_taken_from": "Cette note est initialement extraite de :",
"info": "Infos"
"this_note_was_originally_taken_from": "Cette note est initialement extraite de :"
},
"owned_attribute_list": {
"owned_attributes": "Attributs propres"

View File

@ -1409,8 +1409,7 @@
"search": "Ricerca"
},
"note_properties": {
"this_note_was_originally_taken_from": "Questa nota è stata originariamente tratta da:",
"info": "Informazioni"
"this_note_was_originally_taken_from": "Questa nota è stata originariamente tratta da:"
},
"owned_attribute_list": {
"owned_attributes": "Attributi posseduti"

View File

@ -692,7 +692,6 @@
"outside_hoisted": "このパスはホイストされたノートの外側にあるため、ホイストを解除する必要があります。"
},
"note_properties": {
"info": "情報",
"this_note_was_originally_taken_from": "このノートは元々以下から引用したものです:"
},
"similar_notes": {

View File

@ -447,8 +447,7 @@
"search": "Szukaj"
},
"note_properties": {
"this_note_was_originally_taken_from": "Ta notatka oryginalnie została wzięta z:",
"info": "Info"
"this_note_was_originally_taken_from": "Ta notatka oryginalnie została wzięta z:"
},
"owned_attribute_list": {
"owned_attributes": "Posiadane atrybuty"

View File

@ -809,8 +809,7 @@
"search": "Pesquisar"
},
"note_properties": {
"this_note_was_originally_taken_from": "Esta nota foi originalmente obtida de:",
"info": "Informações"
"this_note_was_originally_taken_from": "Esta nota foi originalmente obtida de:"
},
"owned_attribute_list": {
"owned_attributes": "Atributos próprios"

View File

@ -1075,8 +1075,7 @@
"outside_hoisted": "Este caminho está fora de uma nota fixada e você teria que desafixar."
},
"note_properties": {
"this_note_was_originally_taken_from": "Esta nota foi originalmente obtida de:",
"info": "Informações"
"this_note_was_originally_taken_from": "Esta nota foi originalmente obtida de:"
},
"promoted_attributes": {
"promoted_attributes": "Atributos Promovidos",

View File

@ -910,7 +910,6 @@
"title": "Căile notiței"
},
"note_properties": {
"info": "Informații",
"this_note_was_originally_taken_from": "Această notiță a fost preluată original de la:"
},
"note_type_chooser": {

View File

@ -1066,7 +1066,6 @@
"archived": "Архивировано"
},
"note_properties": {
"info": "Информация",
"this_note_was_originally_taken_from": "Эта заметка была первоначально взята из:"
},
"promoted_attributes": {

View File

@ -837,8 +837,7 @@
"search": "搜尋"
},
"note_properties": {
"this_note_was_originally_taken_from": "筆記來源:",
"info": "資訊"
"this_note_was_originally_taken_from": "筆記來源:"
},
"owned_attribute_list": {
"owned_attributes": "自有屬性"

View File

@ -938,8 +938,7 @@
"outside_hoisted": "Цей шлях знаходиться поза межами закріпленої нотатки і вам доведеться відкріпити."
},
"note_properties": {
"this_note_was_originally_taken_from": "Цю нотатку було спочатку взято з:",
"info": "Інформація"
"this_note_was_originally_taken_from": "Цю нотатку було спочатку взято з:"
},
"owned_attribute_list": {
"owned_attributes": "Власні Атрибути"

View File

@ -0,0 +1,43 @@
import { t } from "../services/i18n";
import { useNoteContext, useTriliumEvent, useTriliumOption } from "./react/hooks";
import { useEffect, useState } from "preact/hooks";
import attributes from "../services/attributes";
import InfoBar from "./react/InfoBar";
import RawHtml from "./react/RawHtml";
import FNote from "../entities/fnote";
export default function OriginInfo() {
const { note } = useNoteContext();
const [link, setLink] = useState<string>();
function refresh() {
if (!note) return;
const pageUrl = getPageUrl(note);
if (!pageUrl) {
setLink(undefined);
return;
}
setLink(`<a href="${pageUrl}" class="external tn-link">${pageUrl}</a>`);
}
useEffect(refresh, [note]);
useTriliumEvent("entitiesReloaded", ({ loadResults }) => {
if (loadResults.getAttributeRows().find((attr) => attr.type === "label" && attr.name?.toString() === "pageUrl" && attributes.isAffecting(attr, note))) {
refresh();
}
});
return (
<InfoBar className="origin-info-widget" type="subtle" style={{ display: (!link) ? "none" : undefined }}>
{link && (
<RawHtml
html={`${t("note_properties.this_note_was_originally_taken_from")} ${link}`}
/>
)}
</InfoBar>
)
}
function getPageUrl(note: FNote) {
return note.getOwnedLabelValue("pageUrl");
}

View File

@ -1,20 +0,0 @@
import { t } from "../../services/i18n";
import { useNoteLabel } from "../react/hooks";
import { TabContext } from "./ribbon-interface";
/**
* TODO: figure out better name or conceptualize better.
*/
export default function NotePropertiesTab({ note }: TabContext) {
const [ pageUrl ] = useNoteLabel(note, "pageUrl");
return (
<div className="note-properties-widget" style={{ padding: "12px", color: "var(--muted-text-color)" }}>
{ pageUrl && (
<div style={{ overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }}>
{t("note_properties.this_note_was_originally_taken_from")} <a href={pageUrl} class="page-url external">{pageUrl}</a>
</div>
)}
</div>
)
}

View File

@ -1,6 +1,5 @@
import ScriptTab from "./ScriptTab";
import EditedNotesTab from "./EditedNotesTab";
import NotePropertiesTab from "./NotePropertiesTab";
import NoteInfoTab from "./NoteInfoTab";
import SimilarNotesTab from "./SimilarNotesTab";
import FilePropertiesTab from "./FilePropertiesTab";
@ -26,7 +25,7 @@ export const RIBBON_TAB_DEFINITIONS: TabConfiguration[] = [
&& !(await noteContext?.isReadOnly()),
toggleCommand: "toggleRibbonTabClassicEditor",
content: FormattingToolbar,
activate: true,
activate: () => !options.is("editedNotesOpenInRibbon"),
stayInDom: true
},
{
@ -50,7 +49,7 @@ export const RIBBON_TAB_DEFINITIONS: TabConfiguration[] = [
icon: "bx bx-calendar-edit",
content: EditedNotesTab,
show: ({ note }) => note?.hasOwnedLabel("dateNote"),
activate: ({ note }) => (note?.getPromotedDefinitionAttributes().length === 0 || !options.is("promotedAttributesOpenInRibbon")) && options.is("editedNotesOpenInRibbon")
activate: () => options.is("editedNotesOpenInRibbon")
},
{
title: t("book_properties.book_properties"),
@ -59,13 +58,6 @@ export const RIBBON_TAB_DEFINITIONS: TabConfiguration[] = [
show: ({ note }) => note?.type === "book" || note?.type === "search",
toggleCommand: "toggleRibbonTabBookProperties"
},
{
title: t("note_properties.info"),
icon: "bx bx-info-square",
content: NotePropertiesTab,
show: ({ note }) => !!note?.getLabelValue("pageUrl"),
activate: true
},
{
title: t("file_properties.title"),
icon: "bx bx-file",

View File

@ -80,7 +80,6 @@ const ALLOWED_OPTIONS = new Set<OptionNames>([
"disableTray",
"customSearchEngineName",
"customSearchEngineUrl",
"promotedAttributesOpenInRibbon",
"editedNotesOpenInRibbon",
"locale",
"formattingLocale",

View File

@ -129,7 +129,6 @@ const defaultOptions: DefaultOption[] = [
{ name: "logRetentionDays", value: "90", isSynced: false }, // default 90 days
{ name: "customSearchEngineName", value: "DuckDuckGo", isSynced: true },
{ name: "customSearchEngineUrl", value: "https://duckduckgo.com/?q={keyword}", isSynced: true },
{ name: "promotedAttributesOpenInRibbon", value: "true", isSynced: true },
{ name: "editedNotesOpenInRibbon", value: "true", isSynced: true },
{ name: "mfaEnabled", value: "false", isSynced: false },
{ name: "mfaMethod", value: "totp", isSynced: false },

View File

@ -39,7 +39,7 @@
"typescript": "5.9.3",
"vite-plugin-svgo": "~2.0.0",
"vitest": "4.0.14",
"webdriverio": "9.20.1"
"webdriverio": "9.21.0"
},
"peerDependencies": {
"ckeditor5": "47.2.0"

View File

@ -40,7 +40,7 @@
"typescript": "5.9.3",
"vite-plugin-svgo": "~2.0.0",
"vitest": "4.0.14",
"webdriverio": "9.20.1"
"webdriverio": "9.21.0"
},
"peerDependencies": {
"ckeditor5": "47.2.0"

View File

@ -42,7 +42,7 @@
"typescript": "5.9.3",
"vite-plugin-svgo": "~2.0.0",
"vitest": "4.0.14",
"webdriverio": "9.20.1"
"webdriverio": "9.21.0"
},
"peerDependencies": {
"ckeditor5": "47.2.0"

View File

@ -43,7 +43,7 @@
"typescript": "5.9.3",
"vite-plugin-svgo": "~2.0.0",
"vitest": "4.0.14",
"webdriverio": "9.20.1"
"webdriverio": "9.21.0"
},
"peerDependencies": {
"ckeditor5": "47.2.0"

View File

@ -42,7 +42,7 @@
"typescript": "5.9.3",
"vite-plugin-svgo": "~2.0.0",
"vitest": "4.0.14",
"webdriverio": "9.20.1"
"webdriverio": "9.21.0"
},
"peerDependencies": {
"ckeditor5": "47.2.0"

View File

@ -121,7 +121,6 @@ export interface OptionDefinitions extends KeyboardShortcutsOptions<KeyboardActi
downloadImagesAutomatically: boolean;
checkForUpdates: boolean;
disableTray: boolean;
promotedAttributesOpenInRibbon: boolean;
editedNotesOpenInRibbon: boolean;
codeBlockWordWrap: boolean;
textNoteEditorMultilineToolbar: boolean;

180
pnpm-lock.yaml generated
View File

@ -57,7 +57,7 @@ importers:
version: 24.10.1
'@vitest/browser-webdriverio':
specifier: 4.0.14
version: 4.0.14(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.14)(webdriverio@9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5))
version: 4.0.14(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.14)(webdriverio@9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))
'@vitest/coverage-v8':
specifier: 4.0.14
version: 4.0.14(@vitest/browser@4.0.14(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.14))(vitest@4.0.14)
@ -149,11 +149,11 @@ importers:
specifier: 19.2.0
version: 19.2.0(react@19.2.0)
typedoc:
specifier: 0.28.14
version: 0.28.14(typescript@5.9.3)
specifier: 0.28.15
version: 0.28.15(typescript@5.9.3)
typedoc-plugin-missing-exports:
specifier: 4.1.2
version: 4.1.2(typedoc@0.28.14(typescript@5.9.3))
version: 4.1.2(typedoc@0.28.15(typescript@5.9.3))
apps/client:
dependencies:
@ -933,8 +933,8 @@ importers:
specifier: 4.0.14
version: 4.0.14(@opentelemetry/api@1.9.0)(@types/node@24.10.1)(@vitest/browser-webdriverio@4.0.14)(@vitest/ui@4.0.14)(happy-dom@20.0.11)(jiti@2.6.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(less@4.1.3)(lightningcss@1.30.1)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)
webdriverio:
specifier: 9.20.1
version: 9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5)
specifier: 9.21.0
version: 9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)
packages/ckeditor5-footnotes:
devDependencies:
@ -993,8 +993,8 @@ importers:
specifier: 4.0.14
version: 4.0.14(@opentelemetry/api@1.9.0)(@types/node@24.10.1)(@vitest/browser-webdriverio@4.0.14)(@vitest/ui@4.0.14)(happy-dom@20.0.11)(jiti@2.6.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(less@4.1.3)(lightningcss@1.30.1)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)
webdriverio:
specifier: 9.20.1
version: 9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5)
specifier: 9.21.0
version: 9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)
packages/ckeditor5-keyboard-marker:
devDependencies:
@ -1053,8 +1053,8 @@ importers:
specifier: 4.0.14
version: 4.0.14(@opentelemetry/api@1.9.0)(@types/node@24.10.1)(@vitest/browser-webdriverio@4.0.14)(@vitest/ui@4.0.14)(happy-dom@20.0.11)(jiti@2.6.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(less@4.1.3)(lightningcss@1.30.1)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)
webdriverio:
specifier: 9.20.1
version: 9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5)
specifier: 9.21.0
version: 9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)
packages/ckeditor5-math:
dependencies:
@ -1120,8 +1120,8 @@ importers:
specifier: 4.0.14
version: 4.0.14(@opentelemetry/api@1.9.0)(@types/node@24.10.1)(@vitest/browser-webdriverio@4.0.14)(@vitest/ui@4.0.14)(happy-dom@20.0.11)(jiti@2.6.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(less@4.1.3)(lightningcss@1.30.1)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)
webdriverio:
specifier: 9.20.1
version: 9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5)
specifier: 9.21.0
version: 9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)
packages/ckeditor5-mermaid:
dependencies:
@ -1187,8 +1187,8 @@ importers:
specifier: 4.0.14
version: 4.0.14(@opentelemetry/api@1.9.0)(@types/node@24.10.1)(@vitest/browser-webdriverio@4.0.14)(@vitest/ui@4.0.14)(happy-dom@20.0.11)(jiti@2.6.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(less@4.1.3)(lightningcss@1.30.1)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)
webdriverio:
specifier: 9.20.1
version: 9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5)
specifier: 9.21.0
version: 9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)
packages/codemirror:
dependencies:
@ -3164,8 +3164,8 @@ packages:
'@gar/promisify@1.1.3':
resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==}
'@gerrit0/mini-shiki@3.14.0':
resolution: {integrity: sha512-c5X8fwPLOtUS8TVdqhynz9iV0GlOtFUT1ppXYzUUlEXe4kbZ/mvMT8wXoT8kCwUka+zsiloq7sD3pZ3+QVTuNQ==}
'@gerrit0/mini-shiki@3.17.0':
resolution: {integrity: sha512-Bpf6WuFar20ZXL6qU6VpVl4bVQfyyYiX+6O4xrns4nkU3Mr8paeupDbS1HENpcLOYj7pN4Rkd/yCaPA0vQwKww==}
'@hapi/hoek@9.3.0':
resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==}
@ -4701,17 +4701,17 @@ packages:
'@selderee/plugin-htmlparser2@0.11.0':
resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==}
'@shikijs/engine-oniguruma@3.14.0':
resolution: {integrity: sha512-TNcYTYMbJyy+ZjzWtt0bG5y4YyMIWC2nyePz+CFMWqm+HnZZyy9SWMgo8Z6KBJVIZnx8XUXS8U2afO6Y0g1Oug==}
'@shikijs/engine-oniguruma@3.17.0':
resolution: {integrity: sha512-flSbHZAiOZDNTrEbULY8DLWavu/TyVu/E7RChpLB4WvKX4iHMfj80C6Hi3TjIWaQtHOW0KC6kzMcuB5TO1hZ8Q==}
'@shikijs/langs@3.14.0':
resolution: {integrity: sha512-DIB2EQY7yPX1/ZH7lMcwrK5pl+ZkP/xoSpUzg9YC8R+evRCCiSQ7yyrvEyBsMnfZq4eBzLzBlugMyTAf13+pzg==}
'@shikijs/langs@3.17.0':
resolution: {integrity: sha512-icmur2n5Ojb+HAiQu6NEcIIJ8oWDFGGEpiqSCe43539Sabpx7Y829WR3QuUW2zjTM4l6V8Sazgb3rrHO2orEAw==}
'@shikijs/themes@3.14.0':
resolution: {integrity: sha512-fAo/OnfWckNmv4uBoUu6dSlkcBc+SA1xzj5oUSaz5z3KqHtEbUypg/9xxgJARtM6+7RVm0Q6Xnty41xA1ma1IA==}
'@shikijs/themes@3.17.0':
resolution: {integrity: sha512-/xEizMHLBmMHwtx4JuOkRf3zwhWD2bmG5BRr0IPjpcWpaq4C3mYEuTk/USAEglN0qPrTwEHwKVpSu/y2jhferA==}
'@shikijs/types@3.14.0':
resolution: {integrity: sha512-bQGgC6vrY8U/9ObG1Z/vTro+uclbjjD/uG58RvfxKZVD5p9Yc1ka3tVyEFy7BNJLzxuWyHH5NWynP9zZZS59eQ==}
'@shikijs/types@3.17.0':
resolution: {integrity: sha512-wjLVfutYWVUnxAjsWEob98xgyaGv0dTEnMZDruU5mRjVN7szcGOfgO+997W2yR6odp+1PtSBNeSITRRTfUzK/g==}
'@shikijs/vscode-textmate@10.0.2':
resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==}
@ -5449,9 +5449,6 @@ packages:
'@types/node@16.9.1':
resolution: {integrity: sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==}
'@types/node@20.19.24':
resolution: {integrity: sha512-FE5u0ezmi6y9OZEzlJfg37mqqf6ZDSF2V/NLjUyGrR9uTZ7Sb9F7bLNZ03S4XVUNRWGA7Ck4c1kK+YnuWjl+DA==}
'@types/node@20.19.25':
resolution: {integrity: sha512-ZsJzA5thDQMSQO788d7IocwwQbI8B5OPzmqNvpf3NY/+MHDAS759Wo0gd2WQeXYt5AAAQjzcrTVC6SKCuYgoCQ==}
@ -5852,8 +5849,8 @@ packages:
'@vue/shared@3.5.14':
resolution: {integrity: sha512-oXTwNxVfc9EtP1zzXAlSlgARLXNC84frFYkS0HHz0h3E4WZSP9sywqjqzGCP9Y34M8ipNmd380pVgmMuwELDyQ==}
'@wdio/config@9.20.1':
resolution: {integrity: sha512-npl2J+rjCDJPjVySgWpciOyhWddn6s7n5sepKXLR7x1ADQHl5zUFv1dHD3jx4OQ9l6lrGQSPaofuz+7e9mu+vg==}
'@wdio/config@9.21.0':
resolution: {integrity: sha512-8TP5/q+Agjc43LET1f0LhLmuEI803O3QtZEbSxOkkvJ7/e1jDWPm4qsL7SjQJlx8xGrW0kwRlPl7+U9Sr0dhCQ==}
engines: {node: '>=18.20.0'}
'@wdio/logger@9.18.0':
@ -5871,8 +5868,8 @@ packages:
resolution: {integrity: sha512-zMmAtse2UMCSOW76mvK3OejauAdcFGuKopNRH7crI0gwKTZtvV89yXWRziz9cVXpFgfmJCjf9edxKFWdhuF5yw==}
engines: {node: '>=18.20.0'}
'@wdio/utils@9.20.1':
resolution: {integrity: sha512-C/Gsy5NAatsGUF1eT9Ks/ErR52/X4YI7MSm7BtwNOw8v2Ko+SiCA5qXts61J0A7QYwOn4gfXfBZZnzSAng6G/w==}
'@wdio/utils@9.21.0':
resolution: {integrity: sha512-aj8ao2V/e6Sv9gZby2ZIj4dMLjwYVba47Nlr+pOfK8N4VKKU0VRLPzvTlfK1HWaoS6u/GBbVx2pefYRrvd72BQ==}
engines: {node: '>=18.20.0'}
'@webassemblyjs/ast@1.14.1':
@ -5933,6 +5930,10 @@ packages:
'@xtuc/long@4.2.2':
resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==}
'@zip.js/zip.js@2.8.11':
resolution: {integrity: sha512-0fztsk/0ryJ+2PPr9EyXS5/Co7OK8q3zY/xOoozEWaUsL5x+C0cyZ4YyMuUffOO2Dx/rAdq4JMPqW0VUtm+vzA==}
engines: {bun: '>=0.7.0', deno: '>=1.0.0', node: '>=18.0.0'}
'@zip.js/zip.js@2.8.2':
resolution: {integrity: sha512-PI6UdgpSeVoGvzguKHmy2bwOqI3UYkntLZOCpyJSKIi7234c5aJmQYkJB/P4P2YUJkqhbqvu7iM2/0eJZ178nA==}
engines: {bun: '>=0.7.0', deno: '>=1.0.0', node: '>=16.5.0'}
@ -8599,9 +8600,9 @@ packages:
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
deprecated: This package is no longer supported.
geckodriver@5.0.0:
resolution: {integrity: sha512-vn7TtQ3b9VMJtVXsyWtQQl1fyBVFhQy7UvJF96kPuuJ0or5THH496AD3eUyaDD11+EqCxH9t6V+EP9soZQk4YQ==}
engines: {node: '>=18.0.0'}
geckodriver@6.1.0:
resolution: {integrity: sha512-ZRXLa4ZaYTTgUO4Eefw+RsQCleugU2QLb1ME7qTYxxuRj51yAhfnXaItXNs5/vUzfIaDHuZ+YnSF005hfp07nQ==}
engines: {node: '>=20.0.0'}
hasBin: true
generate-function@2.3.1:
@ -10616,6 +10617,10 @@ packages:
resolution: {integrity: sha512-2emPTb1reeLLYwHxyVx993iYyCHEiRRO+y8NFXFPL5kl5q14sgTK76cXyEKkeKCHeRw35SfdkUJ10Q1KfHuiIQ==}
engines: {node: '>= 0.4'}
modern-tar@0.7.2:
resolution: {integrity: sha512-TGG1ZRk1TAQ3neuZwahAHke3rKsSlro+ooMYtjh9sl2gGPVMLMuWiHgwC7im9T5bSM566RSo2Dko56ETgEvZcA==}
engines: {node: '>=18.0.0'}
morphdom@2.7.7:
resolution: {integrity: sha512-04GmsiBcalrSCNmzfo+UjU8tt3PhZJKzcOy+r1FlGA7/zri8wre3I1WkYN9PT3sIeIKfW9bpyElA+VzOg2E24g==}
@ -14043,8 +14048,8 @@ packages:
peerDependencies:
typedoc: ^0.28.1
typedoc@0.28.14:
resolution: {integrity: sha512-ftJYPvpVfQvFzpkoSfHLkJybdA/geDJ8BGQt/ZnkkhnBYoYW6lBgPQXu6vqLxO4X75dA55hX8Af847H5KXlEFA==}
typedoc@0.28.15:
resolution: {integrity: sha512-mw2/2vTL7MlT+BVo43lOsufkkd2CJO4zeOSuWQQsiXoV2VuEn7f6IZp2jsUDPmBMABpgR0R5jlcJ2OGEFYmkyg==}
engines: {node: '>= 18', pnpm: '>= 10'}
hasBin: true
peerDependencies:
@ -14525,12 +14530,12 @@ packages:
resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==}
engines: {node: '>= 8'}
webdriver@9.20.1:
resolution: {integrity: sha512-QtvYqPai2NOnq7qePPH6kNSwk7+tnmSvnlOnY8dIT/Y24TPdQp44NjF/BUYAWIlqoBlZqHClQFTSVwT2qvO2Tw==}
webdriver@9.21.0:
resolution: {integrity: sha512-XLOhpU/EFPo4TMk+0fRli4g1WriUujxrfDxGT/QRq0MJsfhSYPF8FdefFdL5gHIrJfSKscaQHGWkbnsHftfqeg==}
engines: {node: '>=18.20.0'}
webdriverio@9.20.1:
resolution: {integrity: sha512-QVM/asb5sDESz37ow/BAOA0z2HtUJsuAjPKHdw+Vx92PaQP3EfHwTgxK2T5rgwa0WRNh+c+n/0nEqIvqBl01sA==}
webdriverio@9.21.0:
resolution: {integrity: sha512-7teaXajOuNdn2UyyKlqMLssJjf0vDEih+Lo+tE/gHOt/P+mB8CinZym4PGtsriZLcyt4xV+Cun3hDmXM+pL26A==}
engines: {node: '>=18.20.0'}
peerDependencies:
puppeteer-core: '>=22.x || <=24.x'
@ -16042,8 +16047,6 @@ snapshots:
'@ckeditor/ckeditor5-utils': 47.2.0
ckeditor5: 47.2.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-editor-multi-root@47.2.0':
dependencies:
@ -16093,6 +16096,8 @@ snapshots:
'@ckeditor/ckeditor5-core': 47.2.0
'@ckeditor/ckeditor5-engine': 47.2.0
'@ckeditor/ckeditor5-utils': 47.2.0
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-essentials@47.2.0':
dependencies:
@ -16749,8 +16754,6 @@ snapshots:
'@ckeditor/ckeditor5-icons': 47.2.0
'@ckeditor/ckeditor5-ui': 47.2.0
'@ckeditor/ckeditor5-utils': 47.2.0
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-upload@47.2.0':
dependencies:
@ -18056,12 +18059,12 @@ snapshots:
'@gar/promisify@1.1.3': {}
'@gerrit0/mini-shiki@3.14.0':
'@gerrit0/mini-shiki@3.17.0':
dependencies:
'@shikijs/engine-oniguruma': 3.14.0
'@shikijs/langs': 3.14.0
'@shikijs/themes': 3.14.0
'@shikijs/types': 3.14.0
'@shikijs/engine-oniguruma': 3.17.0
'@shikijs/langs': 3.17.0
'@shikijs/themes': 3.17.0
'@shikijs/types': 3.17.0
'@shikijs/vscode-textmate': 10.0.2
'@hapi/hoek@9.3.0': {}
@ -19777,20 +19780,20 @@ snapshots:
domhandler: 5.0.3
selderee: 0.11.0
'@shikijs/engine-oniguruma@3.14.0':
'@shikijs/engine-oniguruma@3.17.0':
dependencies:
'@shikijs/types': 3.14.0
'@shikijs/types': 3.17.0
'@shikijs/vscode-textmate': 10.0.2
'@shikijs/langs@3.14.0':
'@shikijs/langs@3.17.0':
dependencies:
'@shikijs/types': 3.14.0
'@shikijs/types': 3.17.0
'@shikijs/themes@3.14.0':
'@shikijs/themes@3.17.0':
dependencies:
'@shikijs/types': 3.14.0
'@shikijs/types': 3.17.0
'@shikijs/types@3.14.0':
'@shikijs/types@3.17.0':
dependencies:
'@shikijs/vscode-textmate': 10.0.2
'@types/hast': 3.0.4
@ -20725,7 +20728,7 @@ snapshots:
'@types/mute-stream@0.0.4':
dependencies:
'@types/node': 22.19.1
'@types/node': 24.10.1
'@types/node-forge@1.3.14':
dependencies:
@ -20733,10 +20736,6 @@ snapshots:
'@types/node@16.9.1': {}
'@types/node@20.19.24':
dependencies:
undici-types: 6.21.0
'@types/node@20.19.25':
dependencies:
undici-types: 6.21.0
@ -20914,7 +20913,7 @@ snapshots:
'@types/yauzl@2.10.3':
dependencies:
'@types/node': 22.18.13
'@types/node': 24.10.1
optional: true
'@typescript-eslint/eslint-plugin@8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)':
@ -21141,11 +21140,11 @@ snapshots:
- bufferutil
- utf-8-validate
'@vitest/browser-webdriverio@4.0.14(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.14)(webdriverio@9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5))':
'@vitest/browser-webdriverio@4.0.14(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.14)(webdriverio@9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))':
dependencies:
'@vitest/browser': 4.0.14(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.14)
vitest: 4.0.14(@opentelemetry/api@1.9.0)(@types/node@24.10.1)(@vitest/browser-webdriverio@4.0.14)(@vitest/ui@4.0.14)(happy-dom@20.0.11)(jiti@2.6.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(less@4.1.3)(lightningcss@1.30.1)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)
webdriverio: 9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5)
webdriverio: 9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)
transitivePeerDependencies:
- bufferutil
- msw
@ -21301,11 +21300,11 @@ snapshots:
'@vue/shared@3.5.14': {}
'@wdio/config@9.20.1':
'@wdio/config@9.21.0':
dependencies:
'@wdio/logger': 9.18.0
'@wdio/types': 9.20.0
'@wdio/utils': 9.20.1
'@wdio/utils': 9.21.0
deepmerge-ts: 7.1.5
glob: 10.4.5
import-meta-resolve: 4.2.0
@ -21325,13 +21324,13 @@ snapshots:
'@wdio/repl@9.16.2':
dependencies:
'@types/node': 20.19.24
'@types/node': 20.19.25
'@wdio/types@9.20.0':
dependencies:
'@types/node': 20.19.24
'@types/node': 20.19.25
'@wdio/utils@9.20.1':
'@wdio/utils@9.21.0':
dependencies:
'@puppeteer/browsers': 2.10.10
'@wdio/logger': 9.18.0
@ -21339,7 +21338,7 @@ snapshots:
decamelize: 6.0.1
deepmerge-ts: 7.1.5
edgedriver: 6.1.2
geckodriver: 5.0.0
geckodriver: 6.1.0
get-port: 7.1.0
import-meta-resolve: 4.2.0
locate-app: 2.5.0
@ -21435,6 +21434,8 @@ snapshots:
'@xtuc/long@4.2.2': {}
'@zip.js/zip.js@2.8.11': {}
'@zip.js/zip.js@2.8.2': {}
abab@2.0.6: {}
@ -24932,18 +24933,15 @@ snapshots:
wide-align: 1.1.5
optional: true
geckodriver@5.0.0:
geckodriver@6.1.0:
dependencies:
'@wdio/logger': 9.18.0
'@zip.js/zip.js': 2.8.2
'@zip.js/zip.js': 2.8.11
decamelize: 6.0.1
http-proxy-agent: 7.0.2
https-proxy-agent: 7.0.6
node-fetch: 3.3.2
tar-fs: 3.1.1
which: 5.0.0
modern-tar: 0.7.2
transitivePeerDependencies:
- bare-buffer
- supports-color
generate-function@2.3.1:
@ -27452,6 +27450,8 @@ snapshots:
hasown: 2.0.2
isarray: 2.0.5
modern-tar@0.7.2: {}
morphdom@2.7.7: {}
mrmime@2.0.1: {}
@ -31446,13 +31446,13 @@ snapshots:
typedarray@0.0.6: {}
typedoc-plugin-missing-exports@4.1.2(typedoc@0.28.14(typescript@5.9.3)):
typedoc-plugin-missing-exports@4.1.2(typedoc@0.28.15(typescript@5.9.3)):
dependencies:
typedoc: 0.28.14(typescript@5.9.3)
typedoc: 0.28.15(typescript@5.9.3)
typedoc@0.28.14(typescript@5.9.3):
typedoc@0.28.15(typescript@5.9.3):
dependencies:
'@gerrit0/mini-shiki': 3.14.0
'@gerrit0/mini-shiki': 3.17.0
lunr: 2.3.9
markdown-it: 14.1.0
minimatch: 9.0.5
@ -31824,7 +31824,7 @@ snapshots:
optionalDependencies:
'@opentelemetry/api': 1.9.0
'@types/node': 24.10.1
'@vitest/browser-webdriverio': 4.0.14(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.14)(webdriverio@9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5))
'@vitest/browser-webdriverio': 4.0.14(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.1)(typescript@5.9.3))(utf-8-validate@6.0.5)(vite@7.2.4(@types/node@24.10.1)(jiti@2.6.1)(less@4.1.3)(lightningcss@1.30.1)(sass-embedded@1.91.0)(sass@1.91.0)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))(vitest@4.0.14)(webdriverio@9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))
'@vitest/ui': 4.0.14(vitest@4.0.14)
happy-dom: 20.0.11
jsdom: 26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)
@ -31914,15 +31914,15 @@ snapshots:
web-streams-polyfill@3.3.3: {}
webdriver@9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5):
webdriver@9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5):
dependencies:
'@types/node': 20.19.24
'@types/node': 20.19.25
'@types/ws': 8.18.1
'@wdio/config': 9.20.1
'@wdio/config': 9.21.0
'@wdio/logger': 9.18.0
'@wdio/protocols': 9.16.2
'@wdio/types': 9.20.0
'@wdio/utils': 9.20.1
'@wdio/utils': 9.21.0
deepmerge-ts: 7.1.5
https-proxy-agent: 7.0.6
undici: 6.21.3
@ -31933,16 +31933,16 @@ snapshots:
- supports-color
- utf-8-validate
webdriverio@9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5):
webdriverio@9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5):
dependencies:
'@types/node': 20.19.24
'@types/node': 20.19.25
'@types/sinonjs__fake-timers': 8.1.5
'@wdio/config': 9.20.1
'@wdio/config': 9.21.0
'@wdio/logger': 9.18.0
'@wdio/protocols': 9.16.2
'@wdio/repl': 9.16.2
'@wdio/types': 9.20.0
'@wdio/utils': 9.20.1
'@wdio/utils': 9.21.0
archiver: 7.0.1
aria-query: 5.3.2
cheerio: 1.1.2
@ -31959,7 +31959,7 @@ snapshots:
rgb2hex: 0.2.5
serialize-error: 12.0.0
urlpattern-polyfill: 10.1.0
webdriver: 9.20.1(bufferutil@4.0.9)(utf-8-validate@6.0.5)
webdriver: 9.21.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)
transitivePeerDependencies:
- bare-buffer
- bufferutil