From 5e9c271bfde7ac4b8f3de2539e7801cca0827e90 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Thu, 30 Oct 2025 22:36:41 +0200 Subject: [PATCH 001/136] docs(release): port v0.48 changelog --- docs/Release Notes/!!!meta.json | 69 +++++++++- docs/Release Notes/Release Notes/v0.48.md | 121 ++++++++++++++++++ .../Release Notes/v0.48_bookmarks.png | Bin 0 -> 96427 bytes .../Release Notes/v0.48_mermaid.png | Bin 0 -> 97465 bytes .../Release Notes/v0.48_note-map.png | Bin 0 -> 88468 bytes .../Release Notes/v0.48_screenshot.png | Bin 0 -> 105337 bytes .../Release Notes/v0.48_split.png | Bin 0 -> 114581 bytes 7 files changed, 189 insertions(+), 1 deletion(-) create mode 100644 docs/Release Notes/Release Notes/v0.48.md create mode 100644 docs/Release Notes/Release Notes/v0.48_bookmarks.png create mode 100644 docs/Release Notes/Release Notes/v0.48_mermaid.png create mode 100644 docs/Release Notes/Release Notes/v0.48_note-map.png create mode 100644 docs/Release Notes/Release Notes/v0.48_screenshot.png create mode 100644 docs/Release Notes/Release Notes/v0.48_split.png diff --git a/docs/Release Notes/!!!meta.json b/docs/Release Notes/!!!meta.json index 356c59d4a..2a508e594 100644 --- a/docs/Release Notes/!!!meta.json +++ b/docs/Release Notes/!!!meta.json @@ -935,6 +935,73 @@ "dataFileName": "v0.90.0-beta.md", "attachments": [] }, + { + "isClone": false, + "noteId": "kzjHexDTTeVB", + "notePath": [ + "hD3V4hiu2VW4", + "kzjHexDTTeVB" + ], + "title": "v0.48", + "notePosition": 420, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "template", + "value": "wyurrlcDl416", + "isInheritable": false, + "position": 60 + } + ], + "format": "markdown", + "dataFileName": "v0.48.md", + "attachments": [ + { + "attachmentId": "645H74UA4xwf", + "title": "note-map.png", + "role": "image", + "mime": "image/jpg", + "position": 10, + "dataFileName": "v0.48_note-map.png" + }, + { + "attachmentId": "c74WFpjTo0p4", + "title": "screenshot.png", + "role": "image", + "mime": "image/jpg", + "position": 10, + "dataFileName": "v0.48_screenshot.png" + }, + { + "attachmentId": "szlnTmTJL4HL", + "title": "split.png", + "role": "image", + "mime": "image/jpg", + "position": 10, + "dataFileName": "v0.48_split.png" + }, + { + "attachmentId": "VQxrtpQTYmI6", + "title": "bookmarks.png", + "role": "image", + "mime": "image/jpg", + "position": 10, + "dataFileName": "v0.48_bookmarks.png" + }, + { + "attachmentId": "ZRyEqxAv1MTd", + "title": "mermaid.png", + "role": "image", + "mime": "image/png", + "position": 10, + "dataFileName": "v0.48_mermaid.png" + } + ] + }, { "isClone": false, "noteId": "wyurrlcDl416", @@ -943,7 +1010,7 @@ "wyurrlcDl416" ], "title": "Release Template", - "notePosition": 420, + "notePosition": 430, "prefix": null, "isExpanded": false, "type": "text", diff --git a/docs/Release Notes/Release Notes/v0.48.md b/docs/Release Notes/Release Notes/v0.48.md new file mode 100644 index 000000000..f1b5e5c3b --- /dev/null +++ b/docs/Release Notes/Release Notes/v0.48.md @@ -0,0 +1,121 @@ +# v0.48 +0.48 is a big release and contains many changes, some of them breaking: + +## Major frontend redesign + + + +* right panel is no more, most of these widgets have been moved to the new ribbon-style widget under note title + * right panel is still possible to activate for scripts +* Trilium has a new icon (there might be further color changes) + +## Vertical split window + +
+ +## Link map re-implemented + +Now supports also hierarchical view of the notes: + +
+ +## Mermaid diagrams + +Thanks to [@abitofevrything](https://github.com/abitofevrything) for this contribution! + +
+ +## Basic bookmark support + +
+ +## Other changes + +* persistence/entity layer in backend was largely refactored - "repository" and unified with note cache which should bring performance improvements for many operations +* search and SQL query notes now don't create “saved” notes by default +* added underline heading style and make it a default +* updated CKEditor to 30.0.0 + +## Migration + +### Backup restore + +Trilium v0.48 is currently in beta and may contain serious bugs. + +Before migration to 0.48 Trilium will make automatically backup into `~/trilium-data/backup/backup-before-migration.db`. In case of problems you can restore this backup with this guide: [https://github.com/zadam/trilium/wiki/Backup#restoring-backup](https://github.com/zadam/trilium/wiki/Backup#restoring-backup) + +### Direct upgrade only from 0.47.X + +Direct upgrade to 0.48 is possible only from 0.47.X. If you want to upgrade from an older version, you need to upgrade to 0.47.X first and only then to 0.48. This is caused by extensive backend refactoring which broke older migration scripts. + +### All backend script notes should avoid being async + +Backend operations were in older versions used async/await because of the SQLite driver. But Trilium recently migrated to the synchronous (and much faster) `better-sqlite3`. As a consequence backend script notes which are wrapped in a transaction should to be converted to the sync variant. + +e.g. old script looked like this: + +``` +const todayDateStr = api.formatDateISO(new Date()); + +const todayNote = await api.runOnBackend(async todayDateStr => { + const dateNote = await api.getDayNote(todayDateStr); + + ({note: logNote} = await api.createNote(dateNote.noteId, 'log')); +}, [todayDateStr]); + +api.activateNote(todayNote.noteId); +``` + +all the `await` (and `async`) should disappear from the backend code, but should remain when calling backend from frontend (that's still async): + +``` +const todayDateStr = api.formatDateISO(new Date()); + +const todayNote = await api.runOnBackend(todayDateStr => { + const dateNote = api.getDayNote(todayDateStr); + + ({note: logNote} = api.createNote(dateNote.noteId, 'log')); +}, [todayDateStr]); + +api.activateNote(todayNote.noteId); +``` + +### Migrate custom themes + +With the redesign you might need to adjust your custom themes - check the modified list of available CSS variables in the [default theme](https://github.com/zadam/trilium/blob/master/src/public/stylesheets/theme-light.css). If your theme also uses CSS selectors then that will probably have to be rewritten as well. + +Themes are annotated with `#appTheme` label, previously this label could but did not have to contain value - with this release the value is required so define the label as e.g. `#appTheme=my-theme-name`. + +Additionally, CSS themes are now loaded differently than before - previously all themes were loaded at the startup and which one was active was decided by the active CSS class. Themes were then prefixed like this: + +``` +body.theme-steel-blue { + --main-font-family: 'Raleway' !important; + --main-font-size: normal; + + --tree-font-family: inherit; + --tree-font-size: normal; + ... +} + +body.theme-steel-blue .note-detail-editable-text, body.theme-steel-blue .note-detail-readonly-text { + font-size: 120%; +} +``` + +This prefixing is not needed anymore (and also doesn't work anymore). Remove the prefixes like this: + +``` +:root { + --main-font-family: 'Raleway'; + --main-font-size: normal; + + --tree-font-family: 'Raleway'; + --tree-font-size: normal; + ... +} + +body .note-detail-editable-text, body .note-detail-readonly-text { + font-size: 120%; +} +``` \ No newline at end of file diff --git a/docs/Release Notes/Release Notes/v0.48_bookmarks.png b/docs/Release Notes/Release Notes/v0.48_bookmarks.png new file mode 100644 index 0000000000000000000000000000000000000000..2d78ee1a137dd4a129cfd7ddcf363773109497e7 GIT binary patch literal 96427 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 b;_XmD?0;z`@juE~{-E3c2iJu8GV%Wbpe^Aa literal 0 HcmV?d00001 diff --git a/docs/Release Notes/Release Notes/v0.48_mermaid.png b/docs/Release Notes/Release Notes/v0.48_mermaid.png new file mode 100644 index 0000000000000000000000000000000000000000..1c48d2aa6eab377ba527c5f57f84d53dc7512d00 GIT binary patch literal 97465 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 literal 0 HcmV?d00001 diff --git a/docs/Release Notes/Release Notes/v0.48_note-map.png b/docs/Release Notes/Release Notes/v0.48_note-map.png new file mode 100644 index 0000000000000000000000000000000000000000..ee7ef932a94fbe15f5287d558adea10b6394d58a GIT binary patch literal 88468 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

Features, interaction and limitations

+ +

Features, interaction and limitations

    -
  • Searching by note title.
  • -
  • Automatic dark/light mode based on the user's browser settings.
  • -
  • Mobile-friendly layout, with sidebar.
  • -
  • Collapsible tree with the same note icons as the application.
  • -
  • Customizable logo.
  • -
  • Toggle button for dark/light mode, which also stores the user preferences.
  • -
  • Quick navigation buttons (previous and next note).
  • -
  • Displaying the date of the last update of the note.
  • +
  • Searching by note title.
  • +
  • Automatic dark/light mode based on the user's browser settings.
  • +
  • Mobile-friendly layout, with sidebar.
  • +
  • Collapsible tree with the same note icons as the application.
  • +
  • Customizable logo.
  • +
  • Toggle button for dark/light mode, which also stores the user preferences.
  • +
  • Quick navigation buttons (previous and next note).
  • +
  • Displaying the date of the last update of the note.

By note type

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Supported featuresLimitations
Text - -
    -
  • Table of contents.
  • -
  • Syntax highlight of code blocks, provided a language is selected (does - not work if “Auto-detected” is enabled).
  • -
  • Rendering for math equations.
  • -
  • Including notes (only if the included - notes are also shared).
  • -
-
-
    -
  • Inline Mermaid diagrams are not rendered.
  • -
-
Code - -
    -
  • Basic support (displaying the contents of the note in a monospace font).
  • -
-
-
    -
  • No syntax highlight.
  • -
-
Saved Search - Not supported. 
Relation Map - Not supported. 
Note Map - Not supported. 
Render Note - Not supported. 
Collections - -
    -
  • The child notes are displayed in a fixed format. 
  • -
-
-
    -
  • More advanced view types such as the calendar view are not supported.
  • -
-
Mermaid Diagrams - -
    -
  • The diagram is displayed as a vector image.
  • -
-
-
    -
  • No further interaction supported.
  • -
-
Canvas - -
    -
  • The diagram is displayed as a vector image.
  • -
-
-
    -
  • No further interaction supported.
  • -
-
Web View - Not supported. 
Mind Map - The diagram is displayed as a vector image. -
    -
  • No further interaction supported.
  • -
-
Geo Map - Not supported. 
File - Basic interaction (downloading the file). -
    -
  • No further interaction supported.
  • -
-
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 Supported featuresLimitations
Text + +
    +
  • Table of contents.
  • +
  • Syntax highlight of code blocks, provided a language is selected (does + not work if “Auto-detected” is enabled).
  • +
  • Rendering for math equations.
  • +
  • Including notes (only if the included + notes are also shared).
  • +
+
+
    +
  • Inline Mermaid diagrams are not rendered.
  • +
+
Code + +
    +
  • Basic support (displaying the contents of the note in a monospace font).
  • +
+
+
    +
  • No syntax highlight.
  • +
+
Saved Search + Not supported. 
Relation Map + Not supported. 
Note Map + Not supported. 
Render Note + Not supported. 
Collections + +
    +
  • The child notes are displayed in a fixed format. 
  • +
+
+
    +
  • More advanced view types such as the calendar view are not supported.
  • +
+
Mermaid Diagrams + +
    +
  • The diagram is displayed as a vector image.
  • +
+
+
    +
  • No further interaction supported.
  • +
+
Canvas + +
    +
  • The diagram is displayed as a vector image.
  • +
+
+
    +
  • No further interaction supported.
  • +
+
Web View + Not supported. 
Mind Map + The diagram is displayed as a vector image. +
    +
  • No further interaction supported.
  • +
+
Geo Map + Not supported. 
File + Basic interaction (downloading the file). +
    +
  • No further interaction supported.
  • +
+

While the sharing feature is powerful, it has some limitations:

    -
  • Code Notes: No syntax highlighting.
  • -
  • Static Note Tree +
  • Code Notes: No syntax highlighting.
  • +
  • Static Note Tree
  • -
  • Protected Notes: Cannot be shared.
  • -
  • Include Notes: Not supported.
  • +
  • Protected Notes: Cannot be shared.
  • +
  • Include Notes: Not supported.

Some of these limitations may be addressed in future updates.

Prerequisites

@@ -186,7 +181,7 @@ class="image"> is necessary because the notes will be hosted from the server.

Sharing a note

    -
  1. +
  2. Enable Sharing: To share a note, toggle the Shared switch within the note's interface. Once sharing is enabled, an URL will appear, which you can click to access the shared note.

    @@ -195,9 +190,11 @@ class="image"> alt="Share Note">

  3. -
  4. Access the Shared Note: The link provided will open the - note in your browser. If your server is not configured with a public IP, - the URL will refer to localhost (127.0.0.1).
  5. +
  6. +

    Access the Shared Note: The link provided will open the + note in your browser. If your server is not configured with a public IP, + the URL will refer to localhost (127.0.0.1).

    +

Sharing a note subtree

When you share a note, you actually share the entire subtree of notes @@ -212,11 +209,11 @@ class="image"> public.

Security considerations

    -
  • Shared notes are published on the open internet and can be accessed by +
  • Shared notes are published on the open internet and can be accessed by anyone with the URL unless the notes are password-protected.
  • -
  • The URL's randomness does not provide security, so it is crucial not to +
  • The URL's randomness does not provide security, so it is crucial not to share sensitive information through this feature.
  • -
  • Trilium takes precautions to protect your publicly shared instance from +
  • Trilium takes precautions to protect your publicly shared instance from leaking information for non-shared notes, including opening a separate read-only connection to the Database. Depending on your threat model, it might make more sense to use  @@ -233,13 +230,12 @@ class="image">

    The default design should be a good starting point, but you can customize it using your own CSS:

      -
    • Custom CSS: Link a CSS Custom CSS: Link a CSS Code note to the shared page by adding a ~shareCss relation to the note. If you want this style to apply to the entire subtree, make the label inheritable. You can hide the CSS code note from the tree navigation by adding the #shareHiddenFromTree label.
    • -
    • Omitting Default CSS: For extensive styling changes, +
    • Omitting Default CSS: For extensive styling changes, use the #shareOmitDefaultCss label to avoid conflicts with Trilium's default stylesheet.
    • @@ -257,22 +253,22 @@ class="image"> itself.

      The #shareHtmlLocation label accepts values in the format location:position:

        -
      • Locations: head, body, content +
      • Locations: head, body, content
      • -
      • Positions: start, end +
      • Positions: start, end

      For example:

        -
      • #shareHtmlLocation=head:start - Injects HTML at the beginning +
      • #shareHtmlLocation=head:start - Injects HTML at the beginning of the <head> section
      • -
      • #shareHtmlLocation=head:end - Injects HTML at the end of the <head> section +
      • #shareHtmlLocation=head:end - Injects HTML at the end of the <head> section (default)
      • -
      • #shareHtmlLocation=body:start - Injects HTML at the beginning +
      • #shareHtmlLocation=body:start - Injects HTML at the beginning of the <body> section
      • -
      • #shareHtmlLocation=content:start - Injects HTML at the beginning +
      • #shareHtmlLocation=content:start - Injects HTML at the beginning of the content area
      • -
      • #shareHtmlLocation=content:end - Injects HTML at the end of +
      • #shareHtmlLocation=content:end - Injects HTML at the end of the content area

      If no location is specified, the HTML will be injected at content:end by @@ -290,16 +286,16 @@ for (const attr of parentNote.attributes) { This will change the URL to http://domain.tld/share/highlighting.

      Important:

        -
      1. Ensure that aliases are unique.
      2. -
      3. Using slashes (/) within aliases to create subpaths is not +
      4. Ensure that aliases are unique.
      5. +
      6. Using slashes (/) within aliases to create subpaths is not supported.
      @@ -323,176 +319,165 @@ for (const attr of parentNote.attributes) { When viewed, the list of shared roots will be displayed at the bottom of the note.

      Attribute reference

      -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      AttributeDescription
      #shareHiddenFromTree - this note is hidden from left navigation tree, but still accessible with - its URL
      #shareExternalLink - note will act as a link to an external website in the share tree
      #shareAlias - define an alias using which the note will be available under https://your_trilium_host/share/[your_alias] -
      #shareOmitDefaultCss - default share page CSS will be omitted. Use when you make extensive styling - changes.
      #shareRoot - marks note which is served on /share root.
      #shareDescription - define text to be added to the HTML meta tag for description
      #shareRaw - Note will be served in its raw format, without HTML wrapper. See also  - Serving directly the content of a note for an alternative method - without setting an attribute.
      #shareDisallowRobotIndexing - -

      Indicates to web crawlers that the page should not be indexed of this - note by:

      -
        -
      • Setting the X-Robots-Tag: noindex HTTP header.
      • -
      • Setting the noindex, follow meta tag.
      • -
      -
      #shareCredentials - require credentials to access this shared note. Value is expected to be - in format username:password. Don't forget to make this inheritable - to apply to child-notes/images.
      #shareIndex - Note with this label will list all roots of shared notes.
      #shareHtmlLocation - defines where custom HTML injected via ~shareHtml relation - should be placed. Applied to the HTML snippet note itself. Format: location:position where - location is head, body, or content and - position is start or end. Defaults to content:end.
      -
      -

      Customizing logo

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      AttributeDescription
      #shareHiddenFromTree + this note is hidden from left navigation tree, but still accessible with + its URL
      #shareExternalLink + note will act as a link to an external website in the share tree
      #shareAlias + define an alias using which the note will be available under https://your_trilium_host/share/[your_alias] +
      #shareOmitDefaultCss + default share page CSS will be omitted. Use when you make extensive styling + changes.
      #shareRoot + marks note which is served on /share root.
      #shareDescription + define text to be added to the HTML meta tag for description
      #shareRaw + Note will be served in its raw format, without HTML wrapper. See also  + Serving directly the content of a note for an alternative method + without setting an attribute.
      #shareDisallowRobotIndexing + +

      Indicates to web crawlers that the page should not be indexed of this + note by:

      +
        +
      • Setting the X-Robots-Tag: noindex HTTP header.
      • +
      • Setting the noindex, follow meta tag.
      • +
      +
      #shareCredentials + require credentials to access this shared note. Value is expected to be + in format username:password. Don't forget to make this inheritable + to apply to child-notes/images.
      #shareIndex + Note with this label will list all roots of shared notes.
      #shareHtmlLocation + defines where custom HTML injected via ~shareHtml relation + should be placed. Applied to the HTML snippet note itself. Format: location:position where + location is head, body, or content and + position is start or end. Defaults to content:end.
      + +

      Customizing logo

      It's possible to adjust the logo which is displayed on the top-left of the left pane.

      -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      AttributeDescription
      ~shareLogo - Relation set to an image to use as logo. The image must be part of the - share tree (it can be hidden if needed).
      #shareLogoWidth - The width (in pixels, without unit) to set for the logo. Default is 53.
      #shareLogoHeight - The height (in pixels, without unit) to set for the logo. Default is 40.
      #shareRootLink - URL to navigate to when the logo is pressed.
      -
      -

      Customizing OpenGraph

      -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      AttributeDescription
      #shareOpenGraphColor - This adjusts the theme-color meta-property.
      #shareOpenGraphURL - This adjusts the og:url and twitter:url meta-properties.
      #shareOpenGraphDomain - Adjusts the twitter:domain meta-property.
      #shareOpenGraphImage -
      ~shareOpenGraphImage -
      Can be either a label, case in which the value is passed on as-is, or - it can be a relation to an image File. - This controls the og:image meta-property.
      -
      -

      Credits

      + + + + + + + + + + + + + + + + + + + + + + + + + +
      AttributeDescription
      ~shareLogo + Relation set to an image to use as logo. The image must be part of the + share tree (it can be hidden if needed).
      #shareLogoWidth + The width (in pixels, without unit) to set for the logo. Default is 53.
      #shareLogoHeight + The height (in pixels, without unit) to set for the logo. Default is 40.
      #shareRootLink + URL to navigate to when the logo is pressed.
      + +

      Customizing OpenGraph

      + + + + + + + + + + + + + + + + + + + + + + + + + +
      AttributeDescription
      #shareOpenGraphColor + This adjusts the theme-color meta-property.
      #shareOpenGraphURL + This adjusts the og:url and twitter:url meta-properties.
      #shareOpenGraphDomain + Adjusts the twitter:domain meta-property.
      #shareOpenGraphImage +
      ~shareOpenGraphImage +
      Can be either a label, case in which the value is passed on as-is, or + it can be a relation to an image File. + This controls the og:image meta-property.
      + +

      Credits

      Since v0.95.0, a new theme was introduced (and enabled by default) which greatly improves the visual aspect of the Share feature, as well as its functionality (such as mobile support, dark/light mode, collapsible tree, diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration.html index 220ae8b74..5f1bafa0c 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration.html @@ -6,18 +6,13 @@ reverse_proxy /share http://localhost:8080/share }

      This is for newer versions where the share functionality is isolated, - for older versions it's required to also include /assets. - [1] - + for older versions it's required to also include /assets.[1]

      -
        -
      1. ^ - +
          +
        1. +

          ^ +

          +

          https://github.com/orgs/TriliumNext/discussions/7341#discussioncomment-14679897 +

        \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Miscellaneous/Privacy Policy.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Miscellaneous/Privacy Policy.html new file mode 100644 index 000000000..d6d44c90e --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Miscellaneous/Privacy Policy.html @@ -0,0 +1,20 @@ +

        Trilium Notes

        +

        Trilium Notes does not collect/send any data from the user's installation, + i.e. no analytics, no telemetry etc. The data flows only between user controlled + / installed applications, without any intermediary.

        +

        Automatic network activity consists of:

        +
          +
        • Trilium periodically queries URL https://github.com/TriliumNext/Trilium/releases to + see if there's a new stable version released. (check only, there's no automatic + download and/or installation).
        • +
        • Trilium will download spelling dictionaries automatically as needed based + on language settings
        • +
        +

        Trilium Web Clipper

        +

        Trilium Web Clipper does not collect/send any data from the user's installation, + i.e. no analytics, no telemetry etc. The data flows only between user controlled + / installed applications, without any intermediary.

        +

        Trilium Sender for Android

        +

        Trilium Sender for Android does not collect/send any data from the user's + installation, i.e. no analytics, no telemetry etc. The data flows only + between user controlled / installed applications, without any intermediary.

        \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index b910b2b97..4060d7cbb 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -15021,6 +15021,68 @@ ] } ] + }, + { + "isClone": false, + "noteId": "Fm0j45KqyHpU", + "notePath": [ + "pOsGYCXsbNQG", + "Fm0j45KqyHpU" + ], + "title": "Miscellaneous", + "notePosition": 370, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "misc", + "isInheritable": false, + "position": 30 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-info-circle", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "Miscellaneous", + "children": [ + { + "isClone": false, + "noteId": "WFbFXrgnDyyU", + "notePath": [ + "pOsGYCXsbNQG", + "Fm0j45KqyHpU", + "WFbFXrgnDyyU" + ], + "title": "Privacy Policy", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "privacy-policy", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Privacy Policy.md", + "attachments": [] + } + ] } ] } diff --git a/docs/User Guide/User Guide/Miscellaneous/Privacy Policy.md b/docs/User Guide/User Guide/Miscellaneous/Privacy Policy.md new file mode 100644 index 000000000..fab3346c0 --- /dev/null +++ b/docs/User Guide/User Guide/Miscellaneous/Privacy Policy.md @@ -0,0 +1,17 @@ +# Privacy Policy +### Trilium Notes + +Trilium Notes does not collect/send any data from the user's installation, i.e. no analytics, no telemetry etc. The data flows only between user controlled / installed applications, without any intermediary. + +Automatic network activity consists of: + +* Trilium periodically queries URL [https://github.com/TriliumNext/Trilium/releases](https://github.com/TriliumNext/Trilium/releases) to see if there's a new stable version released. (check only, there's no automatic download and/or installation). +* Trilium will download spelling dictionaries automatically as needed based on language settings + +### Trilium Web Clipper + +Trilium Web Clipper does not collect/send any data from the user's installation, i.e. no analytics, no telemetry etc. The data flows only between user controlled / installed applications, without any intermediary. + +### Trilium Sender for Android + +Trilium Sender for Android does not collect/send any data from the user's installation, i.e. no analytics, no telemetry etc. The data flows only between user controlled / installed applications, without any intermediary. \ No newline at end of file From 66bb639a158afa95e39e2e4f68c3e7841568051d Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Thu, 30 Oct 2025 22:50:14 +0200 Subject: [PATCH 003/136] docs(user): port patterns of personal knowledge --- .../doc_notes/en/User Guide/!!!meta.json | 2 +- .../Patterns of personal knowl.png | Bin 0 -> 103916 bytes .../Patterns of personal knowledge.html | 303 ++++++++++++++++++ docs/User Guide/!!!meta.json | 99 ++++++ .../Patterns of personal knowl.png | Bin 0 -> 103916 bytes .../Patterns of personal knowledge.md | 157 +++++++++ 6 files changed, 560 insertions(+), 1 deletion(-) create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Miscellaneous/Patterns of personal knowl.png create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Miscellaneous/Patterns of personal knowledge.html create mode 100644 docs/User Guide/User Guide/Miscellaneous/Patterns of personal knowl.png create mode 100644 docs/User Guide/User Guide/Miscellaneous/Patterns of personal knowledge.md diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 5a007d630..a05c611e0 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/etapi/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Frontend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/classes/Frontend_Script_API.FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Backend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/etapi/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Frontend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/classes/Frontend_Script_API.FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Backend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Miscellaneous/Patterns of personal knowl.png b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Miscellaneous/Patterns of personal knowl.png new file mode 100644 index 0000000000000000000000000000000000000000..39788216a7b4a55aeeb5d168286a773961cd7cf1 GIT binary patch literal 103916 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

        j@SPHWlE^jRS(e2^mNX_4GuUYm;IXd?hn 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 v{*MQPf +

        This article is a description of the original author of Trilium (zadam) + in regards with his own knowledge base.

        + +

        This page contains description of some of the patterns I use to organize + information in my knowledge base. This is meant to give some inspiration + of how one might create and structure their knowledge base in general and + also specifically in Trilium Notes. It also gives some background and justification + for some of the design decisions.

        +

        Meta patterns

        +

        Just to be clear, meta patterns are "patterns of patterns", i.e. patterns + appearing in other patterns.

        +

        Hierarchical organization of information

        +

        Basic meta pattern is that I sort notes (units of information) into a + hierarchy - I have some "top level" notes which represent coarse grained + organization, these then split into sub-notes defining finer grained organization + and so on. I consider this hierarchical (tree) organization very efficient + for organization of large amounts of information. A lot of note taking + software (such as Evernote) are frustratingly limited in this regard which + limits scalability of the software to large amounts of notes.

        +

        Scalability

        +

        It's important to frame the following (meta) patterns with some idea of + how large amount of data are we talking about.

        +

        My rule of thumb for estimation of size of personal knowledge base is + that you can reasonably produce around 10 notes a day, which is 3650 in + a year. I plan to use my knowledge base long term (with or without Trilium + Notes), probably decades so you can easily get to number 100 000 or even + more. Right now, my personal knowledge base has around 10 000 notes.

        +

        100 000 is a number to which most note taking software doesn't scale well + (in both performance and UI). Yet I don't think it's really very much considering + a lifetime of knowledge.

        +

        Lazy hierarchy

        +

        My approach to creating the hierarchy is being lazy - I don't create the + structure first and then fill it with notes, instead I create single note + for some specific topic and start using this one note. Once the content + starts to grow, and I see how some parts could be split out, I move + them out into separate sub notes. As an example I have a book review for The Fellowship of the Ring:

        +
          +
        • Book reviews +
            +
          • The Fellowship of the Ring
          • +
          +
        • +
        +

        The note contains basic book info (author, publisher etc.), book highlights + with the comments and then overall review. Now it turns out there's far + too many book highlights and overall review is also rather long, so I want + to change the structure to the following:

        +
          +
        • Book reviews +
            +
          • The Fellowship of the Ring       (still contains basic info) +
              +
            • Highlights
            • +
            • Review
            • +
            +
          • +
          +
        • +
        +

        If I used standard text file stored in a filesystem I would soon run into + an annoying problem that in order to split out the Highlights and Review + into sub-notes I would also have to convert The Fellowship of the Ring from + text file into directory and split out all sections of the note into sub-notes. + Instead, Trilium treats all notes as equal - both leaf notes and inner + notes can have both text content which allows me to sub-structure only + content which needs it.

        +

        Sorting notes into multiple places in the hierarchy

        +

        While organizing the notes into the hierarchy, you very quickly run into + a dilemma - your note seem to belong to two places in the hierarchy equally. + As an example - you want to make a note about bash - + does it belong to "OS / Linux" or "Programming / Scripting languages"? + This is actually a false dichotomy forced down by the limits of the basic + tree hierarchy - the answer is of course it belongs to both. This + is the reason why Trilium doesn't use standard tree structure (which requires + every note to have exactly one parent), but an extension which allows every + note to have several parents, thus effectively allowing it to appear in + multiple places in the hierarchy. For lack of better term I call this "cloning". + The main problem with this term is that it suggests that each clone must + have an original, but here all clones are completely equal - effectively + there's no original.

        +

        In tech lingo, it might be better to describe it as a hard link with + an important difference that it is possible to hard link (clone) a directory + (inner note).

        +

        Protected notes

        +

        I have Trilium Notes opened non-stop. Sometimes I forget to lock my computer + when going to the bathroom. Sometimes I let a friend or family member to + use my computer for a minute without supervision. They might click on (running) + Trilium and inadvertently see a note I really don't want anybody to see + (personal diary, credentials). To cover this, Trilium has a concept of + "protected notes" + - protected note is encrypted and on top of that requires the user to enter + the password every 5 minutes which guarantees that such note can be in + a readable state only for small amount of time. Working with ordinary (not + protected) notes don't require password so you're not bothered by extra + security when it's not needed.

        +

        Archiving notes

        +

        Notes can lose relevancy with time - let's say I switch jobs - all the + notes specific to the former employer immediately lose most of its import. + This doesn't mean I want to delete these notes though - typically I just + want them to somehow deprioritize - in Trilium I would do that by assigning + an inherited + label archived to the company root note. The main effect + of this label is that all the notes from this sub-tree are filtered out + from search results (fast search via note autocomplete is my main navigation approach). + Apart from this, I also typically move such outdated notes to some less + prominent place in the hierarchy.

        +

        I use archivation also for notes which are not very relevant from their + creation - an example might be automatically imported reddit comments.

        +

        Sometimes there's no clear category split between relevant and + non-relevant notes, in that case I just create "OLD" note with archived label + and move all irrelevant notes there. So my credentials note might look + something like this:

        +
          +
        • Credentials +
            +
          • Personal +
              +
            • OLD       (contains a bunch of notes with credentials for services I don't use anymore) +
            • +
            • Gmail
            • +
            • Github
            • +
            • ...
            • +
            +
          • +
          +
        • +
        +

        Patterns

        +

        Day note

        +

        Every day has its note which contains or references everything related + to the given day. Structure looks like this:

        +
          +
        • 2018 +
            +
          • 11 - November +
              +
            • 26 - Monday
            • +
            • 27 - Tuesday +
                +
              • subnote 1
              • +
              +
            • +
            +
          • +
          +
        • +
        +

        Day note serves as a workspace and note inbox at the same time - it's + the default location to create a note when I don't have time to think about + proper placement. At the end of the day I typically review my day note + and clone the notes into suitable locations in the hierarchy.

        +

        Trilium has this pattern partly built-in - Trilium understands and can + create this Year / Month / Day structure semi-automatically (on API call). + There's also global keyboard shortcut CTRL-ALT-P which will + create new note in the day note.

        +

        What notes do I keep under this day note?

        +
          +
        • TODO list for given day (this can be automated - see Task Manager)
        • +
        • Personal diary
        • +
        • clones of + notes I created during this day (which kind of represents what I've been + working on).
        • +
        • I often clone notes (or sub-trees) of e.g. projects I'm working on at + given day so they are at hand
        • +
        • I have some scripts which + allow me to track certain daily metrics (like weight). These are saved + into one daily "data note" (actually JSON code note). +
            +
          • I have other scripts which then help me to visualize these data (see a  + Weight Tracker example)
          • +
          • I have a script which automatically imports all my comments from reddit + into the day note. +
              +
            • People are sometimes wondering why. The answer is that I usually put some + effort and thought into a comment and that's why I feel it's worth preserving, + especially if it can be done automatically.
            • +
            +
          • +
          +
        • +
        +

        For most notes, this day note placement is secondary and their + primary location is somewhere else (e.g. for a book review I've been working + on it's Book / Reviews, not the day note). So for this pattern + to work, ability to clone notes + into multiple places is pretty fundamental.

        +

        Projects

        +

        Project is pretty self-explanatory, for me specifically it also + means being long term (years) - an example of a project might be Trilium + Notes or university studies. Given their longevity, projects can be large + and deep, but their structure is very domain specific, and I don't see + any common patterns. What's pretty clear is they are often widely interconnected + with other parts of the knowledge base - e.g. university credentials are + cloned from "Credentials / University" top level notes and Trilium related + blog posts are in "Blog / [Name of the blog] / Trilium".

        +

        Epics are the same thing as projects, but differ in scope - they + are typically several months long and as such are usually placed into a + year note (e.g. 2018 / Epics). Epics are often of work nature (also + cloned into work note) and personal (e.g. currently I have large epic for + moving to a different city).

        +

        I don't have a term for short term projects (typically several days long), + but continuing the scrum analogy I might call them story. These + are often placed directly into day notes and manually moved from one day + to another (or place into a month note, e.g. 2018 / 11 - November).

        +

        Credentials

        +

        I keep all my credentials in the knowledge base, they are sorted into + categories - work related, project related, personal per country etc. These + notes are of course protected and + are often cloned into other places (e.g. project credentials are cloned + into the project itself). This is a pretty important advantage compared + to traditional tools like KeePass - all the relevant information is centralized + into one place without compromising security.

        +

        People profiles

        +

        This might seem creepy to some, but I keep a profile on most people. It + contains pretty standard things like date of birth, contacts, address, + but also current and previous employments, their hobbies and worldviews + and sometimes even important (IM/mail/meatspace) conversations. Just about + everything I find notable. It helps to refresh some basic info before meeting + people, especially if you haven't been in touch in a while. It gets pretty + awkward to ask for the tenth time where do they work for example, because + you keep forgetting it.

        +

        Naturally I have a lot of (extended) family members, friends, acquaintances + etc. so I need some way to sort them. My main method is to sort them by + social circle (work, high school, sports club etc.), sometimes also by + their town of residence. Family circle is still too large so the + further organization is by clan (as in "Smiths"). Some people are + members of several such circles, so they are just cloned into multiple + places.

        +

        For family specifically it's pretty useful to create relation map to + visualize relationships:

        +
        + +
        +

        [missing note] +

        +

        Books

        +

        Of course, I keep standard "To read" list. I also keep a record on the + books I've read - typically one book has one subtree where the root has + some basic info like author, page count, publication date, date started, + date finished (in the form of Promoted Attributes). + I also write a (private) review and keep list of highlights from Kindle, + optionally with some commentary, these are usually stored in sub notes + (unless they are pretty short).

        +

        To keep the list of books manageable, I sort them per year (of reading + them), this also gives me some basic overview of "reading performance" + for given year. I plan to create a script which + would show some timeline chart visualizing book attributes dateStarted - dateFinished to + have nicer view of my reading sprints and trends.

        +

        Some specific authors also have their own note which contains cloned book + reviews, links to interviews and other related resources.

        +

        I have similar system for movies and TV shows, but not as sophisticated.

        +

        Personal diary

        +

        This is a place to reflect on events, experiences, new findings etc. This + can help you get deeper understanding of your inner self, clarify your + thinking and make better decisions as a result.

        +

        I sort personal diary notes directly under day note (explained + above), but it can be cloned also to e.g. "trip note" (if the diary note + is about given trip) or to person's profile (if the person plays a role + in the diary note). All my diary notes are protected since + they are usually pretty sensitive.

        +

        Documents

        +

        I keep all my personal documents (ID, passport, education certificates + ...) scanned in the knowledge base. They are synchronized across + every PC which provides decent backup and makes them available everywhere.

        +

        Advantage compared to e.g. keeping them in Dropbox or Google Drive is + that they are not stored on some 3rd party server and they can be encrypted + (protected).

        +

        Inventory

        +

        Inventory contains documents and other relevant importation for my important + belongings - e.g. for car you can keep the registration card, maintenance + record, related costs etc. I also keep inventory for some items personally + important to me - mainly computers, phones, cameras and similar electronics. + This can be practical at times but also provides sentimental value.

        +

        Topic knowledge base

        +

        This where I store hard "knowledge" - summarized topics and findings from + different domains. Topics can range from traditional sciences - physics, + history, economy to philosophy, mental models, apps (notes about specific + apps I use) etc. Of course this is very subjective - given what I do, my + Physics sub-tree is pretty sparse compared to my Programming subtree.

        +

        Work knowledge base

        +

        I usually keep top level note for the company I currently work at (past + jobs are moved elsewhere). I track basic organization of the company (divisions, + business units), who is who (relation maps) + are again useful for visualization), projects I work at etc.

        +

        There's a number of credentials to various company services I need to + use. Companies usually have a bunch of complex processes and tools. I record + meeting minutes, link to the company wiki (which is usually difficult to + find relevant info). In general there's a lot of company specific information + I need to know or need have them at hand in a nice structure I can understand. + Often it's just copy pasting and reshuffling of existing information into + something more understandable for me.

        +

        From my experience, keeping this makes me more productive and even more + importantly dramatically reduces frustration and stress.

        +

        Conclusion

        +

        I could probably go on with more patterns (e.g. study notes, travelling), + but I think you get the idea. Whatever is important in your life, it probably + makes sense to document and track it.

        \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index 4060d7cbb..6f8eef5fc 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -15081,6 +15081,105 @@ "format": "markdown", "dataFileName": "Privacy Policy.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "NcsmUYZRWEW4", + "notePath": [ + "pOsGYCXsbNQG", + "Fm0j45KqyHpU", + "NcsmUYZRWEW4" + ], + "title": "Patterns of personal knowledge", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "xYjQUYhpbUEW", + "isInheritable": false, + "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "IakOLONlIfGI", + "isInheritable": false, + "position": 40 + }, + { + "type": "relation", + "name": "internalLink", + "value": "CdNpE2pqjmI6", + "isInheritable": false, + "position": 50 + }, + { + "type": "relation", + "name": "internalLink", + "value": "6f9hih2hXXZk", + "isInheritable": false, + "position": 60 + }, + { + "type": "relation", + "name": "internalLink", + "value": "R7abl2fc6Mxi", + "isInheritable": false, + "position": 70 + }, + { + "type": "relation", + "name": "internalLink", + "value": "bwg0e8ewQMak", + "isInheritable": false, + "position": 80 + }, + { + "type": "relation", + "name": "internalLink", + "value": "iRwzGnHPzonm", + "isInheritable": false, + "position": 90 + }, + { + "type": "relation", + "name": "internalLink", + "value": "OFXdgB2nNk1F", + "isInheritable": false, + "position": 100 + }, + { + "type": "relation", + "name": "internalLink", + "value": "cbkrhQjrkKrh", + "isInheritable": false, + "position": 110 + }, + { + "type": "label", + "name": "shareAlias", + "value": "patterns-of-personal-knowledge", + "isInheritable": false, + "position": 120 + } + ], + "format": "markdown", + "dataFileName": "Patterns of personal knowledge.md", + "attachments": [ + { + "attachmentId": "amErpd38VEdQ", + "title": "relation-map-family.png", + "role": "image", + "mime": "image/png", + "position": 10, + "dataFileName": "Patterns of personal knowl.png" + } + ] } ] } diff --git a/docs/User Guide/User Guide/Miscellaneous/Patterns of personal knowl.png b/docs/User Guide/User Guide/Miscellaneous/Patterns of personal knowl.png new file mode 100644 index 0000000000000000000000000000000000000000..39788216a7b4a55aeeb5d168286a773961cd7cf1 GIT binary patch literal 103916 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

        j@SPHWlE^jRS(e2^mNX_4GuUYm;IXd?hn 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 v{*MQPf [!NOTE] +> This article is a description of the original author of Trilium (zadam) in regards with his own knowledge base. + +This page contains description of some of the patterns I use to organize information in my knowledge base. This is meant to give some inspiration of how one might create and structure their knowledge base in general and also specifically in Trilium Notes. It also gives some background and justification for some of the design decisions. + +## Meta patterns + +Just to be clear, meta patterns are "patterns of patterns", i.e. patterns appearing in other patterns. + +### Hierarchical organization of information + +Basic meta pattern is that I sort notes (units of information) into a hierarchy - I have some "top level" notes which represent coarse grained organization, these then split into sub-notes defining finer grained organization and so on. I consider this hierarchical (tree) organization very efficient for organization of large amounts of information. A lot of note taking software (such as Evernote) are frustratingly limited in this regard which limits scalability of the software to large amounts of notes. + +#### Scalability + +It's important to frame the following (meta) patterns with some idea of how large amount of data are we talking about. + +My rule of thumb for estimation of size of personal knowledge base is that you can reasonably produce around 10 notes a day, which is 3650 in a year. I plan to use my knowledge base long term (with or without Trilium Notes), probably decades so you can easily get to number 100 000 or even more. Right now, my personal knowledge base has around 10 000 notes. + +100 000 is a number to which most note taking software doesn't scale well (in both performance and UI). Yet I don't think it's really very much considering a lifetime of knowledge. + +#### Lazy hierarchy + +My approach to creating the hierarchy is being lazy - I don't create the structure first and then fill it with notes, instead I create single note for some specific topic and start using this one note. Once the content starts to grow, and I see how _some_ parts could be split out, I move them out into separate sub notes. As an example I have a book review for _The Fellowship of the Ring_: + +* Book reviews + * The Fellowship of the Ring + +The note contains basic book info (author, publisher etc.), book highlights with the comments and then overall review. Now it turns out there's far too many book highlights and overall review is also rather long, so I want to change the structure to the following: + +* Book reviews + * The Fellowship of the Ring       _(still contains basic info)_ + * Highlights + * Review + +If I used standard text file stored in a filesystem I would soon run into an annoying problem that in order to split out the Highlights and Review into sub-notes I would also have to convert _The Fellowship of the Ring_ from text file into directory and split out all sections of the note into sub-notes. Instead, Trilium treats all notes as equal - both leaf notes and inner notes can have both text content which allows me to sub-structure only content which needs it. + +### Sorting notes into multiple places in the hierarchy + +While organizing the notes into the hierarchy, you very quickly run into a dilemma - your note seem to belong to two places in the hierarchy equally. As an example - you want to make a note about [bash](https://en.wikipedia.org/wiki/Bash_\(Unix_shell\)) - does it belong to "OS / Linux" or "Programming / Scripting languages"? This is actually a false dichotomy forced down by the limits of the basic tree hierarchy - the answer is _of course it belongs to both_. This is the reason why Trilium doesn't use standard tree structure (which requires every note to have exactly one parent), but an extension which allows every note to have several parents, thus effectively allowing it to appear in multiple places in the hierarchy. For lack of better term I call this "cloning". The main problem with this term is that it suggests that each clone must have an original, but here all clones are completely equal - effectively there's no original. + +In tech lingo, it might be better to describe it as a [hard link](https://en.wikipedia.org/wiki/Hard_link) with an important difference that it is possible to hard link (clone) a directory (inner note). + +### Protected notes + +I have Trilium Notes opened non-stop. Sometimes I forget to lock my computer when going to the bathroom. Sometimes I let a friend or family member to use my computer for a minute without supervision. They might click on (running) Trilium and inadvertently see a note I really don't want anybody to see (personal diary, credentials). To cover this, Trilium has a concept of "[protected notes](https://github.com/zadam/trilium/wiki/Protected-notes)" - protected note is encrypted and on top of that requires the user to enter the password every 5 minutes which guarantees that such note can be in a readable state only for small amount of time. Working with ordinary (not protected) notes don't require password so you're not bothered by extra security when it's not needed. + +### Archiving notes + +Notes can lose relevancy with time - let's say I switch jobs - all the notes specific to the former employer immediately lose most of its import. This doesn't mean I want to delete these notes though - typically I just want them to somehow deprioritize - in Trilium I would do that by assigning an [inherited](https://github.com/zadam/trilium/wiki/Attribute-inheritance) [label](https://github.com/zadam/trilium/wiki/Attributes) `archived` to the company root note. The main effect of this label is that all the notes from this sub-tree are filtered out from search results (fast search via note autocomplete is my main [navigation approach](https://github.com/zadam/trilium/wiki/Note-navigation)). Apart from this, I also typically move such outdated notes to some less prominent place in the hierarchy. + +I use archivation also for notes which are not very relevant from their creation - an example might be automatically imported reddit comments. + +Sometimes there's no clear _category_ split between relevant and non-relevant notes, in that case I just create "_OLD_" note with `archived` label and move all irrelevant notes there. So my credentials note might look something like this: + +* Credentials + * Personal + * OLD       _(contains a bunch of notes with credentials for services I don't use anymore)_ + * Gmail + * Github + * ... + +## Patterns + +### Day note + +Every day has its note which contains or references everything related to the given day. Structure looks like this: + +* 2018 + * 11 - November + * 26 - Monday + * 27 - Tuesday + * subnote 1 + +Day note serves as a workspace and note inbox at the same time - it's the default location to create a note when I don't have time to think about proper placement. At the end of the day I typically review my day note and clone the notes into suitable locations in the hierarchy. + +Trilium has this pattern partly built-in - Trilium understands and can create this Year / Month / Day structure semi-automatically (on API call). There's also global keyboard shortcut `CTRL-ALT-P` which will create new note in the day note. + +What notes do I keep under this day note? + +* TODO list for given day (this can be automated - see Task Manager) +* Personal diary +* [clones](../Basic%20Concepts%20and%20Features/Notes/Cloning%20Notes.md) of notes I created during this day (which kind of represents what I've been working on). +* I often clone notes (or sub-trees) of e.g. projects I'm working on at given day so they are at hand +* I have some [scripts](../Scripting.md) which allow me to track certain daily metrics (like weight). These are saved into one daily "data note" (actually JSON [code note](../Note%20Types/Code.md)). + * I have other scripts which then help me to visualize these data (see a Weight Tracker example) + * I have a script which automatically imports all my comments from reddit into the day note. + * People are sometimes wondering why. The answer is that I usually put some effort and thought into a comment and that's why I feel it's worth preserving, especially if it can be done automatically. + +For most notes, this day note placement is _secondary_ and their primary location is somewhere else (e.g. for a book review I've been working on it's _Book / Reviews_, not the day note). So for this pattern to work, ability to [clone](../Basic%20Concepts%20and%20Features/Notes/Cloning%20Notes.md) notes into multiple places is pretty fundamental. + +### Projects + +_Project_ is pretty self-explanatory, for me specifically it also means being long term (years) - an example of a project might be Trilium Notes or university studies. Given their longevity, projects can be large and deep, but their structure is very domain specific, and I don't see any common patterns. What's pretty clear is they are often widely interconnected with other parts of the knowledge base - e.g. university credentials are cloned from "Credentials / University" top level notes and Trilium related blog posts are in "Blog / \[Name of the blog\] / Trilium". + +_Epics_ are the same thing as projects, but differ in scope - they are typically several months long and as such are usually placed into a year note (e.g. _2018 / Epics_). Epics are often of work nature (also cloned into work note) and personal (e.g. currently I have large epic for moving to a different city). + +I don't have a term for short term projects (typically several days long), but continuing the scrum analogy I might call them _story_. These are often placed directly into day notes and manually moved from one day to another (or place into a month note, e.g. _2018 / 11 - November_). + +### Credentials + +I keep all my credentials in the knowledge base, they are sorted into categories - work related, project related, personal per country etc. These notes are of course [protected](../Basic%20Concepts%20and%20Features/Notes/Protected%20Notes.md) and are often cloned into other places (e.g. project credentials are cloned into the project itself). This is a pretty important advantage compared to traditional tools like KeePass - all the relevant information is centralized into one place without compromising security. + +### People profiles + +This might seem creepy to some, but I keep a profile on most people. It contains pretty standard things like date of birth, contacts, address, but also current and previous employments, their hobbies and worldviews and sometimes even important (IM/mail/meatspace) conversations. Just about everything I find notable. It helps to refresh some basic info before meeting people, especially if you haven't been in touch in a while. It gets pretty awkward to ask for the tenth time where do they work for example, because you keep forgetting it. + +Naturally I have a lot of (extended) family members, friends, acquaintances etc. so I need some way to sort them. My main method is to sort them by social circle (work, high school, sports club etc.), sometimes also by their town of residence. Family _circle_ is still too large so the further organization is by _clan_ (as in "Smiths"). Some people are members of several such circles, so they are just cloned into multiple places. + +For family specifically it's pretty useful to create [relation map](../Note%20Types/Relation%20Map.md) to visualize relationships: + +

        + +[missing note] + +### Books + +Of course, I keep standard "To read" list. I also keep a record on the books I've read - typically one book has one subtree where the root has some basic info like author, page count, publication date, date started, date finished (in the form of Promoted Attributes). I also write a (private) review and keep list of highlights from Kindle, optionally with some commentary, these are usually stored in sub notes (unless they are pretty short). + +To keep the list of books manageable, I sort them per year (of reading them), this also gives me some basic overview of "reading performance" for given year. I plan to create a [script](../Scripting.md) which would show some timeline chart visualizing book attributes `dateStarted` - `dateFinished` to have nicer view of my reading sprints and trends. + +Some specific authors also have their own note which contains cloned book reviews, links to interviews and other related resources. + +I have similar system for movies and TV shows, but not as sophisticated. + +### Personal diary + +This is a place to reflect on events, experiences, new findings etc. This can help you get deeper understanding of your inner self, clarify your thinking and make better decisions as a result. + +I sort personal diary notes directly under _day note_ (explained above), but it can be cloned also to e.g. "trip note" (if the diary note is about given trip) or to person's profile (if the person plays a role in the diary note). All my diary notes are [protected](../Basic%20Concepts%20and%20Features/Notes/Protected%20Notes.md) since they are usually pretty sensitive. + +### Documents + +I keep all my personal documents (ID, passport, education certificates ...) scanned in the knowledge base. They are [synchronized](../Installation%20%26%20Setup/Synchronization.md) across every PC which provides decent backup and makes them available everywhere. + +Advantage compared to e.g. keeping them in Dropbox or Google Drive is that they are not stored on some 3rd party server and they can be encrypted ([protected](../Basic%20Concepts%20and%20Features/Notes/Protected%20Notes.md)). + +### Inventory + +Inventory contains documents and other relevant importation for my important belongings - e.g. for car you can keep the registration card, maintenance record, related costs etc. I also keep inventory for some items personally important to me - mainly computers, phones, cameras and similar electronics. This can be practical at times but also provides sentimental value. + +### Topic knowledge base + +This where I store hard "knowledge" - summarized topics and findings from different domains. Topics can range from traditional sciences - physics, history, economy to philosophy, mental models, apps (notes about specific apps I use) etc. Of course this is very subjective - given what I do, my Physics sub-tree is pretty sparse compared to my Programming subtree. + +### Work knowledge base + +I usually keep top level note for the company I currently work at (past jobs are moved elsewhere). I track basic organization of the company (divisions, business units), who is who ([relation maps](../Note%20Types/Relation%20Map.md)) are again useful for visualization), projects I work at etc. + +There's a number of credentials to various company services I need to use. Companies usually have a bunch of complex processes and tools. I record meeting minutes, link to the company wiki (which is usually difficult to find relevant info). In general there's a lot of company specific information I need to know or need have them at hand in a nice structure I can understand. Often it's just copy pasting and reshuffling of existing information into something more understandable for me. + +From my experience, keeping this makes me more productive and even more importantly dramatically reduces frustration and stress. + +## Conclusion + +I could probably go on with more patterns (e.g. study notes, travelling), but I think you get the idea. Whatever is important in your life, it probably makes sense to document and track it. \ No newline at end of file From 3f99c8b337de72d4af461ffe97d9d19c612c3f19 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 20:03:53 +0200 Subject: [PATCH 004/136] feat(build-docs): copy swagger UI --- apps/build-docs/package.json | 16 ++++++++++++++++ apps/build-docs/src/context.ts | 3 +++ apps/build-docs/src/main.ts | 9 +++++++++ apps/build-docs/src/swagger.ts | 10 ++++++++++ pnpm-lock.yaml | 17 +++++++++++++++++ 5 files changed, 55 insertions(+) create mode 100644 apps/build-docs/package.json create mode 100644 apps/build-docs/src/context.ts create mode 100644 apps/build-docs/src/main.ts create mode 100644 apps/build-docs/src/swagger.ts diff --git a/apps/build-docs/package.json b/apps/build-docs/package.json new file mode 100644 index 000000000..34390becb --- /dev/null +++ b/apps/build-docs/package.json @@ -0,0 +1,16 @@ +{ + "name": "build-docs", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "packageManager": "pnpm@10.19.0", + "devDependencies": { + "swagger-ui-dist": "5.30.1" + } +} diff --git a/apps/build-docs/src/context.ts b/apps/build-docs/src/context.ts new file mode 100644 index 000000000..07612ee74 --- /dev/null +++ b/apps/build-docs/src/context.ts @@ -0,0 +1,3 @@ +export default interface BuildContext { + baseDir: string; +} diff --git a/apps/build-docs/src/main.ts b/apps/build-docs/src/main.ts new file mode 100644 index 000000000..be936037f --- /dev/null +++ b/apps/build-docs/src/main.ts @@ -0,0 +1,9 @@ +import { join } from "path"; +import BuildContext from "./context"; +import buildSwagger from "./swagger"; + +const context: BuildContext = { + baseDir: join(__dirname, "../../../site") +}; + +buildSwagger(context); diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts new file mode 100644 index 000000000..6b22611a9 --- /dev/null +++ b/apps/build-docs/src/swagger.ts @@ -0,0 +1,10 @@ +import { getAbsoluteFSPath } from "swagger-ui-dist"; +import BuildContext from "./context"; +import { cpSync, mkdirSync } from "fs"; +import { join } from "path"; + +export default function buildSwagger({ baseDir }: BuildContext) { + const absolutePath = getAbsoluteFSPath(); + const targetDir = join(baseDir, "api"); + cpSync(absolutePath, targetDir, { recursive: true }); +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..9b99c0532 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -125,6 +125,12 @@ importers: specifier: 3.2.4 version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + apps/build-docs: + devDependencies: + swagger-ui-dist: + specifier: 5.30.1 + version: 5.30.1 + apps/client: dependencies: '@eslint/js': @@ -13028,6 +13034,9 @@ packages: swagger-ui-dist@5.21.0: resolution: {integrity: sha512-E0K3AB6HvQd8yQNSMR7eE5bk+323AUxjtCz/4ZNKiahOlPhPJxqn3UPIGs00cyY/dhrTDJ61L7C/a8u6zhGrZg==} + swagger-ui-dist@5.30.1: + resolution: {integrity: sha512-4mNAUM31sr52K3JcK9qiGbfsFKNh/dm3PkEe+F9FAM31YY/NoRYUgsR/L6d7LLFn6PgZXtBG2ygp8+7UnpUIPg==} + swagger-ui-express@5.0.1: resolution: {integrity: sha512-SrNU3RiBGTLLmFU8GIJdOdanJTl4TOmT27tt3bWWHppqYmAZ6IDuEuBvMU6nZq0zLEe6b/1rACXCgLZqO6ZfrA==} engines: {node: '>= v0.10.32'} @@ -15047,6 +15056,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15108,6 +15119,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -29528,6 +29541,10 @@ snapshots: dependencies: '@scarf/scarf': 1.4.0 + swagger-ui-dist@5.30.1: + dependencies: + '@scarf/scarf': 1.4.0 + swagger-ui-express@5.0.1(express@5.1.0): dependencies: express: 5.1.0 From 3524c34ff91eda53dc045f40ec536befebc0944b Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 20:15:38 +0200 Subject: [PATCH 005/136] feat(build-docs): switch to redocly --- apps/build-docs/package.json | 4 +- apps/build-docs/src/swagger.ts | 8 +- pnpm-lock.yaml | 1300 ++++++++++++++++++++++++++------ 3 files changed, 1088 insertions(+), 224 deletions(-) diff --git a/apps/build-docs/package.json b/apps/build-docs/package.json index 34390becb..b30328f3b 100644 --- a/apps/build-docs/package.json +++ b/apps/build-docs/package.json @@ -11,6 +11,8 @@ "license": "ISC", "packageManager": "pnpm@10.19.0", "devDependencies": { - "swagger-ui-dist": "5.30.1" + "@redocly/cli": "2.10.0", + "react": "19.2.0", + "react-dom": "19.2.0" } } diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts index 6b22611a9..751163d15 100644 --- a/apps/build-docs/src/swagger.ts +++ b/apps/build-docs/src/swagger.ts @@ -1,10 +1,10 @@ -import { getAbsoluteFSPath } from "swagger-ui-dist"; import BuildContext from "./context"; -import { cpSync, mkdirSync } from "fs"; import { join } from "path"; +import { execSync } from "child_process"; export default function buildSwagger({ baseDir }: BuildContext) { - const absolutePath = getAbsoluteFSPath(); const targetDir = join(baseDir, "api"); - cpSync(absolutePath, targetDir, { recursive: true }); + const specPath = join(__dirname, "../../server/src/assets/api-openapi.yaml"); + + execSync(`pnpm redocly build-docs ${specPath} -o ${targetDir}/internal-api.html`, { stdio: "inherit" }); } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9b99c0532..2c4b878d3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -127,9 +127,15 @@ importers: apps/build-docs: devDependencies: - swagger-ui-dist: - specifier: 5.30.1 - version: 5.30.1 + '@redocly/cli': + specifier: 2.10.0 + version: 2.10.0(@opentelemetry/api@1.9.0)(ajv@8.17.1)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5) + react: + specifier: 19.2.0 + version: 19.2.0 + react-dom: + specifier: 19.2.0 + version: 19.2.0(react@19.2.0) apps/client: dependencies: @@ -138,7 +144,7 @@ importers: version: 9.38.0 '@excalidraw/excalidraw': specifier: 0.18.0 - version: 0.18.0(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) + version: 0.18.0(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) '@fullcalendar/core': specifier: 6.1.19 version: 6.1.19 @@ -267,7 +273,7 @@ importers: version: 10.27.2 react-i18next: specifier: 16.2.1 - version: 16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3) + version: 16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3) reveal.js: specifier: 5.2.1 version: 5.2.1 @@ -803,7 +809,7 @@ importers: version: 6.6.3(preact@10.27.2) react-i18next: specifier: 16.2.1 - version: 16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3) + version: 16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3) devDependencies: '@preact/preset-vite': specifier: 2.10.2 @@ -2304,6 +2310,15 @@ packages: '@emnapi/wasi-threads@1.1.0': resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + '@emotion/is-prop-valid@1.2.2': + resolution: {integrity: sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==} + + '@emotion/memoize@0.8.1': + resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==} + + '@emotion/unitless@0.8.1': + resolution: {integrity: sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==} + '@epic-web/invariant@1.0.0': resolution: {integrity: sha512-lrTPqgvfFQtR/eY/qkIzp98OGdNJu0m5ji3q/nJI8v3SXkRKEnWiOxMmbvcSoAIzv/cGiuvRy57k4suKQSAdwA==} @@ -2699,6 +2714,13 @@ packages: '@exercism/highlightjs-gdscript@0.0.1': resolution: {integrity: sha512-LiCFDhXCr3iIEGESHEsSCpCI7qNa2suHcrBWeOYSEtEwCXc+IQpEh5i4K8qPcOMJB9ckVOgLgbSNML8TyvPCVg==} + '@exodus/schemasafe@1.3.0': + resolution: {integrity: sha512-5Aap/GaRupgNx/feGBwLLTVv8OQFfv3pq2lPRzPg9R+IOBnDgghTGW7l7EuVXOvg5cc/xSAlRW8rBrjIC3Nvqw==} + + '@faker-js/faker@7.6.0': + resolution: {integrity: sha512-XK6BTq1NDMo9Xqw/YkYyGjSsg44fbNwYRx7QK2CuoQgyy+f1rrTDHoExVM5PsyXCtfl2vs2vVJ0MN0yN6LppRw==} + engines: {node: '>=14.0.0', npm: '>=6.0.0'} + '@fast-csv/parse@5.0.5': resolution: {integrity: sha512-M0IbaXZDbxfOnpVE5Kps/a6FGlILLhtLsvWd9qNH3d2TxNnpbNkFf3KD26OmJX6MHq7PdQAl5htStDwnuwHx6w==} @@ -2961,6 +2983,10 @@ packages: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} + '@humanwhocodes/momoa@2.0.4': + resolution: {integrity: sha512-RE815I4arJFtt+FVeU1Tgp9/Xvecacji8w/V6XtXsWWH/wz/eNkNbhb+ny/+PlVZjV0rxQpRSQKNKE3lcktHEA==} + engines: {node: '>=10.10.0'} + '@humanwhocodes/retry@0.4.3': resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} engines: {node: '>=18.18'} @@ -3496,6 +3522,78 @@ packages: '@open-draft/until@2.1.0': resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==} + '@opentelemetry/api-logs@0.202.0': + resolution: {integrity: sha512-fTBjMqKCfotFWfLzaKyhjLvyEyq5vDKTTFfBmx21btv3gvy8Lq6N5Dh2OzqeuN4DjtpSvNT1uNVfg08eD2Rfxw==} + engines: {node: '>=8.0.0'} + + '@opentelemetry/api@1.9.0': + resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} + engines: {node: '>=8.0.0'} + + '@opentelemetry/context-async-hooks@2.0.1': + resolution: {integrity: sha512-XuY23lSI3d4PEqKA+7SLtAgwqIfc6E/E9eAQWLN1vlpC53ybO3o6jW4BsXo1xvz9lYyyWItfQDDLzezER01mCw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + + '@opentelemetry/core@2.0.1': + resolution: {integrity: sha512-MaZk9SJIDgo1peKevlbhP6+IwIiNPNmswNL4AF0WaQJLbHXjr9SrZMgS12+iqr9ToV4ZVosCcc0f8Rg67LXjxw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + + '@opentelemetry/exporter-trace-otlp-http@0.202.0': + resolution: {integrity: sha512-/hKE8DaFCJuaQqE1IxpgkcjOolUIwgi3TgHElPVKGdGRBSmJMTmN/cr6vWa55pCJIXPyhKvcMrbrya7DZ3VmzA==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/otlp-exporter-base@0.202.0': + resolution: {integrity: sha512-nMEOzel+pUFYuBJg2znGmHJWbmvMbdX5/RhoKNKowguMbURhz0fwik5tUKplLcUtl8wKPL1y9zPnPxeBn65N0Q==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/otlp-transformer@0.202.0': + resolution: {integrity: sha512-5XO77QFzs9WkexvJQL9ksxL8oVFb/dfi9NWQSq7Sv0Efr9x3N+nb1iklP1TeVgxqJ7m1xWiC/Uv3wupiQGevMw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': ^1.3.0 + + '@opentelemetry/resources@2.0.1': + resolution: {integrity: sha512-dZOB3R6zvBwDKnHDTB4X1xtMArB/d324VsbiPkX/Yu0Q8T2xceRthoIVFhJdvgVM2QhGVUyX9tzwiNxGtoBJUw==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + + '@opentelemetry/sdk-logs@0.202.0': + resolution: {integrity: sha512-pv8QiQLQzk4X909YKm0lnW4hpuQg4zHwJ4XBd5bZiXcd9urvrJNoNVKnxGHPiDVX/GiLFvr5DMYsDBQbZCypRQ==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.4.0 <1.10.0' + + '@opentelemetry/sdk-metrics@2.0.1': + resolution: {integrity: sha512-wf8OaJoSnujMAHWR3g+/hGvNcsC16rf9s1So4JlMiFaFHiE4HpIA3oUh+uWZQ7CNuK8gVW/pQSkgoa5HkkOl0g==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.9.0 <1.10.0' + + '@opentelemetry/sdk-trace-base@2.0.1': + resolution: {integrity: sha512-xYLlvk/xdScGx1aEqvxLwf6sXQLXCjk3/1SQT9X9AoN5rXRhkdvIFShuNNmtTEPRBqcsMbS4p/gJLNI2wXaDuQ==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.3.0 <1.10.0' + + '@opentelemetry/sdk-trace-node@2.0.1': + resolution: {integrity: sha512-UhdbPF19pMpBtCWYP5lHbTogLWx9N0EBxtdagvkn5YtsAnCBZzL7SjktG+ZmupRgifsHMjwUaCCaVmqGfSADmA==} + engines: {node: ^18.19.0 || >=20.6.0} + peerDependencies: + '@opentelemetry/api': '>=1.0.0 <1.10.0' + + '@opentelemetry/semantic-conventions@1.34.0': + resolution: {integrity: sha512-aKcOkyrorBGlajjRdVoJWHTxfxO1vCNHLJVlSDaRHDIdjU+pX8IYQPvPDkYiujKLbRnWU+1TBwEt0QRgSm4SGA==} + engines: {node: '>=14'} + '@oxc-project/runtime@0.77.3': resolution: {integrity: sha512-vsC/ewcGJ7xXnnwZkku7rpPH5Lxb5g4J+V6lD9eBTnRLmXVXM7Qu50y+ozD+UD5IXaSoVOvVMGTT4YSNCz2MQQ==} engines: {node: '>=6.9.0'} @@ -3950,6 +4048,35 @@ packages: '@radix-ui/rect@1.1.0': resolution: {integrity: sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==} + '@redocly/ajv@8.11.2': + resolution: {integrity: sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg==} + + '@redocly/ajv@8.11.3': + resolution: {integrity: sha512-4P3iZse91TkBiY+Dx5DUgxQ9GXkVJf++cmI0MOyLDxV9b5MUBI4II6ES8zA5JCbO72nKAJxWrw4PUPW+YP3ZDQ==} + + '@redocly/cli@2.10.0': + resolution: {integrity: sha512-wKuF/30MSmcc4SJwWTuVnIeFKyW60DVOgxTzvvA+wC1HRBZ24X3UTRyt6MtDEFGcNl6hv5/J9l2lodStwwqelQ==} + engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} + hasBin: true + + '@redocly/config@0.22.2': + resolution: {integrity: sha512-roRDai8/zr2S9YfmzUfNhKjOF0NdcOIqF7bhf4MVC5UxpjIysDjyudvlAiVbpPHp3eDRWbdzUgtkK1a7YiDNyQ==} + + '@redocly/config@0.36.2': + resolution: {integrity: sha512-gwIjFOzyq9bdJCdtEHDMf2hEJ9hHXUHkY1U3IPWyZmRoFcibzlpXOLrT0xVgnn10IEttMwD+SZtZBE593yDXsw==} + + '@redocly/openapi-core@1.34.5': + resolution: {integrity: sha512-0EbE8LRbkogtcCXU7liAyC00n9uNG9hJ+eMyHFdUsy9lB/WGqnEBgwjA9q2cyzAVcdTkQqTBBU1XePNnN3OijA==} + engines: {node: '>=18.17.0', npm: '>=9.5.0'} + + '@redocly/openapi-core@2.10.0': + resolution: {integrity: sha512-OmWvnpA11J6Tp3+h8I3nrfpTcXROLllr/9yIUB7ofi7s1yOOKOqlZ4HTs+zaeNmk9vclwmbgc2HVdSsBKUXp6g==} + engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} + + '@redocly/respect-core@2.10.0': + resolution: {integrity: sha512-4XFOR3kbuhlPBeW2G/G3yPs7YJKV0d/k2BgDwKIQH8Edld4fHvknEAR9TFUaWsiA7JGWrP3CQ58P5VoDNW5O0Q==} + engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} + '@replit/codemirror-indentation-markers@6.5.3': resolution: {integrity: sha512-hL5Sfvw3C1vgg7GolLe/uxX5T3tmgOA3ZzqlMv47zjU1ON51pzNWiVbS22oh6crYhtVhv8b3gdXwoYp++2ilHw==} peerDependencies: @@ -5192,6 +5319,9 @@ packages: '@types/stream-throttle@0.1.4': resolution: {integrity: sha512-VxXIHGjVuK8tYsVm60rIQMmF/0xguCeen5OmK5S4Y6K64A+z+y4/GI6anRnVzaUZaJB9Ah9IfbDcO0o1gZCc/w==} + '@types/stylis@4.2.5': + resolution: {integrity: sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==} + '@types/superagent@8.1.9': resolution: {integrity: sha512-pTVjI73witn+9ILmoJdajHGW2jkSaOzhiFYF1Rd3EQ94kymLqB9PjD9ISg7WaALC7+dCHT0FGe9T2LktLq/3GQ==} @@ -5949,6 +6079,12 @@ packages: batch@0.6.1: resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==} + better-ajv-errors@1.2.0: + resolution: {integrity: sha512-UW+IsFycygIo7bclP9h5ugkNH8EjCSgqyFB/yQ4Hqqa1OEYDtb0uFIkYE0b6+CjkgJYVM5UKI/pJPxjYe9EZlA==} + engines: {node: '>= 12.13.0'} + peerDependencies: + ajv: 4.11.8 - 8 + better-sqlite3@12.4.1: resolution: {integrity: sha512-3yVdyZhklTiNrtg+4WqHpJpFDd+WHTg2oM7UcR80GqL05AOV0xEJzc6qNvFYoEtE+hRp1n9MpN6/+4yhlGkDXQ==} engines: {node: 20.x || 22.x || 23.x || 24.x} @@ -6152,6 +6288,9 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} + camelize@1.0.1: + resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} + caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} @@ -6268,6 +6407,9 @@ packages: ckeditor5@47.1.0: resolution: {integrity: sha512-Vnmt6eKIpiM+EpJSwxzCjJC5/9ykUhegwqWS9znAuAz2ZgBiVUFt54Y+CBhVpMru3z4zQ+NncVgCqoiU3ocHGQ==} + classnames@2.5.1: + resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==} + clean-stack@2.2.0: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} @@ -6337,6 +6479,10 @@ packages: resolution: {integrity: sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA==} engines: {node: '>=6'} + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + codemirror-lang-elixir@4.0.0: resolution: {integrity: sha512-mzFesxo/t6KOxwnkqVd34R/q7yk+sMtHh6vUKGAvjwHmpL7bERHB+vQAsmU/nqrndkwVeJEHWGw/z/ybfdiudA==} @@ -6388,6 +6534,9 @@ packages: colord@2.9.3: resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} + colorette@1.4.0: + resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + colorette@2.0.20: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} @@ -6546,6 +6695,9 @@ packages: peerDependencies: webpack: ^5.1.0 + core-js@3.46.0: + resolution: {integrity: sha512-vDMm9B0xnqqZ8uSBpZ8sNtRtOdmfShrvT6h2TuQGLs0Is+cR0DYbj/KWP6ALVNbWPpqA/qPLoOuppJN07humpA==} + core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} @@ -6626,6 +6778,10 @@ packages: csrf-csrf@3.2.2: resolution: {integrity: sha512-E3TgLWX1e+jqigDva+nFItfqa59UZ+gLR56DVNyL/xawBGwQr8o3U4/o1gP9FZmIWLnWCiIl5ni85MghMCNRfg==} + css-color-keywords@1.0.0: + resolution: {integrity: sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==} + engines: {node: '>=4'} + css-declaration-sorter@6.4.1: resolution: {integrity: sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==} engines: {node: ^10 || ^12 || >=14} @@ -6672,6 +6828,9 @@ packages: css-shorthand-properties@1.1.2: resolution: {integrity: sha512-C2AugXIpRGQTxaCW0N7n5jD/p5irUmCrwl03TrnMFBHDbdq44CFWR2zO7rK9xPN4Eo3pUxC4vQzQgbIpzrD1PQ==} + css-to-react-native@3.2.0: + resolution: {integrity: sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==} + css-tree@1.1.3: resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} engines: {node: '>=8.0.0'} @@ -7074,6 +7233,9 @@ packages: decimal.js@10.6.0: resolution: {integrity: sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==} + decko@1.2.0: + resolution: {integrity: sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==} + decode-named-character-reference@1.2.0: resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==} @@ -7291,6 +7453,10 @@ packages: domutils@3.2.2: resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} + dotenv@16.4.7: + resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} + engines: {node: '>=12'} + dotenv@17.2.3: resolution: {integrity: sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==} engines: {node: '>=12'} @@ -7539,6 +7705,9 @@ packages: resolution: {integrity: sha512-VHErXfzR/6r/+yyzPKeBvO0lgjfC5cbDCQWjWwMZWSb6YU39TGIl51OUmCfWCq4ylMdJSB8zkz2vIuIeIxXApA==} engines: {node: '>=0.10.0'} + es6-promise@3.3.1: + resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} + es6-promise@4.2.8: resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==} @@ -7854,6 +8023,10 @@ packages: resolution: {integrity: sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==} hasBin: true + fast-xml-parser@4.5.3: + resolution: {integrity: sha512-RKihhV+SHsIUGXObeVy9AXiBbFwkVk7Syp8XgwN5U3JV416+Gwp/GO9i0JYKmikykgz/UHRrrV4ROuZEo/T0ig==} + hasBin: true + fast-xml-parser@5.2.5: resolution: {integrity: sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==} hasBin: true @@ -8006,6 +8179,9 @@ packages: resolution: {integrity: sha512-aTnihCmiMA0ItLJLCbrQYS9mzriopW24goFPgUnKAAmAlPogTSmFWqoBPMXzIfPb7bs04Hur5zEI4WYgLW3Sig==} engines: {node: '>=12'} + foreach@2.0.6: + resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==} + foreground-child@3.3.1: resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} @@ -8354,6 +8530,11 @@ packages: handle-thing@2.0.1: resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==} + handlebars@4.7.8: + resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} + engines: {node: '>=0.4.7'} + hasBin: true + happy-dom@20.0.8: resolution: {integrity: sha512-TlYaNQNtzsZ97rNMBAm8U+e2cUQXNithgfCizkDgc11lgmN4j9CKMhO3FPGKWQYPwwkFcPpoXYF/CqEPLgzfOg==} engines: {node: '>=20.0.0'} @@ -8590,6 +8771,9 @@ packages: engines: {node: '>=12'} hasBin: true + http2-client@1.3.5: + resolution: {integrity: sha512-EC2utToWl4RKfs5zd36Mxq7nzHHBuomZboI0yYL6Y0RmBgT7Sgkq4rQ0ezFTYoIsSs7Tm9SJe+o2FcAg6GBhGA==} + http2-wrapper@1.0.3: resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} engines: {node: '>=10.19.0'} @@ -9152,6 +9336,10 @@ packages: jquery@3.7.1: resolution: {integrity: sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==} + js-levenshtein@1.1.6: + resolution: {integrity: sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==} + engines: {node: '>=0.10.0'} + js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} @@ -9210,6 +9398,13 @@ packages: resolution: {integrity: sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==} engines: {node: ^18.17.0 || >=20.5.0} + json-pointer@0.6.2: + resolution: {integrity: sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==} + + json-schema-to-ts@2.7.2: + resolution: {integrity: sha512-R1JfqKqbBR4qE8UyBR56Ms30LL62/nlhoz+1UkfI/VE7p54Awu919FZ6ZUPG8zIa3XB65usPJgr1ONVncUGSaQ==} + engines: {node: '>=16'} + json-schema-to-ts@3.1.1: resolution: {integrity: sha512-+DWg8jCJG2TEnpy7kOm/7/AxaYoaRbjVB4LFZLySZlWn8exGs3A4OLJR966cVvU26N7X9TWxl+Jsw7dzAqKT6g==} engines: {node: '>=16'} @@ -9248,6 +9443,10 @@ packages: resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} engines: {'0': node >= 0.2.0} + jsonpath-rfc9535@1.3.0: + resolution: {integrity: sha512-3jFHya7oZ45aDxIIdx+/zQARahHXxFSMWBkcBUldfXpLS9VCXDJyTKt35kQfEXLqh0K3Ixw/9xFnvcDStaxh7Q==} + engines: {node: '>=20'} + jsonpointer@5.0.1: resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} engines: {node: '>=0.10.0'} @@ -9361,6 +9560,10 @@ packages: engines: {node: '>=6'} hasBin: true + leven@3.1.0: + resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} + engines: {node: '>=6'} + levn@0.4.1: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} @@ -9615,6 +9818,9 @@ packages: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} engines: {node: '>=12'} + lunr@2.3.9: + resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} + luxon@3.6.1: resolution: {integrity: sha512-tJLxrKJhO2ukZ5z0gyjY1zPh3Rh88Ej9P7jNrZiHMUXHae1yvI2imgOZtL1TO8TW6biMMKfTtAOoEJANgtWBMQ==} engines: {node: '>=12'} @@ -9689,6 +9895,11 @@ packages: engines: {node: '>= 20'} hasBin: true + marked@4.3.0: + resolution: {integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==} + engines: {node: '>= 12'} + hasBin: true + matcher@3.0.0: resolution: {integrity: sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==} engines: {node: '>=10'} @@ -10054,6 +10265,35 @@ packages: mlly@1.7.4: resolution: {integrity: sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==} + mobx-react-lite@4.1.1: + resolution: {integrity: sha512-iUxiMpsvNraCKXU+yPotsOncNNmyeS2B5DKL+TL6Tar/xm+wwNJAubJmtRSeAoYawdZqwv8Z/+5nPRHeQxTiXg==} + peerDependencies: + mobx: ^6.9.0 + react: ^16.8.0 || ^17 || ^18 || ^19 + react-dom: '*' + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + + mobx-react@9.2.0: + resolution: {integrity: sha512-dkGWCx+S0/1mfiuFfHRH8D9cplmwhxOV5CkXMp38u6rQGG2Pv3FWYztS0M7ncR6TyPRQKaTG/pnitInoYE9Vrw==} + peerDependencies: + mobx: ^6.9.0 + react: ^16.8.0 || ^17 || ^18 || ^19 + react-dom: '*' + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + + mobx@6.15.0: + resolution: {integrity: sha512-UczzB+0nnwGotYSgllfARAqWCJ5e/skuV2K/l+Zyck/H6pJIhLXuBnz+6vn2i211o7DtbE78HQtsYEKICHGI+g==} + mocha@11.7.2: resolution: {integrity: sha512-lkqVJPmqqG/w5jmmFtiRvtA2jkDyNVUcefFJKb2uyX4dekk8Okgqop3cgbFiaIvj8uCRJVTP5x9dfxGyXm2jvQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -10198,6 +10438,10 @@ packages: node-environment-flags@1.0.6: resolution: {integrity: sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==} + node-fetch-h2@2.3.0: + resolution: {integrity: sha512-ofRW94Ab0T4AOh5Fk8t0h8OBWrmjb0SSB20xh1H8YnPV9EJ+f5AMoYSUQ2zgJ4Iq2HAK0I2l5/Nequ8YzFS3Hg==} + engines: {node: 4.x || >=6.0.0} + node-fetch@2.7.0: resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} @@ -10240,6 +10484,9 @@ packages: node-html-parser@7.0.1: resolution: {integrity: sha512-KGtmPY2kS0thCWGK0VuPyOS+pBKhhe8gXztzA2ilAOhbUbxa9homF1bOyKvhGzMLXUoRds9IOmr/v5lr/lqNmA==} + node-readfiles@0.2.0: + resolution: {integrity: sha512-SU00ZarexNlE4Rjdm83vglt5Y9yiQ+XI1XpflWlb7q7UTN1JUItm69xMeiQCTxtTfnzt+83T8Cx+vI2ED++VDA==} + node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} @@ -10332,6 +10579,22 @@ packages: nwsapi@2.2.22: resolution: {integrity: sha512-ujSMe1OWVn55euT1ihwCI1ZcAaAU3nxUiDwfDQldc51ZXaB9m2AyOn6/jh1BLe2t/G8xd6uKG1UBF2aZJeg2SQ==} + oas-kit-common@1.0.8: + resolution: {integrity: sha512-pJTS2+T0oGIwgjGpw7sIRU8RQMcUoKCDWFLdBqKB2BNmGpbBMH2sdqAaOXUg8OzonZHU0L7vfJu1mJFEiYDWOQ==} + + oas-linter@3.2.2: + resolution: {integrity: sha512-KEGjPDVoU5K6swgo9hJVA/qYGlwfbFx+Kg2QB/kd7rzV5N8N5Mg6PlsoCMohVnQmo+pzJap/F610qTodKzecGQ==} + + oas-resolver@2.5.6: + resolution: {integrity: sha512-Yx5PWQNZomfEhPPOphFbZKi9W93CocQj18NlD2Pa4GWZzdZpSJvYwoiuurRI7m3SpcChrnO08hkuQDL3FGsVFQ==} + hasBin: true + + oas-schema-walker@1.1.5: + resolution: {integrity: sha512-2yucenq1a9YPmeNExoUa9Qwrt9RFkjqaMAA1X+U7sbb0AqBeTIdMHky9SQQ6iN94bO5NW0W4TRYXerG+BdAvAQ==} + + oas-validator@5.0.8: + resolution: {integrity: sha512-cu20/HE5N5HKqVygs3dt94eYJfBi0TsZvPVXDhbXQHiEityDN+RROTleefoKRKKJ9dFAF2JBkDHgvWj0sjKGmw==} + object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} @@ -10434,6 +10697,9 @@ packages: zod: optional: true + openapi-sampler@1.6.2: + resolution: {integrity: sha512-NyKGiFKfSWAZr4srD/5WDhInOWDhfml32h/FKUqLpEwKJt0kG0LGUU0MdyNkKrVGuJnw6DuPWq/sHCwAMpiRxg==} + openapi-types@12.1.3: resolution: {integrity: sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==} @@ -10457,6 +10723,9 @@ packages: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} + outdent@0.8.0: + resolution: {integrity: sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A==} + outvariant@1.4.3: resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==} @@ -10719,6 +10988,9 @@ packages: perfect-freehand@1.2.0: resolution: {integrity: sha512-h/0ikF1M3phW7CwpZ5MMvKnfpHficWoOEyr//KVNTxV4F6deRK1eYMtHyBKEAKFK0aXIEUK9oBvlF6PNXMDsAw==} + perfect-scrollbar@1.5.6: + resolution: {integrity: sha512-rixgxw3SxyJbCaSpo1n35A/fwI1r2rdwMKOTCg/AcG+xOEyZcE8UHVjpZMFCVImzsFoCZeJTT+M/rdEIQYO2nw==} + pica@7.1.1: resolution: {integrity: sha512-WY73tMvNzXWEld2LicT9Y260L43isrZ85tPuqRyvtkljSDLmnNFQmZICt4xUJMVulmcc6L9O7jbBrtx3DOz/YQ==} @@ -10780,6 +11052,10 @@ packages: plural-forms@0.5.5: resolution: {integrity: sha512-rJw4xp22izsfJOVqta5Hyvep2lR3xPkFUtj7dyQtpf/FbxUiX7PQCajTn2EHDRylizH5N/Uqqodfdu22I0ju+g==} + pluralize@8.0.0: + resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} + engines: {node: '>=4'} + png-chunk-text@1.0.0: resolution: {integrity: sha512-DEROKU3SkkLGWNMzru3xPVgxyd48UGuMSZvioErCure6yhOc/pRH2ZV+SEn7nmaf7WNf3NdIpH+UTrRdKyq9Lw==} @@ -10809,6 +11085,10 @@ packages: points-on-path@0.2.1: resolution: {integrity: sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==} + polished@4.3.1: + resolution: {integrity: sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==} + engines: {node: '>=10'} + portfinder@1.0.36: resolution: {integrity: sha512-gMKUzCoP+feA7t45moaSx7UniU7PgGN3hA8acAB+3Qn7/js0/lJ07fYZlxt9riE9S3myyxDCyAFzSrLlta0c9g==} engines: {node: '>= 10.12'} @@ -11576,6 +11856,10 @@ packages: postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + postcss@8.4.49: + resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} + engines: {node: ^10 || ^12 || >=14} + postcss@8.5.3: resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} engines: {node: ^10 || ^12 || >=14} @@ -11619,6 +11903,10 @@ packages: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + prismjs@1.30.0: + resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==} + engines: {node: '>=6'} + proc-log@2.0.1: resolution: {integrity: sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -11780,10 +12068,10 @@ packages: peerDependencies: react: ^16.14.0 - react-dom@19.1.0: - resolution: {integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==} + react-dom@19.2.0: + resolution: {integrity: sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==} peerDependencies: - react: ^19.1.0 + react: ^19.2.0 react-i18next@16.2.1: resolution: {integrity: sha512-z7TVwd8q4AjFo2n7oOwzNusY7xVL4uHykwX1zZRvasUQnmnXlp7Z1FZqXvhK/6hQaCvWTZmZW1bMaUWKowtvVw==} @@ -11856,10 +12144,19 @@ packages: '@types/react': optional: true + react-tabs@6.1.0: + resolution: {integrity: sha512-6QtbTRDKM+jA/MZTTefvigNxo0zz+gnBTVFw2CFVvq+f2BuH0nF0vDLNClL045nuTAdOoK/IL1vTP0ZLX0DAyQ==} + peerDependencies: + react: ^18.0.0 || ^19.0.0 + react@16.14.0: resolution: {integrity: sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==} engines: {node: '>=0.10.0'} + react@19.2.0: + resolution: {integrity: sha512-tmbWg6W31tQLeB5cdIBOicJDJRR2KzXsV7uSK9iNfLWQ5bIZfxuPEHp7M8wiHyHnn0DD1i7w3Zmin0FtkrwoCQ==} + engines: {node: '>=0.10.0'} + read-binary-file-arch@1.0.6: resolution: {integrity: sha512-BNg9EN3DD3GsDXX7Aa8O4p92sryjkmzYYgmgTAc6CA4uGLEDzFfxOxugu21akOxpcXHiEgsYkC6nPsQvLLLmEg==} hasBin: true @@ -11913,10 +12210,23 @@ packages: resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==} engines: {node: '>= 10.13.0'} + redoc@2.5.1: + resolution: {integrity: sha512-LmqA+4A3CmhTllGG197F0arUpmChukAj9klfSdxNRemT9Hr07xXr7OGKu4PHzBs359sgrJ+4JwmOlM7nxLPGMg==} + engines: {node: '>=6.9', npm: '>=3.0.0'} + peerDependencies: + core-js: ^3.1.4 + mobx: ^6.0.4 + react: ^16.8.4 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.4 || ^17.0.0 || ^18.0.0 || ^19.0.0 + styled-components: ^4.1.1 || ^5.1.1 || ^6.0.5 + reflect.getprototypeof@1.0.10: resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} engines: {node: '>= 0.4'} + reftools@1.1.9: + resolution: {integrity: sha512-OVede/NQE13xBQ+ob5CKd5KyeJYU2YInb1bmV4nRoOfquZPkAkxuOXicSe1PvqIuZZ4kD13sPKBbR7UFDmli6w==} + regenerate-unicode-properties@8.2.0: resolution: {integrity: sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==} engines: {node: '>=4'} @@ -12336,8 +12646,8 @@ packages: scheduler@0.19.1: resolution: {integrity: sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==} - scheduler@0.26.0: - resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==} + scheduler@0.27.0: + resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==} schema-utils@3.3.0: resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} @@ -12435,6 +12745,9 @@ packages: set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + set-cookie-parser@2.7.2: + resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==} + set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} @@ -12456,6 +12769,9 @@ packages: setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + shallowequal@1.1.0: + resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==} + shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} engines: {node: '>=0.10.0'} @@ -12488,6 +12804,24 @@ packages: shimmer@1.2.1: resolution: {integrity: sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==} + should-equal@2.0.0: + resolution: {integrity: sha512-ZP36TMrK9euEuWQYBig9W55WPC7uo37qzAEmbjHz4gfyuXrEUgF8cUvQVO+w+d3OMfPvSRQJ22lSm8MQJ43LTA==} + + should-format@3.0.3: + resolution: {integrity: sha512-hZ58adtulAk0gKtua7QxevgUaXTTXxIi8t41L3zo9AHvjXO1/7sdLECuHeIN2SRtYXpNkmhoUP2pdeWgricQ+Q==} + + should-type-adaptors@1.1.0: + resolution: {integrity: sha512-JA4hdoLnN+kebEp2Vs8eBe9g7uy0zbRo+RMcU0EsNy+R+k049Ki+N5tT5Jagst2g7EAja+euFuoXFCa8vIklfA==} + + should-type@1.4.0: + resolution: {integrity: sha512-MdAsTu3n25yDbIe1NeN69G4n6mUnJGtSJHygX3+oN0ZbO3DTiATnf7XnYJdGT42JCXurTb1JI0qOBR65shvhPQ==} + + should-util@1.0.1: + resolution: {integrity: sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==} + + should@13.2.3: + resolution: {integrity: sha512-ggLesLtu2xp+ZxI+ysJTmNjh2U0TsC+rQ/pfED9bUZZ4DKefP27D+7YJVVTvKsmjLpIi9jAa7itwDGkDDmt1GQ==} + side-channel-list@1.0.0: resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} engines: {node: '>= 0.4'} @@ -12530,6 +12864,9 @@ packages: simple-git@3.28.0: resolution: {integrity: sha512-Rs/vQRwsn1ILH1oBUy8NucJlXmnnLeLCfcvbSehkPzbv3wwoFWIdtfd6Ndo6ZPhlPsCZ60CPI4rxurnwAa+a2w==} + simple-websocket@9.1.0: + resolution: {integrity: sha512-8MJPnjRN6A8UCp1I+H/dSFyjwJhp6wta4hsVRhjf8w9qBHRzxYt14RaOcjvQnhD1N4yKOddEjflwMnQM4VtXjQ==} + simple-xml-to-json@1.2.3: resolution: {integrity: sha512-kWJDCr9EWtZ+/EYYM5MareWj2cRnZGF93YDNpH4jQiHB+hBIZnfPFSQiVMzZOdk+zXWqTZ/9fTeQNu2DqeiudA==} engines: {node: '>=20.12.2'} @@ -12557,6 +12894,10 @@ packages: sliced@1.0.1: resolution: {integrity: sha512-VZBmZP8WU3sMOZm1bdgTadsQbcscK0UM8oKxKVBs4XAhUo2Xxzm/OFMGBkPusxw9xL3Uy8LrzEqGqJhclsr0yA==} + slugify@1.4.7: + resolution: {integrity: sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==} + engines: {node: '>=8.0.0'} + smart-buffer@4.2.0: resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} @@ -12726,6 +13067,9 @@ packages: std-env@3.9.0: resolution: {integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==} + stickyfill@1.1.1: + resolution: {integrity: sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==} + stop-iteration-iterator@1.1.0: resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} engines: {node: '>= 0.4'} @@ -12898,6 +13242,13 @@ packages: style-search@0.1.0: resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==} + styled-components@6.1.19: + resolution: {integrity: sha512-1v/e3Dl1BknC37cXMhwGomhO8AkYmN41CqyX9xhUDxry1ns3BFQy2lLDRQXJRdVVWB9OHemv/53xaStimvWyuA==} + engines: {node: '>= 16'} + peerDependencies: + react: '>= 16.8.0' + react-dom: '>= 16.8.0' + stylehacks@5.1.1: resolution: {integrity: sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==} engines: {node: ^10 || ^12 || >=14.0} @@ -12953,6 +13304,9 @@ packages: engines: {node: '>=18.12.0'} hasBin: true + stylis@4.3.2: + resolution: {integrity: sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==} + stylis@4.3.6: resolution: {integrity: sha512-yQ3rwFWRfwNUY7H5vpU0wfdkNSnvnJinhF9830Swlaxl03zsOjCfmX0ugac+3LtK0lYSgwL/KXc8oYL3mG4YFQ==} @@ -13034,15 +13388,16 @@ packages: swagger-ui-dist@5.21.0: resolution: {integrity: sha512-E0K3AB6HvQd8yQNSMR7eE5bk+323AUxjtCz/4ZNKiahOlPhPJxqn3UPIGs00cyY/dhrTDJ61L7C/a8u6zhGrZg==} - swagger-ui-dist@5.30.1: - resolution: {integrity: sha512-4mNAUM31sr52K3JcK9qiGbfsFKNh/dm3PkEe+F9FAM31YY/NoRYUgsR/L6d7LLFn6PgZXtBG2ygp8+7UnpUIPg==} - swagger-ui-express@5.0.1: resolution: {integrity: sha512-SrNU3RiBGTLLmFU8GIJdOdanJTl4TOmT27tt3bWWHppqYmAZ6IDuEuBvMU6nZq0zLEe6b/1rACXCgLZqO6ZfrA==} engines: {node: '>= v0.10.32'} peerDependencies: express: '>=4.0.0 || >=5.0.0-beta' + swagger2openapi@7.0.8: + resolution: {integrity: sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==} + hasBin: true + symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} @@ -13269,6 +13624,9 @@ packages: truncate-utf8-bytes@1.0.2: resolution: {integrity: sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==} + ts-algebra@1.2.2: + resolution: {integrity: sha512-kloPhf1hq3JbCPOTYoOWDKxebWjNb2o/LKnNfkWhxVVisFFmMJPPdJeGoGmM+iRLyoXAR61e08Pb+vUXINg8aA==} + ts-algebra@2.0.0: resolution: {integrity: sha512-FPAhNPFMrkwz76P7cdjdmiShwMynZYN6SgOujD1urY4oNm80Ou9oMdmbR45LotcKOXoy7wSmHkRFE6Mxbrhefw==} @@ -13303,6 +13661,9 @@ packages: '@swc/wasm': optional: true + tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} @@ -13416,6 +13777,11 @@ packages: ufo@1.6.1: resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} + uglify-js@3.19.3: + resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==} + engines: {node: '>=0.8.0'} + hasBin: true + uid-safe@2.1.5: resolution: {integrity: sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==} engines: {node: '>= 0.8'} @@ -13546,6 +13912,9 @@ packages: peerDependencies: browserslist: '>= 4.21.0' + uri-js-replace@1.0.1: + resolution: {integrity: sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g==} + uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -13555,6 +13924,9 @@ packages: url-parse@1.5.10: resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + url-template@2.0.8: + resolution: {integrity: sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==} + urlpattern-polyfill@10.1.0: resolution: {integrity: sha512-IGjKp/o0NL3Bso1PymYURCJxMPNAf/ILOpendP9f5B6e1rTJgdgiOvgfoT8VxCAdY+Wisb9uhGaJJf3yZ2V9nw==} @@ -14011,6 +14383,9 @@ packages: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} + wordwrap@1.0.0: + resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} + workerpool@9.3.4: resolution: {integrity: sha512-TmPRQYYSAnnDiEB0P/Ytip7bFGvqnSU6I2BcuSw7Hx+JSg/DsUi5ebYfc8GYaSdpuvOcEs6dXxPurOYpe9QFwg==} @@ -14135,6 +14510,9 @@ packages: resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==} engines: {node: '>=18'} + yaml-ast-parser@0.0.43: + resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==} + yaml@1.10.2: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} @@ -14178,6 +14556,10 @@ packages: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} + yargs@17.0.1: + resolution: {integrity: sha512-xBBulfCc8Y6gLFcrPvtqKz9hz8SO0l1Ni8GgDekvBX2ro0HRQImDGnikfc33cgzcYUSncapnNcZDjVFIH3f6KQ==} + engines: {node: '>=12'} + yargs@17.7.2: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} @@ -15056,8 +15438,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15119,8 +15499,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -15312,6 +15690,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -15808,8 +16188,6 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -16308,7 +16686,7 @@ snapshots: fs-extra: 10.1.0 log-symbols: 4.1.0 parse-author: 2.0.0 - semver: 7.7.2 + semver: 7.7.3 transitivePeerDependencies: - bluebird - supports-color @@ -16346,7 +16724,7 @@ snapshots: log-symbols: 4.1.0 node-fetch: 2.7.0(encoding@0.1.13) rechoir: 0.8.0 - semver: 7.7.2 + semver: 7.7.3 source-map-support: 0.5.21 username: 5.1.0 transitivePeerDependencies: @@ -16696,6 +17074,14 @@ snapshots: tslib: 2.8.1 optional: true + '@emotion/is-prop-valid@1.2.2': + dependencies: + '@emotion/memoize': 0.8.1 + + '@emotion/memoize@0.8.1': {} + + '@emotion/unitless@0.8.1': {} + '@epic-web/invariant@1.0.0': {} '@es-joy/jsdoccomment@0.50.2': @@ -16934,14 +17320,14 @@ snapshots: '@eslint/core': 0.16.0 levn: 0.4.1 - '@excalidraw/excalidraw@0.18.0(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@excalidraw/excalidraw@0.18.0(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@braintree/sanitize-url': 6.0.2 '@excalidraw/laser-pointer': 1.3.1 '@excalidraw/mermaid-to-excalidraw': 1.1.2 '@excalidraw/random-username': 1.1.0 - '@radix-ui/react-popover': 1.1.6(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-tabs': 1.0.2(react-dom@19.1.0(react@16.14.0))(react@16.14.0) + '@radix-ui/react-popover': 1.1.6(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-tabs': 1.0.2(react-dom@19.2.0(react@19.2.0))(react@19.2.0) browser-fs-access: 0.29.1 canvas-roundrect-polyfill: 0.0.1 clsx: 1.1.1 @@ -16950,8 +17336,8 @@ snapshots: fractional-indexing: 3.2.0 fuzzy: 0.1.3 image-blob-reduce: 3.0.1 - jotai: 2.11.0(@types/react@19.1.7)(react@16.14.0) - jotai-scope: 0.7.2(jotai@2.11.0(@types/react@19.1.7)(react@16.14.0))(react@16.14.0) + jotai: 2.11.0(@types/react@19.1.7)(react@19.2.0) + jotai-scope: 0.7.2(jotai@2.11.0(@types/react@19.1.7)(react@19.2.0))(react@19.2.0) lodash.debounce: 4.0.8 lodash.throttle: 4.1.1 nanoid: 4.0.2 @@ -16964,11 +17350,11 @@ snapshots: png-chunks-extract: 1.0.0 points-on-curve: 1.0.1 pwacompat: 2.0.17 - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) roughjs: 4.6.6 sass: 1.51.0 - tunnel-rat: 0.1.2(@types/react@19.1.7)(react@16.14.0) + tunnel-rat: 0.1.2(@types/react@19.1.7)(react@19.2.0) transitivePeerDependencies: - '@types/react' - '@types/react-dom' @@ -16991,6 +17377,10 @@ snapshots: '@exercism/highlightjs-gdscript@0.0.1': {} + '@exodus/schemasafe@1.3.0': {} + + '@faker-js/faker@7.6.0': {} + '@fast-csv/parse@5.0.5': dependencies: lodash.escaperegexp: 4.1.2 @@ -17014,11 +17404,11 @@ snapshots: '@floating-ui/core': 1.6.9 '@floating-ui/utils': 0.2.9 - '@floating-ui/react-dom@2.1.2(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@floating-ui/react-dom@2.1.2(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@floating-ui/dom': 1.6.13 - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) '@floating-ui/utils@0.2.9': {} @@ -17233,6 +17623,8 @@ snapshots: '@humanwhocodes/module-importer@1.0.1': {} + '@humanwhocodes/momoa@2.0.4': {} + '@humanwhocodes/retry@0.4.3': {} '@iconify/types@2.0.0': {} @@ -17747,7 +18139,7 @@ snapshots: debug: 4.4.3(supports-color@6.0.0) electron-installer-common: 0.10.4 lodash: 4.17.21 - semver: 7.7.2 + semver: 7.7.3 yargs: 16.2.0 transitivePeerDependencies: - supports-color @@ -17989,6 +18381,82 @@ snapshots: '@open-draft/until@2.1.0': optional: true + '@opentelemetry/api-logs@0.202.0': + dependencies: + '@opentelemetry/api': 1.9.0 + + '@opentelemetry/api@1.9.0': {} + + '@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + + '@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/semantic-conventions': 1.34.0 + + '@opentelemetry/exporter-trace-otlp-http@0.202.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.202.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.202.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + + '@opentelemetry/otlp-exporter-base@0.202.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.202.0(@opentelemetry/api@1.9.0) + + '@opentelemetry/otlp-transformer@0.202.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.202.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.202.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + protobufjs: 7.5.0 + + '@opentelemetry/resources@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.34.0 + + '@opentelemetry/sdk-logs@0.202.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.202.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + + '@opentelemetry/sdk-metrics@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + + '@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.34.0 + + '@opentelemetry/sdk-trace-node@2.0.1(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/context-async-hooks': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0) + + '@opentelemetry/semantic-conventions@1.34.0': {} + '@oxc-project/runtime@0.77.3': optional: true @@ -18155,280 +18623,381 @@ snapshots: '@radix-ui/primitive@1.1.1': {} - '@radix-ui/react-arrow@1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-arrow@1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 '@types/react-dom': 19.1.6(@types/react@19.1.7) - '@radix-ui/react-collection@1.0.1(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-collection@1.0.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - '@radix-ui/react-compose-refs': 1.0.0(react@16.14.0) - '@radix-ui/react-context': 1.0.0(react@16.14.0) - '@radix-ui/react-primitive': 1.0.1(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-slot': 1.0.1(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-compose-refs': 1.0.0(react@19.2.0) + '@radix-ui/react-context': 1.0.0(react@19.2.0) + '@radix-ui/react-primitive': 1.0.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-slot': 1.0.1(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) - '@radix-ui/react-compose-refs@1.0.0(react@16.14.0)': + '@radix-ui/react-compose-refs@1.0.0(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - react: 16.14.0 + react: 19.2.0 - '@radix-ui/react-compose-refs@1.1.1(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-compose-refs@1.1.1(@types/react@19.1.7)(react@19.2.0)': dependencies: - react: 16.14.0 + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-context@1.0.0(react@16.14.0)': + '@radix-ui/react-context@1.0.0(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - react: 16.14.0 + react: 19.2.0 - '@radix-ui/react-context@1.1.1(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-context@1.1.1(@types/react@19.1.7)(react@19.2.0)': dependencies: - react: 16.14.0 + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-direction@1.0.0(react@16.14.0)': + '@radix-ui/react-direction@1.0.0(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - react: 16.14.0 + react: 19.2.0 - '@radix-ui/react-dismissable-layer@1.1.5(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-dismissable-layer@1.1.5(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 '@types/react-dom': 19.1.6(@types/react@19.1.7) - '@radix-ui/react-focus-guards@1.1.1(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-focus-guards@1.1.1(@types/react@19.1.7)(react@19.2.0)': dependencies: - react: 16.14.0 + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-focus-scope@1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-focus-scope@1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 '@types/react-dom': 19.1.6(@types/react@19.1.7) - '@radix-ui/react-id@1.0.0(react@16.14.0)': + '@radix-ui/react-id@1.0.0(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - '@radix-ui/react-use-layout-effect': 1.0.0(react@16.14.0) - react: 16.14.0 + '@radix-ui/react-use-layout-effect': 1.0.0(react@19.2.0) + react: 19.2.0 - '@radix-ui/react-id@1.1.0(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-id@1.1.0(@types/react@19.1.7)(react@19.2.0)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-popover@1.1.6(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-popover@1.1.6(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-id': 1.1.0(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-popper': 1.2.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-portal': 1.1.4(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-slot': 1.1.2(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.1.7)(react@16.14.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-id': 1.1.0(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-popper': 1.2.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-portal': 1.1.4(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-slot': 1.1.2(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.1.7)(react@19.2.0) aria-hidden: 1.2.4 - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) - react-remove-scroll: 2.6.3(@types/react@19.1.7)(react@16.14.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + react-remove-scroll: 2.6.3(@types/react@19.1.7)(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 '@types/react-dom': 19.1.6(@types/react@19.1.7) - '@radix-ui/react-popper@1.2.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-popper@1.2.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: - '@floating-ui/react-dom': 2.1.2(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-arrow': 1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-use-rect': 1.1.0(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-use-size': 1.1.0(@types/react@19.1.7)(react@16.14.0) + '@floating-ui/react-dom': 2.1.2(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-arrow': 1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-use-rect': 1.1.0(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-use-size': 1.1.0(@types/react@19.1.7)(react@19.2.0) '@radix-ui/rect': 1.1.0 - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 '@types/react-dom': 19.1.6(@types/react@19.1.7) - '@radix-ui/react-portal@1.1.4(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-portal@1.1.4(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 '@types/react-dom': 19.1.6(@types/react@19.1.7) - '@radix-ui/react-presence@1.0.0(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-presence@1.0.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - '@radix-ui/react-compose-refs': 1.0.0(react@16.14.0) - '@radix-ui/react-use-layout-effect': 1.0.0(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-compose-refs': 1.0.0(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.0.0(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) - '@radix-ui/react-presence@1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-presence@1.1.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@16.14.0) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@19.2.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 '@types/react-dom': 19.1.6(@types/react@19.1.7) - '@radix-ui/react-primitive@1.0.1(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-primitive@1.0.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - '@radix-ui/react-slot': 1.0.1(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-slot': 1.0.1(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) - '@radix-ui/react-primitive@2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-primitive@2.0.2(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: - '@radix-ui/react-slot': 1.1.2(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-slot': 1.1.2(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 '@types/react-dom': 19.1.6(@types/react@19.1.7) - '@radix-ui/react-roving-focus@1.0.2(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-roving-focus@1.0.2(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 '@radix-ui/primitive': 1.0.0 - '@radix-ui/react-collection': 1.0.1(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-compose-refs': 1.0.0(react@16.14.0) - '@radix-ui/react-context': 1.0.0(react@16.14.0) - '@radix-ui/react-direction': 1.0.0(react@16.14.0) - '@radix-ui/react-id': 1.0.0(react@16.14.0) - '@radix-ui/react-primitive': 1.0.1(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-use-callback-ref': 1.0.0(react@16.14.0) - '@radix-ui/react-use-controllable-state': 1.0.0(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-collection': 1.0.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-compose-refs': 1.0.0(react@19.2.0) + '@radix-ui/react-context': 1.0.0(react@19.2.0) + '@radix-ui/react-direction': 1.0.0(react@19.2.0) + '@radix-ui/react-id': 1.0.0(react@19.2.0) + '@radix-ui/react-primitive': 1.0.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-callback-ref': 1.0.0(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.0.0(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) - '@radix-ui/react-slot@1.0.1(react@16.14.0)': + '@radix-ui/react-slot@1.0.1(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - '@radix-ui/react-compose-refs': 1.0.0(react@16.14.0) - react: 16.14.0 + '@radix-ui/react-compose-refs': 1.0.0(react@19.2.0) + react: 19.2.0 - '@radix-ui/react-slot@1.1.2(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-slot@1.1.2(@types/react@19.1.7)(react@19.2.0)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-tabs@1.0.2(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': + '@radix-ui/react-tabs@1.0.2(react-dom@19.2.0(react@19.2.0))(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 '@radix-ui/primitive': 1.0.0 - '@radix-ui/react-context': 1.0.0(react@16.14.0) - '@radix-ui/react-direction': 1.0.0(react@16.14.0) - '@radix-ui/react-id': 1.0.0(react@16.14.0) - '@radix-ui/react-presence': 1.0.0(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-primitive': 1.0.1(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-roving-focus': 1.0.2(react-dom@19.1.0(react@16.14.0))(react@16.14.0) - '@radix-ui/react-use-controllable-state': 1.0.0(react@16.14.0) - react: 16.14.0 - react-dom: 19.1.0(react@16.14.0) + '@radix-ui/react-context': 1.0.0(react@19.2.0) + '@radix-ui/react-direction': 1.0.0(react@19.2.0) + '@radix-ui/react-id': 1.0.0(react@19.2.0) + '@radix-ui/react-presence': 1.0.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-primitive': 1.0.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-roving-focus': 1.0.2(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + '@radix-ui/react-use-controllable-state': 1.0.0(react@19.2.0) + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) - '@radix-ui/react-use-callback-ref@1.0.0(react@16.14.0)': + '@radix-ui/react-use-callback-ref@1.0.0(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - react: 16.14.0 + react: 19.2.0 - '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.1.7)(react@19.2.0)': dependencies: - react: 16.14.0 + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-use-controllable-state@1.0.0(react@16.14.0)': + '@radix-ui/react-use-controllable-state@1.0.0(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - '@radix-ui/react-use-callback-ref': 1.0.0(react@16.14.0) - react: 16.14.0 + '@radix-ui/react-use-callback-ref': 1.0.0(react@19.2.0) + react: 19.2.0 - '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.1.7)(react@19.2.0)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.1.7)(react@19.2.0)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-use-layout-effect@1.0.0(react@16.14.0)': + '@radix-ui/react-use-layout-effect@1.0.0(react@19.2.0)': dependencies: '@babel/runtime': 7.28.4 - react: 16.14.0 + react: 19.2.0 - '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.1.7)(react@19.2.0)': dependencies: - react: 16.14.0 + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-use-rect@1.1.0(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-use-rect@1.1.0(@types/react@19.1.7)(react@19.2.0)': dependencies: '@radix-ui/rect': 1.1.0 - react: 16.14.0 + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 - '@radix-ui/react-use-size@1.1.0(@types/react@19.1.7)(react@16.14.0)': + '@radix-ui/react-use-size@1.1.0(@types/react@19.1.7)(react@19.2.0)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 optionalDependencies: '@types/react': 19.1.7 '@radix-ui/rect@1.1.0': {} + '@redocly/ajv@8.11.2': + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js-replace: 1.0.1 + + '@redocly/ajv@8.11.3': + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js-replace: 1.0.1 + + '@redocly/cli@2.10.0(@opentelemetry/api@1.9.0)(ajv@8.17.1)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5)': + dependencies: + '@opentelemetry/exporter-trace-otlp-http': 0.202.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-node': 2.0.1(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.34.0 + '@redocly/openapi-core': 2.10.0(ajv@8.17.1) + '@redocly/respect-core': 2.10.0(ajv@8.17.1) + abort-controller: 3.0.0 + chokidar: 3.6.0 + colorette: 1.4.0 + cookie: 0.7.2 + dotenv: 16.4.7 + form-data: 4.0.4 + glob: 11.0.3 + handlebars: 4.7.8 + https-proxy-agent: 7.0.6 + mobx: 6.15.0 + pluralize: 8.0.0 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + redoc: 2.5.1(core-js@3.46.0)(encoding@0.1.13)(mobx@6.15.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(styled-components@6.1.19(react-dom@19.2.0(react@19.2.0))(react@19.2.0)) + semver: 7.7.3 + set-cookie-parser: 2.7.2 + simple-websocket: 9.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) + styled-components: 6.1.19(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + undici: 6.21.3 + yargs: 17.0.1 + transitivePeerDependencies: + - '@opentelemetry/api' + - ajv + - bufferutil + - core-js + - encoding + - react-native + - supports-color + - utf-8-validate + + '@redocly/config@0.22.2': {} + + '@redocly/config@0.36.2': + dependencies: + json-schema-to-ts: 2.7.2 + + '@redocly/openapi-core@1.34.5': + dependencies: + '@redocly/ajv': 8.11.3 + '@redocly/config': 0.22.2 + colorette: 1.4.0 + https-proxy-agent: 7.0.6 + js-levenshtein: 1.1.6 + js-yaml: 4.1.0 + minimatch: 5.1.6 + pluralize: 8.0.0 + yaml-ast-parser: 0.0.43 + transitivePeerDependencies: + - supports-color + + '@redocly/openapi-core@2.10.0(ajv@8.17.1)': + dependencies: + '@redocly/ajv': 8.11.3 + '@redocly/config': 0.36.2 + ajv-formats: 2.1.1(ajv@8.17.1) + colorette: 1.4.0 + js-levenshtein: 1.1.6 + js-yaml: 4.1.0 + picomatch: 4.0.3 + pluralize: 8.0.0 + yaml-ast-parser: 0.0.43 + transitivePeerDependencies: + - ajv + + '@redocly/respect-core@2.10.0(ajv@8.17.1)': + dependencies: + '@faker-js/faker': 7.6.0 + '@noble/hashes': 1.8.0 + '@redocly/ajv': 8.11.2 + '@redocly/openapi-core': 2.10.0(ajv@8.17.1) + better-ajv-errors: 1.2.0(ajv@8.17.1) + colorette: 2.0.20 + json-pointer: 0.6.2 + jsonpath-rfc9535: 1.3.0 + openapi-sampler: 1.6.2 + outdent: 0.8.0 + transitivePeerDependencies: + - ajv + '@replit/codemirror-indentation-markers@6.5.3(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.38.6)': dependencies: '@codemirror/language': 6.11.0 @@ -19789,6 +20358,8 @@ snapshots: dependencies: '@types/node': 22.15.21 + '@types/stylis@4.2.5': {} + '@types/superagent@8.1.9': dependencies: '@types/cookiejar': 2.1.5 @@ -20716,6 +21287,15 @@ snapshots: batch@0.6.1: {} + better-ajv-errors@1.2.0(ajv@8.17.1): + dependencies: + '@babel/code-frame': 7.27.1 + '@humanwhocodes/momoa': 2.0.4 + ajv: 8.17.1 + chalk: 4.1.2 + jsonpointer: 5.0.1 + leven: 3.1.0 + better-sqlite3@12.4.1: dependencies: bindings: 1.5.0 @@ -21016,6 +21596,8 @@ snapshots: camelcase@6.3.0: {} + camelize@1.0.1: {} + caniuse-api@3.0.0: dependencies: browserslist: 4.26.2 @@ -21267,6 +21849,8 @@ snapshots: transitivePeerDependencies: - supports-color + classnames@2.5.1: {} + clean-stack@2.2.0: {} cli-cursor@3.1.0: @@ -21337,6 +21921,8 @@ snapshots: clsx@1.1.1: {} + clsx@2.1.1: {} + codemirror-lang-elixir@4.0.0: dependencies: '@codemirror/language': 6.11.0 @@ -21393,6 +21979,8 @@ snapshots: colord@2.9.3: {} + colorette@1.4.0: {} + colorette@2.0.20: {} colorjs.io@0.5.2: @@ -21535,6 +22123,8 @@ snapshots: tinyglobby: 0.2.14 webpack: 5.101.3(esbuild@0.25.11) + core-js@3.46.0: {} + core-util-is@1.0.3: {} cors@2.8.5: @@ -21628,6 +22218,8 @@ snapshots: dependencies: http-errors: 2.0.0 + css-color-keywords@1.0.0: {} + css-declaration-sorter@6.4.1(postcss@8.5.6): dependencies: postcss: 8.5.6 @@ -21695,6 +22287,12 @@ snapshots: css-shorthand-properties@1.1.2: {} + css-to-react-native@3.2.0: + dependencies: + camelize: 1.0.1 + css-color-keywords: 1.0.0 + postcss-value-parser: 4.2.0 + css-tree@1.1.3: dependencies: mdn-data: 2.0.14 @@ -21929,8 +22527,7 @@ snapshots: rrweb-cssom: 0.8.0 optional: true - csstype@3.1.3: - optional: true + csstype@3.1.3: {} custom-event@1.0.1: {} @@ -22209,6 +22806,8 @@ snapshots: decimal.js@10.6.0: optional: true + decko@1.2.0: {} + decode-named-character-reference@1.2.0: dependencies: character-entities: 2.0.2 @@ -22421,6 +23020,8 @@ snapshots: domelementtype: 2.3.0 domhandler: 5.0.3 + dotenv@16.4.7: {} + dotenv@17.2.3: {} dotignore@0.1.2: @@ -22867,6 +23468,8 @@ snapshots: es6-promise-pool@2.5.0: {} + es6-promise@3.3.1: {} + es6-promise@4.2.8: {} esbuild-loader@3.0.1(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): @@ -23380,6 +23983,10 @@ snapshots: dependencies: strnum: 1.1.2 + fast-xml-parser@4.5.3: + dependencies: + strnum: 1.1.2 + fast-xml-parser@5.2.5: dependencies: strnum: 2.1.1 @@ -23576,6 +24183,8 @@ snapshots: kapsule: 1.16.3 lodash-es: 4.17.21 + foreach@2.0.6: {} + foreground-child@3.3.1: dependencies: cross-spawn: 7.0.6 @@ -23991,6 +24600,15 @@ snapshots: handle-thing@2.0.1: {} + handlebars@4.7.8: + dependencies: + minimist: 1.2.8 + neo-async: 2.6.2 + source-map: 0.6.1 + wordwrap: 1.0.0 + optionalDependencies: + uglify-js: 3.19.3 + happy-dom@20.0.8: dependencies: '@types/node': 20.19.23 @@ -24337,6 +24955,8 @@ snapshots: - debug - supports-color + http2-client@1.3.5: {} + http2-wrapper@1.0.3: dependencies: quick-lru: 5.1.1 @@ -24845,15 +25465,15 @@ snapshots: dependencies: '@panva/asn1.js': 1.0.0 - jotai-scope@0.7.2(jotai@2.11.0(@types/react@19.1.7)(react@16.14.0))(react@16.14.0): + jotai-scope@0.7.2(jotai@2.11.0(@types/react@19.1.7)(react@19.2.0))(react@19.2.0): dependencies: - jotai: 2.11.0(@types/react@19.1.7)(react@16.14.0) - react: 16.14.0 + jotai: 2.11.0(@types/react@19.1.7)(react@19.2.0) + react: 19.2.0 - jotai@2.11.0(@types/react@19.1.7)(react@16.14.0): + jotai@2.11.0(@types/react@19.1.7)(react@19.2.0): optionalDependencies: '@types/react': 19.1.7 - react: 16.14.0 + react: 19.2.0 jpeg-js@0.4.4: {} @@ -24865,6 +25485,8 @@ snapshots: jquery@3.7.1: {} + js-levenshtein@1.1.6: {} + js-tokens@4.0.0: {} js-tokens@9.0.1: {} @@ -24955,6 +25577,16 @@ snapshots: json-parse-even-better-errors@4.0.0: {} + json-pointer@0.6.2: + dependencies: + foreach: 2.0.6 + + json-schema-to-ts@2.7.2: + dependencies: + '@babel/runtime': 7.28.4 + '@types/json-schema': 7.0.15 + ts-algebra: 1.2.2 + json-schema-to-ts@3.1.1: dependencies: '@babel/runtime': 7.28.4 @@ -24992,8 +25624,9 @@ snapshots: jsonparse@1.3.1: {} - jsonpointer@5.0.1: - optional: true + jsonpath-rfc9535@1.3.0: {} + + jsonpointer@5.0.1: {} jsplumb@2.15.6: {} @@ -25137,6 +25770,8 @@ snapshots: source-map: 0.6.1 optional: true + leven@3.1.0: {} + levn@0.4.1: dependencies: prelude-ls: 1.2.1 @@ -25379,6 +26014,8 @@ snapshots: lru-cache@7.18.3: {} + lunr@2.3.9: {} + luxon@3.6.1: {} lz-string@1.5.0: {} @@ -25538,6 +26175,8 @@ snapshots: marked@16.4.1: {} + marked@4.3.0: {} + matcher@3.0.0: dependencies: escape-string-regexp: 4.0.0 @@ -26096,6 +26735,24 @@ snapshots: pkg-types: 1.3.1 ufo: 1.6.1 + mobx-react-lite@4.1.1(mobx@6.15.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0): + dependencies: + mobx: 6.15.0 + react: 19.2.0 + use-sync-external-store: 1.6.0(react@19.2.0) + optionalDependencies: + react-dom: 19.2.0(react@19.2.0) + + mobx-react@9.2.0(mobx@6.15.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0): + dependencies: + mobx: 6.15.0 + mobx-react-lite: 4.1.1(mobx@6.15.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + react: 19.2.0 + optionalDependencies: + react-dom: 19.2.0(react@19.2.0) + + mobx@6.15.0: {} + mocha@11.7.2: dependencies: browser-stdout: 1.3.1 @@ -26279,6 +26936,10 @@ snapshots: object.getownpropertydescriptors: 2.1.8 semver: 5.7.2 + node-fetch-h2@2.3.0: + dependencies: + http2-client: 1.3.5 + node-fetch@2.7.0(encoding@0.1.13): dependencies: whatwg-url: 5.0.0 @@ -26353,6 +27014,10 @@ snapshots: css-select: 5.2.2 he: 1.2.0 + node-readfiles@0.2.0: + dependencies: + es6-promise: 3.3.1 + node-releases@2.0.19: {} node-releases@2.0.21: {} @@ -26458,6 +27123,37 @@ snapshots: nwsapi@2.2.22: optional: true + oas-kit-common@1.0.8: + dependencies: + fast-safe-stringify: 2.1.1 + + oas-linter@3.2.2: + dependencies: + '@exodus/schemasafe': 1.3.0 + should: 13.2.3 + yaml: 1.10.2 + + oas-resolver@2.5.6: + dependencies: + node-fetch-h2: 2.3.0 + oas-kit-common: 1.0.8 + reftools: 1.1.9 + yaml: 1.10.2 + yargs: 17.7.2 + + oas-schema-walker@1.1.5: {} + + oas-validator@5.0.8: + dependencies: + call-me-maybe: 1.0.2 + oas-kit-common: 1.0.8 + oas-linter: 3.2.2 + oas-resolver: 2.5.6 + oas-schema-walker: 1.1.5 + reftools: 1.1.9 + should: 13.2.3 + yaml: 1.10.2 + object-assign@4.1.1: {} object-hash@2.2.0: {} @@ -26566,6 +27262,12 @@ snapshots: ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) zod: 4.1.12 + openapi-sampler@1.6.2: + dependencies: + '@types/json-schema': 7.0.15 + fast-xml-parser: 4.5.3 + json-pointer: 0.6.2 + openapi-types@12.1.3: {} opener@1.5.2: {} @@ -26603,6 +27305,8 @@ snapshots: os-tmpdir@1.0.2: {} + outdent@0.8.0: {} + outvariant@1.4.3: optional: true @@ -26861,6 +27565,8 @@ snapshots: perfect-freehand@1.2.0: {} + perfect-scrollbar@1.5.6: {} + pica@7.1.1: dependencies: glur: 1.1.2 @@ -26920,6 +27626,8 @@ snapshots: plural-forms@0.5.5: {} + pluralize@8.0.0: {} + png-chunk-text@1.0.0: {} png-chunks-encode@1.0.0: @@ -26946,6 +27654,10 @@ snapshots: path-data-parser: 0.1.0 points-on-curve: 0.2.0 + polished@4.3.1: + dependencies: + '@babel/runtime': 7.28.4 + portfinder@1.0.36: dependencies: async: 3.2.6 @@ -27680,6 +28392,12 @@ snapshots: postcss-value-parser@4.2.0: {} + postcss@8.4.49: + dependencies: + nanoid: 5.1.5 + picocolors: 1.1.1 + source-map-js: 1.2.1 + postcss@8.5.3: dependencies: nanoid: 3.3.11 @@ -27734,6 +28452,8 @@ snapshots: ansi-styles: 5.2.0 react-is: 17.0.2 + prismjs@1.30.0: {} + proc-log@2.0.1: {} proc-log@5.0.0: {} @@ -27907,20 +28627,20 @@ snapshots: react: 16.14.0 scheduler: 0.19.1 - react-dom@19.1.0(react@16.14.0): + react-dom@19.2.0(react@19.2.0): dependencies: - react: 16.14.0 - scheduler: 0.26.0 + react: 19.2.0 + scheduler: 0.27.0 - react-i18next@16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3): + react-i18next@16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.4 html-parse-stringify: 3.0.1 i18next: 25.6.0(typescript@5.9.3) - react: 16.14.0 - use-sync-external-store: 1.6.0(react@16.14.0) + react: 19.2.0 + use-sync-external-store: 1.6.0(react@19.2.0) optionalDependencies: - react-dom: 19.1.0(react@16.14.0) + react-dom: 19.2.0(react@19.2.0) typescript: 5.9.3 react-interactive@0.8.3(react@16.14.0): @@ -27936,22 +28656,22 @@ snapshots: react-refresh@0.18.0: {} - react-remove-scroll-bar@2.3.8(@types/react@19.1.7)(react@16.14.0): + react-remove-scroll-bar@2.3.8(@types/react@19.1.7)(react@19.2.0): dependencies: - react: 16.14.0 - react-style-singleton: 2.2.3(@types/react@19.1.7)(react@16.14.0) + react: 19.2.0 + react-style-singleton: 2.2.3(@types/react@19.1.7)(react@19.2.0) tslib: 2.8.1 optionalDependencies: '@types/react': 19.1.7 - react-remove-scroll@2.6.3(@types/react@19.1.7)(react@16.14.0): + react-remove-scroll@2.6.3(@types/react@19.1.7)(react@19.2.0): dependencies: - react: 16.14.0 - react-remove-scroll-bar: 2.3.8(@types/react@19.1.7)(react@16.14.0) - react-style-singleton: 2.2.3(@types/react@19.1.7)(react@16.14.0) + react: 19.2.0 + react-remove-scroll-bar: 2.3.8(@types/react@19.1.7)(react@19.2.0) + react-style-singleton: 2.2.3(@types/react@19.1.7)(react@19.2.0) tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@19.1.7)(react@16.14.0) - use-sidecar: 1.1.3(@types/react@19.1.7)(react@16.14.0) + use-callback-ref: 1.3.3(@types/react@19.1.7)(react@19.2.0) + use-sidecar: 1.1.3(@types/react@19.1.7)(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 @@ -27976,20 +28696,28 @@ snapshots: react: 16.14.0 warning: 4.0.3 - react-style-singleton@2.2.3(@types/react@19.1.7)(react@16.14.0): + react-style-singleton@2.2.3(@types/react@19.1.7)(react@19.2.0): dependencies: get-nonce: 1.0.1 - react: 16.14.0 + react: 19.2.0 tslib: 2.8.1 optionalDependencies: '@types/react': 19.1.7 + react-tabs@6.1.0(react@19.2.0): + dependencies: + clsx: 2.1.1 + prop-types: 15.8.1 + react: 19.2.0 + react@16.14.0: dependencies: loose-envify: 1.4.0 object-assign: 4.1.1 prop-types: 15.8.1 + react@19.2.0: {} + read-binary-file-arch@1.0.6: dependencies: debug: 4.4.3(supports-color@6.0.0) @@ -28061,6 +28789,39 @@ snapshots: dependencies: resolve: 1.22.10 + redoc@2.5.1(core-js@3.46.0)(encoding@0.1.13)(mobx@6.15.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(styled-components@6.1.19(react-dom@19.2.0(react@19.2.0))(react@19.2.0)): + dependencies: + '@redocly/openapi-core': 1.34.5 + classnames: 2.5.1 + core-js: 3.46.0 + decko: 1.2.0 + dompurify: 3.2.5 + eventemitter3: 5.0.1 + json-pointer: 0.6.2 + lunr: 2.3.9 + mark.js: 8.11.1 + marked: 4.3.0 + mobx: 6.15.0 + mobx-react: 9.2.0(mobx@6.15.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + openapi-sampler: 1.6.2 + path-browserify: 1.0.1 + perfect-scrollbar: 1.5.6 + polished: 4.3.1 + prismjs: 1.30.0 + prop-types: 15.8.1 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + react-tabs: 6.1.0(react@19.2.0) + slugify: 1.4.7 + stickyfill: 1.1.1 + styled-components: 6.1.19(react-dom@19.2.0(react@19.2.0))(react@19.2.0) + swagger2openapi: 7.0.8(encoding@0.1.13) + url-template: 2.0.8 + transitivePeerDependencies: + - encoding + - react-native + - supports-color + reflect.getprototypeof@1.0.10: dependencies: call-bind: 1.0.8 @@ -28072,6 +28833,8 @@ snapshots: get-proto: 1.0.1 which-builtin-type: 1.2.1 + reftools@1.1.9: {} + regenerate-unicode-properties@8.2.0: dependencies: regenerate: 1.4.2 @@ -28592,7 +29355,7 @@ snapshots: loose-envify: 1.4.0 object-assign: 4.1.1 - scheduler@0.26.0: {} + scheduler@0.27.0: {} schema-utils@3.3.0: dependencies: @@ -28732,6 +29495,8 @@ snapshots: set-blocking@2.0.0: {} + set-cookie-parser@2.7.2: {} + set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 @@ -28760,6 +29525,8 @@ snapshots: setprototypeof@1.2.0: {} + shallowequal@1.1.0: {} + shebang-command@1.2.0: dependencies: shebang-regex: 1.0.0 @@ -28787,6 +29554,32 @@ snapshots: shimmer@1.2.1: {} + should-equal@2.0.0: + dependencies: + should-type: 1.4.0 + + should-format@3.0.3: + dependencies: + should-type: 1.4.0 + should-type-adaptors: 1.1.0 + + should-type-adaptors@1.1.0: + dependencies: + should-type: 1.4.0 + should-util: 1.0.1 + + should-type@1.4.0: {} + + should-util@1.0.1: {} + + should@13.2.3: + dependencies: + should-equal: 2.0.0 + should-format: 3.0.3 + should-type: 1.4.0 + should-type-adaptors: 1.1.0 + should-util: 1.0.1 + side-channel-list@1.0.0: dependencies: es-errors: 1.3.0 @@ -28852,6 +29645,18 @@ snapshots: transitivePeerDependencies: - supports-color + simple-websocket@9.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5): + dependencies: + debug: 4.4.3(supports-color@6.0.0) + queue-microtask: 1.2.3 + randombytes: 2.1.0 + readable-stream: 3.6.2 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@6.0.5) + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + simple-xml-to-json@1.2.3: {} sirv@3.0.1: @@ -28880,6 +29685,8 @@ snapshots: sliced@1.0.1: {} + slugify@1.4.7: {} + smart-buffer@4.2.0: {} smob@1.5.0: {} @@ -29085,6 +29892,8 @@ snapshots: std-env@3.9.0: {} + stickyfill@1.1.1: {} + stop-iteration-iterator@1.1.0: dependencies: es-errors: 1.3.0 @@ -29286,6 +30095,20 @@ snapshots: style-search@0.1.0: {} + styled-components@6.1.19(react-dom@19.2.0(react@19.2.0))(react@19.2.0): + dependencies: + '@emotion/is-prop-valid': 1.2.2 + '@emotion/unitless': 0.8.1 + '@types/stylis': 4.2.5 + css-to-react-native: 3.2.0 + csstype: 3.1.3 + postcss: 8.4.49 + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + shallowequal: 1.1.0 + stylis: 4.3.2 + tslib: 2.6.2 + stylehacks@5.1.1(postcss@8.5.6): dependencies: browserslist: 4.26.2 @@ -29422,6 +30245,8 @@ snapshots: - supports-color - typescript + stylis@4.3.2: {} + stylis@4.3.6: {} sugarss@4.0.1(postcss@8.5.3): @@ -29541,15 +30366,27 @@ snapshots: dependencies: '@scarf/scarf': 1.4.0 - swagger-ui-dist@5.30.1: - dependencies: - '@scarf/scarf': 1.4.0 - swagger-ui-express@5.0.1(express@5.1.0): dependencies: express: 5.1.0 swagger-ui-dist: 5.21.0 + swagger2openapi@7.0.8(encoding@0.1.13): + dependencies: + call-me-maybe: 1.0.2 + node-fetch: 2.7.0(encoding@0.1.13) + node-fetch-h2: 2.3.0 + node-readfiles: 0.2.0 + oas-kit-common: 1.0.8 + oas-resolver: 2.5.6 + oas-schema-walker: 1.1.5 + oas-validator: 5.0.8 + reftools: 1.1.9 + yaml: 1.10.2 + yargs: 17.7.2 + transitivePeerDependencies: + - encoding + symbol-tree@3.2.4: {} sync-child-process@1.0.2: @@ -29822,6 +30659,8 @@ snapshots: dependencies: utf8-byte-length: 1.0.5 + ts-algebra@1.2.2: {} + ts-algebra@2.0.0: {} ts-api-utils@2.1.0(typescript@5.9.3): @@ -29880,6 +30719,8 @@ snapshots: optionalDependencies: '@swc/core': 1.11.29(@swc/helpers@0.5.17) + tslib@2.6.2: {} + tslib@2.8.1: {} tsx@4.20.6: @@ -29901,9 +30742,9 @@ snapshots: dependencies: safe-buffer: 5.2.1 - tunnel-rat@0.1.2(@types/react@19.1.7)(react@16.14.0): + tunnel-rat@0.1.2(@types/react@19.1.7)(react@19.2.0): dependencies: - zustand: 4.5.6(@types/react@19.1.7)(react@16.14.0) + zustand: 4.5.6(@types/react@19.1.7)(react@19.2.0) transitivePeerDependencies: - '@types/react' - immer @@ -30009,6 +30850,9 @@ snapshots: ufo@1.6.1: {} + uglify-js@3.19.3: + optional: true + uid-safe@2.1.5: dependencies: random-bytes: 1.0.0 @@ -30145,6 +30989,8 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.1 + uri-js-replace@1.0.1: {} + uri-js@4.4.1: dependencies: punycode: 2.3.1 @@ -30156,26 +31002,28 @@ snapshots: querystringify: 2.2.0 requires-port: 1.0.0 + url-template@2.0.8: {} + urlpattern-polyfill@10.1.0: {} - use-callback-ref@1.3.3(@types/react@19.1.7)(react@16.14.0): + use-callback-ref@1.3.3(@types/react@19.1.7)(react@19.2.0): dependencies: - react: 16.14.0 + react: 19.2.0 tslib: 2.8.1 optionalDependencies: '@types/react': 19.1.7 - use-sidecar@1.1.3(@types/react@19.1.7)(react@16.14.0): + use-sidecar@1.1.3(@types/react@19.1.7)(react@19.2.0): dependencies: detect-node-es: 1.1.0 - react: 16.14.0 + react: 19.2.0 tslib: 2.8.1 optionalDependencies: '@types/react': 19.1.7 - use-sync-external-store@1.6.0(react@16.14.0): + use-sync-external-store@1.6.0(react@19.2.0): dependencies: - react: 16.14.0 + react: 19.2.0 user-agent-data-types@0.4.2: {} @@ -30756,6 +31604,8 @@ snapshots: word-wrap@1.2.5: {} + wordwrap@1.0.0: {} + workerpool@9.3.4: {} wrap-ansi@5.1.0: @@ -30851,6 +31701,8 @@ snapshots: yallist@5.0.0: {} + yaml-ast-parser@0.0.43: {} + yaml@1.10.2: {} yaml@2.0.0-1: {} @@ -30904,6 +31756,16 @@ snapshots: y18n: 5.0.8 yargs-parser: 20.2.9 + yargs@17.0.1: + dependencies: + cliui: 7.0.4 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.9 + yargs@17.7.2: dependencies: cliui: 8.0.1 @@ -30961,11 +31823,11 @@ snapshots: zod@4.1.12: {} - zustand@4.5.6(@types/react@19.1.7)(react@16.14.0): + zustand@4.5.6(@types/react@19.1.7)(react@19.2.0): dependencies: - use-sync-external-store: 1.6.0(react@16.14.0) + use-sync-external-store: 1.6.0(react@19.2.0) optionalDependencies: '@types/react': 19.1.7 - react: 16.14.0 + react: 19.2.0 zwitch@2.0.4: {} From 64428ae76179a2acfa58524a5b08aadf569809c6 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 20:16:59 +0200 Subject: [PATCH 006/136] feat(build-docs): clean before building --- apps/build-docs/src/main.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/build-docs/src/main.ts b/apps/build-docs/src/main.ts index be936037f..6ef22cf98 100644 --- a/apps/build-docs/src/main.ts +++ b/apps/build-docs/src/main.ts @@ -1,9 +1,19 @@ import { join } from "path"; import BuildContext from "./context"; import buildSwagger from "./swagger"; +import { mkdirSync, rmSync } from "fs"; const context: BuildContext = { baseDir: join(__dirname, "../../../site") }; -buildSwagger(context); +function main() { + // Clean input dir. + rmSync(context.baseDir, { recursive: true }); + mkdirSync(context.baseDir); + + // Start building. + buildSwagger(context); +} + +main(); From ecf12a40637671e98593aaba3cf4fd465e497781 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 20:22:17 +0200 Subject: [PATCH 007/136] feat(build-docs): build both docs --- apps/build-docs/src/swagger.ts | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts index 751163d15..4827b87d5 100644 --- a/apps/build-docs/src/swagger.ts +++ b/apps/build-docs/src/swagger.ts @@ -1,10 +1,28 @@ import BuildContext from "./context"; import { join } from "path"; import { execSync } from "child_process"; +import { mkdirSync } from "fs"; + +interface BuildInfo { + specPath: string; + outDir: string; +} + +const buildInfos: BuildInfo[] = [ + { + specPath: join(__dirname, "../../server/src/assets/api-openapi.yaml"), + outDir: "api/internal" + }, + { + specPath: join(__dirname, "../../server/src/assets/etapi.openapi.yaml"), + outDir: "api/etapi" + } +]; export default function buildSwagger({ baseDir }: BuildContext) { - const targetDir = join(baseDir, "api"); - const specPath = join(__dirname, "../../server/src/assets/api-openapi.yaml"); - - execSync(`pnpm redocly build-docs ${specPath} -o ${targetDir}/internal-api.html`, { stdio: "inherit" }); + for (const { specPath, outDir } of buildInfos) { + const targetDir = join(baseDir, outDir); + mkdirSync(outDir, { recursive: true }); + execSync(`pnpm redocly build-docs ${specPath} -o ${targetDir}/index.html`, { stdio: "inherit" }); + } } From 6e06d7169fd5c2690d072c41b348e81127e6610d Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 20:37:03 +0200 Subject: [PATCH 008/136] refactor(build-docs): integrate with original build-docs script --- apps/build-docs/package.json | 2 ++ .../src/build-docs.ts | 21 ++++++++---- apps/build-docs/src/context.ts | 1 + apps/build-docs/src/main.ts | 5 ++- apps/build-docs/src/swagger.ts | 10 +++--- pnpm-lock.yaml | 33 +++++++------------ 6 files changed, 40 insertions(+), 32 deletions(-) rename apps/{edit-docs => build-docs}/src/build-docs.ts (87%) diff --git a/apps/build-docs/package.json b/apps/build-docs/package.json index b30328f3b..3936d7cf3 100644 --- a/apps/build-docs/package.json +++ b/apps/build-docs/package.json @@ -12,6 +12,8 @@ "packageManager": "pnpm@10.19.0", "devDependencies": { "@redocly/cli": "2.10.0", + "archiver": "7.0.1", + "fs-extra": "11.3.2", "react": "19.2.0", "react-dom": "19.2.0" } diff --git a/apps/edit-docs/src/build-docs.ts b/apps/build-docs/src/build-docs.ts similarity index 87% rename from apps/edit-docs/src/build-docs.ts rename to apps/build-docs/src/build-docs.ts index aca569772..6beeaa852 100644 --- a/apps/edit-docs/src/build-docs.ts +++ b/apps/build-docs/src/build-docs.ts @@ -4,14 +4,15 @@ process.env.NODE_ENV = "development"; import cls from "@triliumnext/server/src/services/cls.js"; import { dirname, join, resolve } from "path"; -import fs, { copyFile } from "fs/promises"; -import fsExtra, { createWriteStream, type WriteStream } from "fs-extra"; +import * as fs from "fs/promises"; +import * as fsExtra from "fs-extra"; import archiver from "archiver"; +import { WriteStream } from "fs"; const DOCS_ROOT = "../../../docs"; const OUTPUT_DIR = "../../site"; -async function main() { +async function buildDocsInner() { const i18n = await import("@triliumnext/server/src/services/i18n.js"); await i18n.initializeTranslations(); @@ -30,7 +31,7 @@ async function main() { "export", null ); - const fileOutputStream = createWriteStream(zipFilePath); + const fileOutputStream = fsExtra.createWriteStream(zipFilePath); await exportToZip(taskContext, branch, "share", fileOutputStream); await waitForStreamToFinish(fileOutputStream); await extractZip(zipFilePath, OUTPUT_DIR); @@ -41,7 +42,7 @@ async function main() { } // Copy favicon. - await copyFile("../../apps/website/src/assets/favicon.ico", join(OUTPUT_DIR, "favicon.ico")); + await fs.copyFile("../../apps/website/src/assets/favicon.ico", join(OUTPUT_DIR, "favicon.ico")); console.log("Documentation built successfully!"); } @@ -106,4 +107,12 @@ export async function extractZip(zipFilePath: string, outputPath: string, ignore }); } -cls.init(main); +export default async function buildDocs() { + return new Promise((res, rej) => { + cls.init(() => { + buildDocsInner() + .catch(rej) + .then(res); + }); + }); +} diff --git a/apps/build-docs/src/context.ts b/apps/build-docs/src/context.ts index 07612ee74..ab2289e50 100644 --- a/apps/build-docs/src/context.ts +++ b/apps/build-docs/src/context.ts @@ -1,3 +1,4 @@ export default interface BuildContext { + gitRootDir: string; baseDir: string; } diff --git a/apps/build-docs/src/main.ts b/apps/build-docs/src/main.ts index 6ef22cf98..21bb50d61 100644 --- a/apps/build-docs/src/main.ts +++ b/apps/build-docs/src/main.ts @@ -2,17 +2,20 @@ import { join } from "path"; import BuildContext from "./context"; import buildSwagger from "./swagger"; import { mkdirSync, rmSync } from "fs"; +import buildDocs from "./build-docs"; const context: BuildContext = { + gitRootDir: join(__dirname, "../../../"), baseDir: join(__dirname, "../../../site") }; -function main() { +async function main() { // Clean input dir. rmSync(context.baseDir, { recursive: true }); mkdirSync(context.baseDir); // Start building. + await buildDocs(); buildSwagger(context); } diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts index 4827b87d5..3ab1d068b 100644 --- a/apps/build-docs/src/swagger.ts +++ b/apps/build-docs/src/swagger.ts @@ -10,19 +10,21 @@ interface BuildInfo { const buildInfos: BuildInfo[] = [ { - specPath: join(__dirname, "../../server/src/assets/api-openapi.yaml"), + // Paths are relative to Git root. + specPath: "apps/server/src/assets/api-openapi.yaml", outDir: "api/internal" }, { - specPath: join(__dirname, "../../server/src/assets/etapi.openapi.yaml"), + specPath: "apps/server/src/assets/etapi.openapi.yaml", outDir: "api/etapi" } ]; -export default function buildSwagger({ baseDir }: BuildContext) { +export default function buildSwagger({ baseDir, gitRootDir }: BuildContext) { for (const { specPath, outDir } of buildInfos) { + const absSpecPath = join(gitRootDir, specPath); const targetDir = join(baseDir, outDir); mkdirSync(outDir, { recursive: true }); - execSync(`pnpm redocly build-docs ${specPath} -o ${targetDir}/index.html`, { stdio: "inherit" }); + execSync(`pnpm redocly build-docs ${absSpecPath} -o ${targetDir}/index.html`, { stdio: "inherit" }); } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2c4b878d3..7f5295f1f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -130,6 +130,12 @@ importers: '@redocly/cli': specifier: 2.10.0 version: 2.10.0(@opentelemetry/api@1.9.0)(ajv@8.17.1)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5) + archiver: + specifier: 7.0.1 + version: 7.0.1 + fs-extra: + specifier: 11.3.2 + version: 11.3.2 react: specifier: 19.2.0 version: 19.2.0 @@ -6014,9 +6020,6 @@ packages: balanced-match@2.0.0: resolution: {integrity: sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==} - bare-events@2.5.4: - resolution: {integrity: sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==} - bare-events@2.7.0: resolution: {integrity: sha512-b3N5eTW1g7vXkw+0CXh/HazGTcO5KYuu/RCNaJbDMPI6LHDi+7qe8EmxKUVe1sUbY2KZOVZFyj62x0OEz9qyAA==} @@ -13091,9 +13094,6 @@ packages: resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} engines: {node: '>=10.0.0'} - streamx@2.22.0: - resolution: {integrity: sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==} - streamx@2.23.0: resolution: {integrity: sha512-kn+e44esVfn2Fa/O0CPFcex27fjIL6MkVae0Mm6q+E6f0hWv578YCERbv+4m02cjxvDsPKLnmxral/rR6lBMAg==} @@ -15438,6 +15438,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -16188,6 +16190,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -21231,11 +21235,7 @@ snapshots: balanced-match@2.0.0: {} - bare-events@2.5.4: - optional: true - - bare-events@2.7.0: - optional: true + bare-events@2.7.0: {} bare-fs@4.4.5: dependencies: @@ -23775,7 +23775,6 @@ snapshots: events-universal@1.0.1: dependencies: bare-events: 2.7.0 - optional: true events@3.3.0: {} @@ -29917,19 +29916,11 @@ snapshots: streamsearch@1.1.0: {} - streamx@2.22.0: - dependencies: - fast-fifo: 1.3.2 - text-decoder: 1.2.3 - optionalDependencies: - bare-events: 2.5.4 - streamx@2.23.0: dependencies: events-universal: 1.0.1 fast-fifo: 1.3.2 text-decoder: 1.2.3 - optional: true strict-event-emitter@0.5.1: optional: true @@ -30442,7 +30433,7 @@ snapshots: dependencies: b4a: 1.6.7 fast-fifo: 1.3.2 - streamx: 2.22.0 + streamx: 2.23.0 tar@6.2.1: dependencies: From 4f9f8652e2566f51a71a69f3f1afbe1882bda536 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 20:47:00 +0200 Subject: [PATCH 009/136] fix(build-docs): links to API reference --- apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json | 2 +- docs/User Guide/!!!meta.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 795bb61e1..38a19a0f3 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/etapi/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Frontend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/classes/Frontend_Script_API.FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Backend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Frontend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/classes/Frontend_Script_API.FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Backend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index cfc3f1ef4..f6a5669cb 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -12594,7 +12594,7 @@ { "type": "label", "name": "webViewSrc", - "value": "/etapi/docs", + "value": "/api/etapi/", "isInheritable": false, "position": 10 }, @@ -13612,7 +13612,7 @@ { "type": "label", "name": "webViewSrc", - "value": "/api/docs", + "value": "/api/internal/", "isInheritable": false, "position": 10 }, From 80f1707d8be208d3b1533c0a79e0bd9c97ccf198 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 20:52:28 +0200 Subject: [PATCH 010/136] chore(build-docs): integrate with docs:build --- apps/build-docs/package.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/build-docs/package.json b/apps/build-docs/package.json index 3936d7cf3..cdbf9a190 100644 --- a/apps/build-docs/package.json +++ b/apps/build-docs/package.json @@ -2,13 +2,13 @@ "name": "build-docs", "version": "1.0.0", "description": "", - "main": "index.js", + "main": "src/main.ts", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" + "start": "tsx ." }, "keywords": [], - "author": "", - "license": "ISC", + "author": "Elian Doran ", + "license": "AGPL-3.0-only", "packageManager": "pnpm@10.19.0", "devDependencies": { "@redocly/cli": "2.10.0", diff --git a/package.json b/package.json index bc9283a4b..69ad523ce 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "chore:generate-openapi": "tsx ./scripts/generate-openapi.ts", "chore:update-build-info": "tsx ./scripts/update-build-info.ts", "chore:update-version": "tsx ./scripts/update-version.ts", - "docs:build": "pnpm run --filter share-theme build && cd ./apps/edit-docs && tsx ./src/build-docs.ts", + "docs:build": "pnpm run --filter share-theme build && pnpm run --filter build-docs start", "edit-docs:edit-docs": "pnpm run --filter edit-docs edit-docs", "edit-docs:edit-demo": "pnpm run --filter edit-docs edit-demo", "test:all": "pnpm test:parallel && pnpm test:sequential", From 953b376ce33cb0d184225545bb3f7dfc9584a30a Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 20:58:32 +0200 Subject: [PATCH 011/136] refactor(build-docs): trigger build of share theme internally --- apps/build-docs/src/build-docs.ts | 13 +++++++++++-- apps/build-docs/src/main.ts | 2 +- package.json | 2 +- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/apps/build-docs/src/build-docs.ts b/apps/build-docs/src/build-docs.ts index 6beeaa852..39a3dd30b 100644 --- a/apps/build-docs/src/build-docs.ts +++ b/apps/build-docs/src/build-docs.ts @@ -8,6 +8,8 @@ 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 BuildContext from "./context.js"; const DOCS_ROOT = "../../../docs"; const OUTPUT_DIR = "../../site"; @@ -107,8 +109,15 @@ export async function extractZip(zipFilePath: string, outputPath: string, ignore }); } -export default async function buildDocs() { - return new Promise((res, rej) => { +export default async function buildDocs({ gitRootDir }: BuildContext) { + // Build the share theme. + execSync(`pnpm run --filter share-theme build`, { + stdio: "inherit", + cwd: gitRootDir + }); + + // Trigger the actual build. + await new Promise((res, rej) => { cls.init(() => { buildDocsInner() .catch(rej) diff --git a/apps/build-docs/src/main.ts b/apps/build-docs/src/main.ts index 21bb50d61..8d4023328 100644 --- a/apps/build-docs/src/main.ts +++ b/apps/build-docs/src/main.ts @@ -15,7 +15,7 @@ async function main() { mkdirSync(context.baseDir); // Start building. - await buildDocs(); + await buildDocs(context); buildSwagger(context); } diff --git a/package.json b/package.json index 69ad523ce..cfda2dc8e 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "chore:generate-openapi": "tsx ./scripts/generate-openapi.ts", "chore:update-build-info": "tsx ./scripts/update-build-info.ts", "chore:update-version": "tsx ./scripts/update-version.ts", - "docs:build": "pnpm run --filter share-theme build && pnpm run --filter build-docs start", + "docs:build": "pnpm run --filter build-docs start", "edit-docs:edit-docs": "pnpm run --filter edit-docs edit-docs", "edit-docs:edit-demo": "pnpm run --filter edit-docs edit-demo", "test:all": "pnpm test:parallel && pnpm test:sequential", From d62aecc551bde433e52464dd0f88eb454cd73c92 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 21:15:34 +0200 Subject: [PATCH 012/136] fix(build-docs): crash in clean environment --- apps/build-docs/src/main.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/build-docs/src/main.ts b/apps/build-docs/src/main.ts index 8d4023328..8d6f213c7 100644 --- a/apps/build-docs/src/main.ts +++ b/apps/build-docs/src/main.ts @@ -1,7 +1,7 @@ import { join } from "path"; import BuildContext from "./context"; import buildSwagger from "./swagger"; -import { mkdirSync, rmSync } from "fs"; +import { existsSync, mkdirSync, rmSync } from "fs"; import buildDocs from "./build-docs"; const context: BuildContext = { @@ -11,7 +11,9 @@ const context: BuildContext = { async function main() { // Clean input dir. - rmSync(context.baseDir, { recursive: true }); + if (existsSync(context.baseDir)) { + rmSync(context.baseDir, { recursive: true }); + } mkdirSync(context.baseDir); // Start building. From 6322ca11c9cf3d370e69e4bd1066debe83772aea Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 21:28:31 +0200 Subject: [PATCH 013/136] feat(share): improve webview layout --- packages/share-theme/src/styles/content.css | 30 +++++++++++++-------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/packages/share-theme/src/styles/content.css b/packages/share-theme/src/styles/content.css index 07d691cb4..0749e7d09 100644 --- a/packages/share-theme/src/styles/content.css +++ b/packages/share-theme/src/styles/content.css @@ -54,17 +54,25 @@ body:not(.math-loaded) .math-tex { visibility: hidden; } -body.type-webView #main { - max-width: unset; -} +body.type-webView { + #main { + max-width: unset; + padding: 0; + } -body.type-webView #content { - display: flex; - flex-direction: column; - height: 100%; -} + #content { + display: flex; + flex-direction: column; + height: 100%; -iframe.webview { - width: 100%; - flex-grow: 1; + h1 { + display: none; + } + + iframe.webview { + width: 100%; + flex-grow: 1; + border: 0; + } + } } \ No newline at end of file From 617703899f94cb75aab4b687333f85d65d164ee2 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 21:35:18 +0200 Subject: [PATCH 014/136] chore(build-docs): relocate to /rest-api --- apps/build-docs/src/swagger.ts | 6 ++++-- docs/User Guide/!!!meta.json | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts index 3ab1d068b..cf0622de0 100644 --- a/apps/build-docs/src/swagger.ts +++ b/apps/build-docs/src/swagger.ts @@ -8,15 +8,17 @@ interface BuildInfo { outDir: string; } +const DIR_PREFIX = "rest-api" + const buildInfos: BuildInfo[] = [ { // Paths are relative to Git root. specPath: "apps/server/src/assets/api-openapi.yaml", - outDir: "api/internal" + outDir: `${DIR_PREFIX}/internal` }, { specPath: "apps/server/src/assets/etapi.openapi.yaml", - outDir: "api/etapi" + outDir: `${DIR_PREFIX}/etapi` } ]; diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index f6a5669cb..9393a2220 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -12594,7 +12594,7 @@ { "type": "label", "name": "webViewSrc", - "value": "/api/etapi/", + "value": "/rest-api/etapi/", "isInheritable": false, "position": 10 }, @@ -13612,7 +13612,7 @@ { "type": "label", "name": "webViewSrc", - "value": "/api/internal/", + "value": "/rest-api/internal/", "isInheritable": false, "position": 10 }, From 604f2abf5a246892f60d5da285028a460a2f5803 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 21:47:07 +0200 Subject: [PATCH 015/136] chore(build-docs): fix wrong mkdir --- apps/build-docs/src/swagger.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts index cf0622de0..7261d4171 100644 --- a/apps/build-docs/src/swagger.ts +++ b/apps/build-docs/src/swagger.ts @@ -26,7 +26,7 @@ export default function buildSwagger({ baseDir, gitRootDir }: BuildContext) { for (const { specPath, outDir } of buildInfos) { const absSpecPath = join(gitRootDir, specPath); const targetDir = join(baseDir, outDir); - mkdirSync(outDir, { recursive: true }); + mkdirSync(targetDir, { recursive: true }); execSync(`pnpm redocly build-docs ${absSpecPath} -o ${targetDir}/index.html`, { stdio: "inherit" }); } } From c6738ac52f535d5342602fc68e3fe71dada5e4a7 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 22:42:27 +0200 Subject: [PATCH 016/136] feat(build-docs): generate script API --- _regroup/package.json | 4 +- _regroup/typedoc.json | 15 --- apps/build-docs/package.json | 4 +- .../src/backend_script_entrypoint.ts | 36 ++++++ .../src/frontend_script_entrypoint.ts | 28 +++++ apps/build-docs/src/main.ts | 2 + apps/build-docs/src/script-api.ts | 9 ++ apps/build-docs/tsconfig.app.json | 36 ++++++ apps/build-docs/tsconfig.json | 15 +++ apps/build-docs/typedoc.json | 15 +++ .../services/frontend_script_entrypoint.ts | 28 ----- .../src/services/backend_script_entrypoint.ts | 37 ------ pnpm-lock.yaml | 117 ++++++++++++++++++ 13 files changed, 262 insertions(+), 84 deletions(-) delete mode 100644 _regroup/typedoc.json create mode 100644 apps/build-docs/src/backend_script_entrypoint.ts create mode 100644 apps/build-docs/src/frontend_script_entrypoint.ts create mode 100644 apps/build-docs/src/script-api.ts create mode 100644 apps/build-docs/tsconfig.app.json create mode 100644 apps/build-docs/tsconfig.json create mode 100644 apps/build-docs/typedoc.json delete mode 100644 apps/client/src/services/frontend_script_entrypoint.ts delete mode 100644 apps/server/src/services/backend_script_entrypoint.ts diff --git a/_regroup/package.json b/_regroup/package.json index 0b2a759a9..45a9db595 100644 --- a/_regroup/package.json +++ b/_regroup/package.json @@ -48,9 +48,7 @@ "lorem-ipsum": "2.0.8", "rcedit": "4.0.1", "rimraf": "6.0.1", - "tslib": "2.8.1", - "typedoc": "0.28.14", - "typedoc-plugin-missing-exports": "4.1.2" + "tslib": "2.8.1" }, "optionalDependencies": { "appdmg": "0.6.6" diff --git a/_regroup/typedoc.json b/_regroup/typedoc.json deleted file mode 100644 index 30771621c..000000000 --- a/_regroup/typedoc.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "entryPoints": [ - "src/services/backend_script_entrypoint.ts", - "src/public/app/services/frontend_script_entrypoint.ts" - ], - "plugin": [ - "typedoc-plugin-missing-exports" - ], - "outputs": [ - { - "name": "html", - "path": "./docs/Script API" - } - ] -} diff --git a/apps/build-docs/package.json b/apps/build-docs/package.json index cdbf9a190..0a19e8072 100644 --- a/apps/build-docs/package.json +++ b/apps/build-docs/package.json @@ -15,6 +15,8 @@ "archiver": "7.0.1", "fs-extra": "11.3.2", "react": "19.2.0", - "react-dom": "19.2.0" + "react-dom": "19.2.0", + "typedoc": "0.28.14", + "typedoc-plugin-missing-exports": "4.1.2" } } diff --git a/apps/build-docs/src/backend_script_entrypoint.ts b/apps/build-docs/src/backend_script_entrypoint.ts new file mode 100644 index 000000000..145b5b13f --- /dev/null +++ b/apps/build-docs/src/backend_script_entrypoint.ts @@ -0,0 +1,36 @@ +/** + * The backend script API is accessible to code notes with the "JS (backend)" language. + * + * The entire API is exposed as a single global: {@link api} + * + * @module Backend Script API + */ + +/** + * This file creates the entrypoint for TypeDoc that simulates the context from within a + * script note on the server side. + * + * 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 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"; +export type { BNote }; +export type { default as BOption } from "../../server/src/becca/entities/boption.js"; +export type { default as BRecentNote } from "../../server/src/becca/entities/brecent_note.js"; +export type { default as BRevision } from "../../server/src/becca/entities/brevision.js"; + +import BNote from "../../server/src/becca/entities/bnote.js"; +import BackendScriptApi, { type Api } from "../../server/src/services/backend_script_api.js"; + +export type { Api }; + +const fakeNote = new BNote(); + +/** + * The `code` api global variable allows access to the backend script API, which is documented in {@link Api}. + */ +export const api: Api = new BackendScriptApi(fakeNote, {}); diff --git a/apps/build-docs/src/frontend_script_entrypoint.ts b/apps/build-docs/src/frontend_script_entrypoint.ts new file mode 100644 index 000000000..768774eca --- /dev/null +++ b/apps/build-docs/src/frontend_script_entrypoint.ts @@ -0,0 +1,28 @@ +/** + * The front script API is accessible to code notes with the "JS (frontend)" language. + * + * The entire API is exposed as a single global: {@link api} + * + * @module Frontend Script API + */ + +/** + * This file creates the entrypoint for TypeDoc that simulates the context from within a + * script note. + * + * 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 RightPanelWidget } from "../../client/src/widgets/right_panel_widget.js"; + +import FrontendScriptApi, { type Api } from "../../client/src/services/frontend_script_api.js"; + +//@ts-expect-error +export const api: Api = new FrontendScriptApi(); diff --git a/apps/build-docs/src/main.ts b/apps/build-docs/src/main.ts index 8d6f213c7..8e6804fe5 100644 --- a/apps/build-docs/src/main.ts +++ b/apps/build-docs/src/main.ts @@ -3,6 +3,7 @@ import BuildContext from "./context"; import buildSwagger from "./swagger"; import { existsSync, mkdirSync, rmSync } from "fs"; import buildDocs from "./build-docs"; +import buildScriptApi from "./script-api"; const context: BuildContext = { gitRootDir: join(__dirname, "../../../"), @@ -19,6 +20,7 @@ async function main() { // Start building. await buildDocs(context); buildSwagger(context); + buildScriptApi(context); } main(); diff --git a/apps/build-docs/src/script-api.ts b/apps/build-docs/src/script-api.ts new file mode 100644 index 000000000..65ef449d9 --- /dev/null +++ b/apps/build-docs/src/script-api.ts @@ -0,0 +1,9 @@ +import { execSync } from "child_process"; +import BuildContext from "./context"; + +export default function buildScriptApi({ }: BuildContext) { + execSync(`pnpm typedoc`, { + stdio: "inherit" + // * Output dir is set in typedoc.json. + }); +} diff --git a/apps/build-docs/tsconfig.app.json b/apps/build-docs/tsconfig.app.json new file mode 100644 index 000000000..b9e17115a --- /dev/null +++ b/apps/build-docs/tsconfig.app.json @@ -0,0 +1,36 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "module": "ESNext", + "moduleResolution": "bundler", + "target": "ES2020", + "outDir": "dist", + "strict": false, + "types": [ + "node", + "express" + ], + "rootDir": "src", + "tsBuildInfoFile": "dist/tsconfig.app.tsbuildinfo" + }, + "include": [ + "src/**/*.ts", + "../server/src/*.d.ts" + ], + "exclude": [ + "eslint.config.js", + "eslint.config.cjs", + "eslint.config.mjs" + ], + "references": [ + { + "path": "../server/tsconfig.app.json" + }, + { + "path": "../desktop/tsconfig.app.json" + }, + { + "path": "../client/tsconfig.app.json" + } + ] +} diff --git a/apps/build-docs/tsconfig.json b/apps/build-docs/tsconfig.json new file mode 100644 index 000000000..858921cfb --- /dev/null +++ b/apps/build-docs/tsconfig.json @@ -0,0 +1,15 @@ +{ + "extends": "../../tsconfig.base.json", + "include": [], + "references": [ + { + "path": "../server" + }, + { + "path": "../client" + }, + { + "path": "./tsconfig.app.json" + } + ] +} diff --git a/apps/build-docs/typedoc.json b/apps/build-docs/typedoc.json new file mode 100644 index 000000000..2e8751028 --- /dev/null +++ b/apps/build-docs/typedoc.json @@ -0,0 +1,15 @@ +{ + "entryPoints": [ + "src/backend_script_entrypoint.ts", + "src/frontend_script_entrypoint.ts" + ], + "plugin": [ + "typedoc-plugin-missing-exports" + ], + "outputs": [ + { + "name": "html", + "path": "../../site/script-api" + } + ] +} diff --git a/apps/client/src/services/frontend_script_entrypoint.ts b/apps/client/src/services/frontend_script_entrypoint.ts deleted file mode 100644 index 75a27d204..000000000 --- a/apps/client/src/services/frontend_script_entrypoint.ts +++ /dev/null @@ -1,28 +0,0 @@ -/** - * The front script API is accessible to code notes with the "JS (frontend)" language. - * - * The entire API is exposed as a single global: {@link api} - * - * @module Frontend Script API - */ - -/** - * This file creates the entrypoint for TypeDoc that simulates the context from within a - * script note. - * - * Make sure to keep in line with frontend's `script_context.ts`. - */ - -export type { default as BasicWidget } from "../widgets/basic_widget.js"; -export type { default as FAttachment } from "../entities/fattachment.js"; -export type { default as FAttribute } from "../entities/fattribute.js"; -export type { default as FBranch } from "../entities/fbranch.js"; -export type { default as FNote } from "../entities/fnote.js"; -export type { Api } from "./frontend_script_api.js"; -export type { default as NoteContextAwareWidget } from "../widgets/note_context_aware_widget.js"; -export type { default as RightPanelWidget } from "../widgets/right_panel_widget.js"; - -import FrontendScriptApi, { type Api } from "./frontend_script_api.js"; - -//@ts-expect-error -export const api: Api = new FrontendScriptApi(); diff --git a/apps/server/src/services/backend_script_entrypoint.ts b/apps/server/src/services/backend_script_entrypoint.ts deleted file mode 100644 index 8f10b50c5..000000000 --- a/apps/server/src/services/backend_script_entrypoint.ts +++ /dev/null @@ -1,37 +0,0 @@ -/** - * The backend script API is accessible to code notes with the "JS (backend)" language. - * - * The entire API is exposed as a single global: {@link api} - * - * @module Backend Script API - */ - -/** - * This file creates the entrypoint for TypeDoc that simulates the context from within a - * script note on the server side. - * - * Make sure to keep in line with backend's `script_context.ts`. - */ - -export type { default as AbstractBeccaEntity } from "../becca/entities/abstract_becca_entity.js"; -export type { default as BAttachment } from "../becca/entities/battachment.js"; -export type { default as BAttribute } from "../becca/entities/battribute.js"; -export type { default as BBranch } from "../becca/entities/bbranch.js"; -export type { default as BEtapiToken } from "../becca/entities/betapi_token.js"; -export type { BNote }; -export type { default as BOption } from "../becca/entities/boption.js"; -export type { default as BRecentNote } from "../becca/entities/brecent_note.js"; -export type { default as BRevision } from "../becca/entities/brevision.js"; - -import BNote from "../becca/entities/bnote.js"; -import type { Api } from "./backend_script_api.js"; -import BackendScriptApi from "./backend_script_api.js"; - -export type { Api }; - -const fakeNote = new BNote(); - -/** - * The `code` api global variable allows access to the backend script API, which is documented in {@link Api}. - */ -export const api: Api = new BackendScriptApi(fakeNote, {}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7f5295f1f..a5799c032 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -142,6 +142,12 @@ importers: react-dom: 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) + typedoc-plugin-missing-exports: + specifier: 4.1.2 + version: 4.1.2(typedoc@0.28.14(typescript@5.9.3)) apps/client: dependencies: @@ -2971,6 +2977,9 @@ 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==} + '@hapi/hoek@9.3.0': resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} @@ -4502,6 +4511,21 @@ 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/langs@3.14.0': + resolution: {integrity: sha512-DIB2EQY7yPX1/ZH7lMcwrK5pl+ZkP/xoSpUzg9YC8R+evRCCiSQ7yyrvEyBsMnfZq4eBzLzBlugMyTAf13+pzg==} + + '@shikijs/themes@3.14.0': + resolution: {integrity: sha512-fAo/OnfWckNmv4uBoUu6dSlkcBc+SA1xzj5oUSaz5z3KqHtEbUypg/9xxgJARtM6+7RVm0Q6Xnty41xA1ma1IA==} + + '@shikijs/types@3.14.0': + resolution: {integrity: sha512-bQGgC6vrY8U/9ObG1Z/vTro+uclbjjD/uG58RvfxKZVD5p9Yc1ka3tVyEFy7BNJLzxuWyHH5NWynP9zZZS59eQ==} + + '@shikijs/vscode-textmate@10.0.2': + resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} + '@sideway/address@4.1.5': resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} @@ -9655,6 +9679,9 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + linkify-it@5.0.0: + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + lint-staged@16.2.6: resolution: {integrity: sha512-s1gphtDbV4bmW1eylXpVMk2u7is7YsrLl8hzrtvC70h4ByhcMLZFY01Fx05ZUDNuv1H8HO4E+e2zgejV1jVwNw==} engines: {node: '>=20.17'} @@ -9890,6 +9917,10 @@ packages: mark.js@8.11.1: resolution: {integrity: sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==} + markdown-it@14.1.0: + resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} + hasBin: true + markdown-table@3.0.4: resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} @@ -9968,6 +9999,9 @@ packages: mdn-data@2.12.2: resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==} + mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + media-typer@0.3.0: resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} @@ -11974,6 +12008,10 @@ packages: pump@3.0.3: resolution: {integrity: sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==} + punycode.js@2.3.1: + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} + punycode@1.4.1: resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} @@ -13743,6 +13781,18 @@ packages: typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} + typedoc-plugin-missing-exports@4.1.2: + resolution: {integrity: sha512-WNoeWX9+8X3E3riuYPduilUTFefl1K+Z+5bmYqNeH5qcWjtnTRMbRzGdEQ4XXn1WEO4WCIlU0vf46Ca2y/mspg==} + peerDependencies: + typedoc: ^0.28.1 + + typedoc@0.28.14: + resolution: {integrity: sha512-ftJYPvpVfQvFzpkoSfHLkJybdA/geDJ8BGQt/ZnkkhnBYoYW6lBgPQXu6vqLxO4X75dA55hX8Af847H5KXlEFA==} + engines: {node: '>= 18', pnpm: '>= 10'} + hasBin: true + peerDependencies: + typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x + typescript-eslint@8.46.2: resolution: {integrity: sha512-vbw8bOmiuYNdzzV3lsiWv6sRwjyuKJMQqWulBOU7M0RrxedXledX8G8kBbQeiOYDnTfiXz0Y4081E1QMNB6iQg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -13774,6 +13824,9 @@ packages: resolution: {integrity: sha512-O3oYyCMPYgNNHuO7Jjk3uacJWZF8loBgwrfd/5LE/HyZ3lUIOdniQ7DNXJcIgZbwioZxk0fLfI4EVnetdiX5jg==} hasBin: true + uc.micro@2.1.0: + resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} + ufo@1.6.1: resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} @@ -15501,6 +15554,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -15665,6 +15720,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-classic@47.1.0': dependencies: @@ -17612,6 +17669,14 @@ snapshots: '@gar/promisify@1.1.3': {} + '@gerrit0/mini-shiki@3.14.0': + dependencies: + '@shikijs/engine-oniguruma': 3.14.0 + '@shikijs/langs': 3.14.0 + '@shikijs/themes': 3.14.0 + '@shikijs/types': 3.14.0 + '@shikijs/vscode-textmate': 10.0.2 + '@hapi/hoek@9.3.0': {} '@hapi/topo@5.1.0': @@ -19321,6 +19386,26 @@ snapshots: domhandler: 5.0.3 selderee: 0.11.0 + '@shikijs/engine-oniguruma@3.14.0': + dependencies: + '@shikijs/types': 3.14.0 + '@shikijs/vscode-textmate': 10.0.2 + + '@shikijs/langs@3.14.0': + dependencies: + '@shikijs/types': 3.14.0 + + '@shikijs/themes@3.14.0': + dependencies: + '@shikijs/types': 3.14.0 + + '@shikijs/types@3.14.0': + dependencies: + '@shikijs/vscode-textmate': 10.0.2 + '@types/hast': 3.0.4 + + '@shikijs/vscode-textmate@10.0.2': {} + '@sideway/address@4.1.5': dependencies: '@hapi/hoek': 9.3.0 @@ -25839,6 +25924,10 @@ snapshots: lines-and-columns@1.2.4: {} + linkify-it@5.0.0: + dependencies: + uc.micro: 2.1.0 + lint-staged@16.2.6: dependencies: commander: 14.0.1 @@ -26170,6 +26259,15 @@ snapshots: mark.js@8.11.1: {} + markdown-it@14.1.0: + dependencies: + argparse: 2.0.1 + entities: 4.5.0 + linkify-it: 5.0.0 + mdurl: 2.0.0 + punycode.js: 2.3.1 + uc.micro: 2.1.0 + markdown-table@3.0.4: {} marked@16.4.1: {} @@ -26323,6 +26421,8 @@ snapshots: mdn-data@2.12.2: {} + mdurl@2.0.0: {} + media-typer@0.3.0: {} media-typer@1.1.0: {} @@ -28527,6 +28627,8 @@ snapshots: end-of-stream: 1.4.5 once: 1.4.0 + punycode.js@2.3.1: {} + punycode@1.4.1: {} punycode@2.3.1: {} @@ -30818,6 +30920,19 @@ snapshots: typedarray@0.0.6: {} + typedoc-plugin-missing-exports@4.1.2(typedoc@0.28.14(typescript@5.9.3)): + dependencies: + typedoc: 0.28.14(typescript@5.9.3) + + typedoc@0.28.14(typescript@5.9.3): + dependencies: + '@gerrit0/mini-shiki': 3.14.0 + lunr: 2.3.9 + markdown-it: 14.1.0 + minimatch: 9.0.5 + typescript: 5.9.3 + yaml: 2.8.1 + typescript-eslint@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3): dependencies: '@typescript-eslint/eslint-plugin': 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) @@ -30839,6 +30954,8 @@ snapshots: ua-parser-js@0.7.41: {} + uc.micro@2.1.0: {} + ufo@1.6.1: {} uglify-js@3.19.3: From 2c1cebfbc3b0ac4d303336102f1ae15e82ed826e Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 22:51:33 +0200 Subject: [PATCH 017/136] feat(build-docs): split documentation in two --- apps/build-docs/src/script-api.ts | 10 ++++++---- apps/build-docs/typedoc.backend.json | 15 +++++++++++++++ .../{typedoc.json => typedoc.frontend.json} | 4 ++-- 3 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 apps/build-docs/typedoc.backend.json rename apps/build-docs/{typedoc.json => typedoc.frontend.json} (65%) diff --git a/apps/build-docs/src/script-api.ts b/apps/build-docs/src/script-api.ts index 65ef449d9..efeb46316 100644 --- a/apps/build-docs/src/script-api.ts +++ b/apps/build-docs/src/script-api.ts @@ -2,8 +2,10 @@ import { execSync } from "child_process"; import BuildContext from "./context"; export default function buildScriptApi({ }: BuildContext) { - execSync(`pnpm typedoc`, { - stdio: "inherit" - // * Output dir is set in typedoc.json. - }); + for (const config of [ "backend", "frontend" ]) { + execSync(`pnpm typedoc --options typedoc.${config}.json`, { + stdio: "inherit" + // * Output dir is set in typedoc.json. + }); + } } diff --git a/apps/build-docs/typedoc.backend.json b/apps/build-docs/typedoc.backend.json new file mode 100644 index 000000000..c9ae10180 --- /dev/null +++ b/apps/build-docs/typedoc.backend.json @@ -0,0 +1,15 @@ +{ + "$schema": "https://typedoc.org/schema.json", + "entryPoints": [ + "src/backend_script_entrypoint.ts" + ], + "plugin": [ + "typedoc-plugin-missing-exports" + ], + "outputs": [ + { + "name": "html", + "path": "../../site/script-api/frontend" + } + ] +} diff --git a/apps/build-docs/typedoc.json b/apps/build-docs/typedoc.frontend.json similarity index 65% rename from apps/build-docs/typedoc.json rename to apps/build-docs/typedoc.frontend.json index 2e8751028..6df716048 100644 --- a/apps/build-docs/typedoc.json +++ b/apps/build-docs/typedoc.frontend.json @@ -1,6 +1,6 @@ { + "$schema": "https://typedoc.org/schema.json", "entryPoints": [ - "src/backend_script_entrypoint.ts", "src/frontend_script_entrypoint.ts" ], "plugin": [ @@ -9,7 +9,7 @@ "outputs": [ { "name": "html", - "path": "../../site/script-api" + "path": "../../site/script-api/backend" } ] } From d9a349a5312c59a5e541361e067bc77c92886ef6 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 22:54:42 +0200 Subject: [PATCH 018/136] refactor(build-docs): define output for typedoc at script level --- apps/build-docs/src/script-api.ts | 7 ++++--- apps/build-docs/typedoc.backend.json | 6 ------ apps/build-docs/typedoc.frontend.json | 6 ------ 3 files changed, 4 insertions(+), 15 deletions(-) diff --git a/apps/build-docs/src/script-api.ts b/apps/build-docs/src/script-api.ts index efeb46316..2d06f7a28 100644 --- a/apps/build-docs/src/script-api.ts +++ b/apps/build-docs/src/script-api.ts @@ -1,11 +1,12 @@ import { execSync } from "child_process"; import BuildContext from "./context"; +import { join } from "path"; -export default function buildScriptApi({ }: BuildContext) { +export default function buildScriptApi({ baseDir }: BuildContext) { for (const config of [ "backend", "frontend" ]) { - execSync(`pnpm typedoc --options typedoc.${config}.json`, { + const outDir = join(baseDir, "script-api", config); + execSync(`pnpm typedoc --options typedoc.${config}.json --html "${outDir}"`, { stdio: "inherit" - // * Output dir is set in typedoc.json. }); } } diff --git a/apps/build-docs/typedoc.backend.json b/apps/build-docs/typedoc.backend.json index c9ae10180..2cbc50390 100644 --- a/apps/build-docs/typedoc.backend.json +++ b/apps/build-docs/typedoc.backend.json @@ -5,11 +5,5 @@ ], "plugin": [ "typedoc-plugin-missing-exports" - ], - "outputs": [ - { - "name": "html", - "path": "../../site/script-api/frontend" - } ] } diff --git a/apps/build-docs/typedoc.frontend.json b/apps/build-docs/typedoc.frontend.json index 6df716048..1f873eea6 100644 --- a/apps/build-docs/typedoc.frontend.json +++ b/apps/build-docs/typedoc.frontend.json @@ -5,11 +5,5 @@ ], "plugin": [ "typedoc-plugin-missing-exports" - ], - "outputs": [ - { - "name": "html", - "path": "../../site/script-api/backend" - } ] } From b5e2187c0dece219a5f9231aa0d889bff79f22f2 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 23:00:14 +0200 Subject: [PATCH 019/136] chore(build-docs): update meta --- docs/User Guide/!!!meta.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index 9393a2220..e3c508d35 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -14968,7 +14968,7 @@ { "type": "label", "name": "webViewSrc", - "value": "https://triliumnext.github.io/Notes/Script%20API/interfaces/Frontend_Script_API.Api.html", + "value": "/script-api/frontend", "isInheritable": false, "position": 10 }, @@ -15039,7 +15039,7 @@ { "type": "label", "name": "webViewSrc", - "value": "https://triliumnext.github.io/Notes/Script%20API/interfaces/Backend_Script_API.Api.html", + "value": "/script-api/backend", "isInheritable": false, "position": 10 }, From 6a2b9b748fabbebe9e06f74e9b48eb284c005a5b Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 23:03:14 +0200 Subject: [PATCH 020/136] chore(build-docs): add project names to typedoc --- apps/build-docs/typedoc.backend.json | 1 + apps/build-docs/typedoc.frontend.json | 1 + 2 files changed, 2 insertions(+) diff --git a/apps/build-docs/typedoc.backend.json b/apps/build-docs/typedoc.backend.json index 2cbc50390..1781774c6 100644 --- a/apps/build-docs/typedoc.backend.json +++ b/apps/build-docs/typedoc.backend.json @@ -1,5 +1,6 @@ { "$schema": "https://typedoc.org/schema.json", + "name": "Trilium Backend API", "entryPoints": [ "src/backend_script_entrypoint.ts" ], diff --git a/apps/build-docs/typedoc.frontend.json b/apps/build-docs/typedoc.frontend.json index 1f873eea6..f07d20dc7 100644 --- a/apps/build-docs/typedoc.frontend.json +++ b/apps/build-docs/typedoc.frontend.json @@ -1,5 +1,6 @@ { "$schema": "https://typedoc.org/schema.json", + "name": "Trilium Frontend API", "entryPoints": [ "src/frontend_script_entrypoint.ts" ], From d30fc09e73821b5e56d13704f72195d3ee40fcd0 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 23:13:35 +0200 Subject: [PATCH 021/136] chore(build-docs): fix link to FNote --- apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json | 2 +- docs/User Guide/!!!meta.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 38a19a0f3..7228ad0f6 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Frontend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/classes/Frontend_Script_API.FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Backend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index e3c508d35..c7f357caa 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -15003,7 +15003,7 @@ { "type": "label", "name": "webViewSrc", - "value": "https://triliumnext.github.io/Notes/Script%20API/classes/Frontend_Script_API.FNote.html", + "value": "/script-api/frontend/interfaces/FNote.html", "isInheritable": false, "position": 10 }, From 15e240ac332b38447c3101b430c367cc8af47f69 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 23:37:17 +0200 Subject: [PATCH 022/136] refactor(build-docs): remove old Swagger integration --- apps/server/package.json | 2 -- apps/server/src/routes/api_docs.ts | 33 -------------------- apps/server/src/routes/routes.ts | 4 --- packages/share-theme/package.json | 1 - pnpm-lock.yaml | 49 ------------------------------ 5 files changed, 89 deletions(-) delete mode 100644 apps/server/src/routes/api_docs.ts diff --git a/apps/server/package.json b/apps/server/package.json index ed536368d..fa372d70e 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -61,7 +61,6 @@ "@types/serve-static": "2.2.0", "@types/stream-throttle": "0.1.4", "@types/supertest": "6.0.3", - "@types/swagger-ui-express": "4.1.8", "@types/tmp": "0.2.6", "@types/turndown": "5.0.6", "@types/ws": "8.18.1", @@ -123,7 +122,6 @@ "striptags": "3.2.0", "supertest": "7.1.4", "swagger-jsdoc": "6.2.8", - "swagger-ui-express": "5.0.1", "time2fa": "1.4.2", "tmp": "0.2.5", "turndown": "7.2.2", diff --git a/apps/server/src/routes/api_docs.ts b/apps/server/src/routes/api_docs.ts deleted file mode 100644 index df39f3d61..000000000 --- a/apps/server/src/routes/api_docs.ts +++ /dev/null @@ -1,33 +0,0 @@ -import type { Application } from "express"; -import swaggerUi from "swagger-ui-express"; -import { join } from "path"; -import yaml from "js-yaml"; -import type { JsonObject } from "swagger-ui-express"; -import { readFileSync } from "fs"; -import { RESOURCE_DIR } from "../services/resource_dir"; - -export default function register(app: Application) { - const etapiDocument = yaml.load(readFileSync(join(RESOURCE_DIR, "etapi.openapi.yaml"), "utf8")) as JsonObject; - - // Load the comprehensive API documentation from YAML - const apiDocument = yaml.load(readFileSync(join(RESOURCE_DIR, "api-openapi.yaml"), "utf8")) as JsonObject; - - app.use( - "/etapi/docs/", - swaggerUi.serveFiles(etapiDocument), - swaggerUi.setup(etapiDocument, { - explorer: true, - customSiteTitle: "TriliumNext ETAPI Documentation" - }) - ); - - app.use( - "/api/docs/", - swaggerUi.serveFiles(apiDocument), - swaggerUi.setup(apiDocument, { - explorer: true, - customSiteTitle: "TriliumNext Internal API Documentation", - customCss: '.swagger-ui .topbar { display: none }' - }) - ); -} diff --git a/apps/server/src/routes/routes.ts b/apps/server/src/routes/routes.ts index 9ba6b686c..9074789f2 100644 --- a/apps/server/src/routes/routes.ts +++ b/apps/server/src/routes/routes.ts @@ -70,7 +70,6 @@ import etapiSpecialNoteRoutes from "../etapi/special_notes.js"; import etapiSpecRoute from "../etapi/spec.js"; import etapiBackupRoute from "../etapi/backup.js"; import etapiMetricsRoute from "../etapi/metrics.js"; -import apiDocsRoute from "./api_docs.js"; import { apiResultHandler, apiRoute, asyncApiRoute, asyncRoute, route, router, uploadMiddlewareWithErrorHandling } from "./route_api.js"; const GET = "get", @@ -383,9 +382,6 @@ function register(app: express.Application) { asyncApiRoute(GET, "/api/llm/providers/openai/models", openaiRoute.listModels); asyncApiRoute(GET, "/api/llm/providers/anthropic/models", anthropicRoute.listModels); - // API Documentation - apiDocsRoute(app); - app.use("", router); } diff --git a/packages/share-theme/package.json b/packages/share-theme/package.json index c03ebc044..ef133f29d 100644 --- a/packages/share-theme/package.json +++ b/packages/share-theme/package.json @@ -32,7 +32,6 @@ "devDependencies": { "@digitak/esrun": "3.2.26", "@triliumnext/ckeditor5": "workspace:*", - "@types/swagger-ui": "5.21.1", "@typescript-eslint/eslint-plugin": "8.46.2", "@typescript-eslint/parser": "8.46.2", "dotenv": "17.2.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a5799c032..f83d8c691 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -582,9 +582,6 @@ importers: '@types/supertest': specifier: 6.0.3 version: 6.0.3 - '@types/swagger-ui-express': - specifier: 4.1.8 - version: 4.1.8 '@types/tmp': specifier: 0.2.6 version: 0.2.6 @@ -768,9 +765,6 @@ importers: swagger-jsdoc: specifier: 6.2.8 version: 6.2.8(openapi-types@12.1.3) - swagger-ui-express: - specifier: 5.0.1 - version: 5.0.1(express@5.1.0) time2fa: specifier: 1.4.2 version: 1.4.2 @@ -1375,9 +1369,6 @@ importers: '@triliumnext/ckeditor5': specifier: workspace:* version: link:../ckeditor5 - '@types/swagger-ui': - specifier: 5.21.1 - version: 5.21.1 '@typescript-eslint/eslint-plugin': specifier: 8.46.2 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) @@ -4505,9 +4496,6 @@ packages: '@rushstack/ts-command-line@5.0.1': resolution: {integrity: sha512-bsbUucn41UXrQK7wgM8CNM/jagBytEyJqXw/umtI8d68vFm1Jwxh1OtLrlW7uGZgjCWiiPH6ooUNa1aVsuVr3Q==} - '@scarf/scarf@1.4.0': - resolution: {integrity: sha512-xxeapPiUXdZAE3che6f3xogoJPeZgig6omHEy1rIY5WVsB3H2BHNnZH+gHG6x91SCWyQCzWGsuL2Hh3ClO5/qQ==} - '@selderee/plugin-htmlparser2@0.11.0': resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==} @@ -5361,12 +5349,6 @@ packages: '@types/supertest@6.0.3': resolution: {integrity: sha512-8WzXq62EXFhJ7QsH3Ocb/iKQ/Ty9ZVWnVzoTKc9tyyFRRF3a74Tk2+TLFgaFFw364Ere+npzHKEJ6ga2LzIL7w==} - '@types/swagger-ui-express@4.1.8': - resolution: {integrity: sha512-AhZV8/EIreHFmBV5wAs0gzJUNq9JbbSXgJLQubCC0jtIo6prnI9MIRRxnU4MZX9RB9yXxF1V4R7jtLl/Wcj31g==} - - '@types/swagger-ui@5.21.1': - resolution: {integrity: sha512-DUmUH59eeOtvAqcWwBduH2ws0cc5i95KHsXCS4FsOfbUq/clW8TN+HqRBj7q5p9MSsSNK43RziIGItNbrAGLxg==} - '@types/tabulator-tables@6.3.0': resolution: {integrity: sha512-/mQzrThCdSQXc2lz2SUZglIG+vWQ1sb1CEiVxw9SFGKPulaj1543zrL2qABeJIKjKPxcSgmWUyDA9e8CMaI2cQ==} @@ -13423,15 +13405,6 @@ packages: resolution: {integrity: sha512-nF7oMeL4KypldrQhac8RyHerJeGPD1p2xDh900GPvc+Nk7nWP6jX2FcC7WmkinMoAmoO774+AFXcWsW8gMWEIg==} engines: {node: '>=10'} - swagger-ui-dist@5.21.0: - resolution: {integrity: sha512-E0K3AB6HvQd8yQNSMR7eE5bk+323AUxjtCz/4ZNKiahOlPhPJxqn3UPIGs00cyY/dhrTDJ61L7C/a8u6zhGrZg==} - - swagger-ui-express@5.0.1: - resolution: {integrity: sha512-SrNU3RiBGTLLmFU8GIJdOdanJTl4TOmT27tt3bWWHppqYmAZ6IDuEuBvMU6nZq0zLEe6b/1rACXCgLZqO6ZfrA==} - engines: {node: '>= v0.10.32'} - peerDependencies: - express: '>=4.0.0 || >=5.0.0-beta' - swagger2openapi@7.0.8: resolution: {integrity: sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==} hasBin: true @@ -15554,8 +15527,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -15720,8 +15691,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-classic@47.1.0': dependencies: @@ -19379,8 +19348,6 @@ snapshots: transitivePeerDependencies: - '@types/node' - '@scarf/scarf@1.4.0': {} - '@selderee/plugin-htmlparser2@0.11.0': dependencies: domhandler: 5.0.3 @@ -20465,13 +20432,6 @@ snapshots: '@types/methods': 1.1.4 '@types/superagent': 8.1.9 - '@types/swagger-ui-express@4.1.8': - dependencies: - '@types/express': 5.0.3 - '@types/serve-static': 2.2.0 - - '@types/swagger-ui@5.21.1': {} - '@types/tabulator-tables@6.3.0': {} '@types/through2@2.0.41': @@ -30455,15 +30415,6 @@ snapshots: transitivePeerDependencies: - openapi-types - swagger-ui-dist@5.21.0: - dependencies: - '@scarf/scarf': 1.4.0 - - swagger-ui-express@5.0.1(express@5.1.0): - dependencies: - express: 5.1.0 - swagger-ui-dist: 5.21.0 - swagger2openapi@7.0.8(encoding@0.1.13): dependencies: call-me-maybe: 1.0.2 From 3ac248169f280ca609f20708d648b7d4114cc59b Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 1 Nov 2025 23:40:27 +0200 Subject: [PATCH 023/136] chore(build-docs): fix typecheck issues --- apps/server/src/routes/api/clipper.spec.ts | 2 +- apps/server/src/services/llm/tools/note_creation_tool.ts | 2 +- apps/server/src/services/special_notes.ts | 2 +- apps/server/src/share/content_renderer.ts | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/server/src/routes/api/clipper.spec.ts b/apps/server/src/routes/api/clipper.spec.ts index 17b43f3b9..4bfac679e 100644 --- a/apps/server/src/routes/api/clipper.spec.ts +++ b/apps/server/src/routes/api/clipper.spec.ts @@ -1,4 +1,4 @@ -import { BNote } from "../../services/backend_script_entrypoint"; +import BNote from '../../becca/entities/bnote.js'; import cls from "../../services/cls"; import { buildNote } from "../../test/becca_easy_mocking"; import { processContent } from "./clipper"; diff --git a/apps/server/src/services/llm/tools/note_creation_tool.ts b/apps/server/src/services/llm/tools/note_creation_tool.ts index 41e608029..07466aa32 100644 --- a/apps/server/src/services/llm/tools/note_creation_tool.ts +++ b/apps/server/src/services/llm/tools/note_creation_tool.ts @@ -9,7 +9,7 @@ import log from '../../log.js'; import becca from '../../../becca/becca.js'; import notes from '../../notes.js'; import attributes from '../../attributes.js'; -import type { BNote } from '../../backend_script_entrypoint.js'; +import BNote from '../../../becca/entities/bnote.js'; /** * Definition of the note creation tool diff --git a/apps/server/src/services/special_notes.ts b/apps/server/src/services/special_notes.ts index 4f6d76781..cf71311e6 100644 --- a/apps/server/src/services/special_notes.ts +++ b/apps/server/src/services/special_notes.ts @@ -9,7 +9,7 @@ import searchService from "./search/services/search.js"; import SearchContext from "./search/search_context.js"; import { LBTPL_NOTE_LAUNCHER, LBTPL_CUSTOM_WIDGET, LBTPL_SPACER, LBTPL_SCRIPT } from "./hidden_subtree.js"; import { t } from "i18next"; -import { BNote } from "./backend_script_entrypoint.js"; +import BNote from '../becca/entities/bnote.js'; import { SaveSearchNoteResponse, SaveSqlConsoleResponse } from "@triliumnext/commons"; function getInboxNote(date: string) { diff --git a/apps/server/src/share/content_renderer.ts b/apps/server/src/share/content_renderer.ts index a9f017ffc..338ba07ae 100644 --- a/apps/server/src/share/content_renderer.ts +++ b/apps/server/src/share/content_renderer.ts @@ -16,7 +16,7 @@ import { join } from "path"; import { readFileSync } from "fs"; import { highlightAuto } from "@triliumnext/highlightjs"; import becca from "../becca/becca.js"; -import { BAttachment } from "../services/backend_script_entrypoint.js"; +import BAttachment from '../becca/entities/battachment.js'; import SAttachment from "./shaca/entities/sattachment.js"; import { sanitizeUrl } from "@braintree/sanitize-url"; From 6190949dcc0c1249c69371dcbdf723f31f0c3f94 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:50:40 +0000 Subject: [PATCH 024/136] chore(deps): update dependency @smithy/middleware-retry to v4.4.6 --- packages/ckeditor5/package.json | 2 +- pnpm-lock.yaml | 344 +++++++++++++++++++++++--------- 2 files changed, 252 insertions(+), 94 deletions(-) diff --git a/packages/ckeditor5/package.json b/packages/ckeditor5/package.json index d73384443..a467432da 100644 --- a/packages/ckeditor5/package.json +++ b/packages/ckeditor5/package.json @@ -15,7 +15,7 @@ "ckeditor5-premium-features": "47.1.0" }, "devDependencies": { - "@smithy/middleware-retry": "4.4.5", + "@smithy/middleware-retry": "4.4.6", "@types/jquery": "3.5.33" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..1944ee3c5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -843,8 +843,8 @@ importers: version: 47.1.0(bufferutil@4.0.9)(ckeditor5@47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41))(utf-8-validate@6.0.5) devDependencies: '@smithy/middleware-retry': - specifier: 4.4.5 - version: 4.4.5 + specifier: 4.4.6 + version: 4.4.6 '@types/jquery': specifier: 3.5.33 version: 3.5.33 @@ -4404,18 +4404,22 @@ packages: resolution: {integrity: sha512-xWL9Mf8b7tIFuAlpjKtRPnHrR8XVrwTj5NPYO/QwZPtc0SDLsPxb56V5tzi5yspSMytISHybifez+4jlrx0vkQ==} engines: {node: '>=18.0.0'} + '@smithy/abort-controller@4.2.4': + resolution: {integrity: sha512-Z4DUr/AkgyFf1bOThW2HwzREagee0sB5ycl+hDiSZOfRLW8ZgrOjDi6g8mHH19yyU5E2A/64W3z6SMIf5XiUSQ==} + engines: {node: '>=18.0.0'} + '@smithy/config-resolver@4.1.4': resolution: {integrity: sha512-prmU+rDddxHOH0oNcwemL+SwnzcG65sBF2yXRO7aeXIn/xTlq2pX7JLVbkBnVLowHLg4/OL4+jBmv9hVrVGS+w==} engines: {node: '>=18.0.0'} - '@smithy/core@3.17.0': - resolution: {integrity: sha512-Tir3DbfoTO97fEGUZjzGeoXgcQAUBRDTmuH9A8lxuP8ATrgezrAJ6cLuRvwdKN4ZbYNlHgKlBX69Hyu3THYhtg==} - engines: {node: '>=18.0.0'} - '@smithy/core@3.17.1': resolution: {integrity: sha512-V4Qc2CIb5McABYfaGiIYLTmo/vwNIK7WXI5aGveBd9UcdhbOMwcvIMxIw/DJj1S9QgOMa/7FBkarMdIC0EOTEQ==} engines: {node: '>=18.0.0'} + '@smithy/core@3.17.2': + resolution: {integrity: sha512-n3g4Nl1Te+qGPDbNFAYf+smkRVB+JhFsGy9uJXXZQEufoP4u0r+WLh6KvTDolCswaagysDc/afS1yvb2jnj1gQ==} + engines: {node: '>=18.0.0'} + '@smithy/credential-provider-imds@4.0.6': resolution: {integrity: sha512-hKMWcANhUiNbCJouYkZ9V3+/Qf9pteR1dnwgdyzR09R4ODEYx8BbUysHwRSyex4rZ9zapddZhLFTnT4ZijR4pw==} engines: {node: '>=18.0.0'} @@ -4444,6 +4448,10 @@ packages: resolution: {integrity: sha512-bwigPylvivpRLCm+YK9I5wRIYjFESSVwl8JQ1vVx/XhCw0PtCi558NwTnT2DaVCl5pYlImGuQTSwMsZ+pIavRw==} engines: {node: '>=18.0.0'} + '@smithy/fetch-http-handler@5.3.5': + resolution: {integrity: sha512-mg83SM3FLI8Sa2ooTJbsh5MFfyMTyNRwxqpKHmE0ICRIa66Aodv80DMsTQI02xBLVJ0hckwqTRr5IGAbbWuFLQ==} + engines: {node: '>=18.0.0'} + '@smithy/hash-node@4.0.4': resolution: {integrity: sha512-qnbTPUhCVnCgBp4z4BUJUhOEkVwxiEi1cyFM+Zj6o+aY8OFGxUQleKWq8ltgp3dujuhXojIvJWdoqpm6dVO3lQ==} engines: {node: '>=18.0.0'} @@ -4464,30 +4472,42 @@ packages: resolution: {integrity: sha512-F7gDyfI2BB1Kc+4M6rpuOLne5LOcEknH1n6UQB69qv+HucXBR1rkzXBnQTB2q46sFy1PM/zuSJOB532yc8bg3w==} engines: {node: '>=18.0.0'} - '@smithy/middleware-endpoint@4.3.4': - resolution: {integrity: sha512-/RJhpYkMOaUZoJEkddamGPPIYeKICKXOu/ojhn85dKDM0n5iDIhjvYAQLP3K5FPhgB203O3GpWzoK2OehEoIUw==} - engines: {node: '>=18.0.0'} - '@smithy/middleware-endpoint@4.3.5': resolution: {integrity: sha512-SIzKVTvEudFWJbxAaq7f2GvP3jh2FHDpIFI6/VAf4FOWGFZy0vnYMPSRj8PGYI8Hjt29mvmwSRgKuO3bK4ixDw==} engines: {node: '>=18.0.0'} - '@smithy/middleware-retry@4.4.5': - resolution: {integrity: sha512-DCaXbQqcZ4tONMvvdz+zccDE21sLcbwWoNqzPLFlZaxt1lDtOE2tlVpRSwcTOJrjJSUThdgEYn7HrX5oLGlK9A==} + '@smithy/middleware-endpoint@4.3.6': + resolution: {integrity: sha512-PXehXofGMFpDqr933rxD8RGOcZ0QBAWtuzTgYRAHAL2BnKawHDEdf/TnGpcmfPJGwonhginaaeJIKluEojiF/w==} + engines: {node: '>=18.0.0'} + + '@smithy/middleware-retry@4.4.6': + resolution: {integrity: sha512-OhLx131znrEDxZPAvH/OYufR9d1nB2CQADyYFN4C3V/NQS7Mg4V6uvxHC/Dr96ZQW8IlHJTJ+vAhKt6oxWRndA==} engines: {node: '>=18.0.0'} '@smithy/middleware-serde@4.2.3': resolution: {integrity: sha512-8g4NuUINpYccxiCXM5s1/V+uLtts8NcX4+sPEbvYQDZk4XoJfDpq5y2FQxfmUL89syoldpzNzA0R9nhzdtdKnQ==} engines: {node: '>=18.0.0'} + '@smithy/middleware-serde@4.2.4': + resolution: {integrity: sha512-jUr3x2CDhV15TOX2/Uoz4gfgeqLrRoTQbYAuhLS7lcVKNev7FeYSJ1ebEfjk+l9kbb7k7LfzIR/irgxys5ZTOg==} + engines: {node: '>=18.0.0'} + '@smithy/middleware-stack@4.2.3': resolution: {integrity: sha512-iGuOJkH71faPNgOj/gWuEGS6xvQashpLwWB1HjHq1lNNiVfbiJLpZVbhddPuDbx9l4Cgl0vPLq5ltRfSaHfspA==} engines: {node: '>=18.0.0'} + '@smithy/middleware-stack@4.2.4': + resolution: {integrity: sha512-Gy3TKCOnm9JwpFooldwAboazw+EFYlC+Bb+1QBsSi5xI0W5lX81j/P5+CXvD/9ZjtYKRgxq+kkqd/KOHflzvgA==} + engines: {node: '>=18.0.0'} + '@smithy/node-config-provider@4.3.3': resolution: {integrity: sha512-NzI1eBpBSViOav8NVy1fqOlSfkLgkUjUTlohUSgAEhHaFWA3XJiLditvavIP7OpvTjDp5u2LhtlBhkBlEisMwA==} engines: {node: '>=18.0.0'} + '@smithy/node-config-provider@4.3.4': + resolution: {integrity: sha512-3X3w7qzmo4XNNdPKNS4nbJcGSwiEMsNsRSunMA92S4DJLLIrH5g1AyuOA2XKM9PAPi8mIWfqC+fnfKNsI4KvHw==} + engines: {node: '>=18.0.0'} + '@smithy/node-http-handler@4.4.2': resolution: {integrity: sha512-MHFvTjts24cjGo1byXqhXrbqm7uznFD/ESFx8npHMWTFQVdBZjrT1hKottmp69LBTRm/JQzP/sn1vPt0/r6AYQ==} engines: {node: '>=18.0.0'} @@ -4496,50 +4516,86 @@ packages: resolution: {integrity: sha512-MAwltrDB0lZB/H6/2M5PIsISSwdI5yIh6DaBB9r0Flo9nx3y0dzl/qTMJPd7tJvPdsx6Ks/cwVzheGNYzXyNbQ==} engines: {node: '>=18.0.0'} + '@smithy/node-http-handler@4.4.4': + resolution: {integrity: sha512-VXHGfzCXLZeKnFp6QXjAdy+U8JF9etfpUXD1FAbzY1GzsFJiDQRQIt2CnMUvUdz3/YaHNqT3RphVWMUpXTIODA==} + engines: {node: '>=18.0.0'} + '@smithy/property-provider@4.2.3': resolution: {integrity: sha512-+1EZ+Y+njiefCohjlhyOcy1UNYjT+1PwGFHCxA/gYctjg3DQWAU19WigOXAco/Ql8hZokNehpzLd0/+3uCreqQ==} engines: {node: '>=18.0.0'} + '@smithy/property-provider@4.2.4': + resolution: {integrity: sha512-g2DHo08IhxV5GdY3Cpt/jr0mkTlAD39EJKN27Jb5N8Fb5qt8KG39wVKTXiTRCmHHou7lbXR8nKVU14/aRUf86w==} + engines: {node: '>=18.0.0'} + '@smithy/protocol-http@5.3.3': resolution: {integrity: sha512-Mn7f/1aN2/jecywDcRDvWWWJF4uwg/A0XjFMJtj72DsgHTByfjRltSqcT9NyE9RTdBSN6X1RSXrhn/YWQl8xlw==} engines: {node: '>=18.0.0'} + '@smithy/protocol-http@5.3.4': + resolution: {integrity: sha512-3sfFd2MAzVt0Q/klOmjFi3oIkxczHs0avbwrfn1aBqtc23WqQSmjvk77MBw9WkEQcwbOYIX5/2z4ULj8DuxSsw==} + engines: {node: '>=18.0.0'} + '@smithy/querystring-builder@4.2.3': resolution: {integrity: sha512-LOVCGCmwMahYUM/P0YnU/AlDQFjcu+gWbFJooC417QRB/lDJlWSn8qmPSDp+s4YVAHOgtgbNG4sR+SxF/VOcJQ==} engines: {node: '>=18.0.0'} + '@smithy/querystring-builder@4.2.4': + resolution: {integrity: sha512-KQ1gFXXC+WsbPFnk7pzskzOpn4s+KheWgO3dzkIEmnb6NskAIGp/dGdbKisTPJdtov28qNDohQrgDUKzXZBLig==} + engines: {node: '>=18.0.0'} + '@smithy/querystring-parser@4.2.3': resolution: {integrity: sha512-cYlSNHcTAX/wc1rpblli3aUlLMGgKZ/Oqn8hhjFASXMCXjIqeuQBei0cnq2JR8t4RtU9FpG6uyl6PxyArTiwKA==} engines: {node: '>=18.0.0'} + '@smithy/querystring-parser@4.2.4': + resolution: {integrity: sha512-aHb5cqXZocdzEkZ/CvhVjdw5l4r1aU/9iMEyoKzH4eXMowT6M0YjBpp7W/+XjkBnY8Xh0kVd55GKjnPKlCwinQ==} + engines: {node: '>=18.0.0'} + '@smithy/service-error-classification@4.2.3': resolution: {integrity: sha512-NkxsAxFWwsPsQiwFG2MzJ/T7uIR6AQNh1SzcxSUnmmIqIQMlLRQDKhc17M7IYjiuBXhrQRjQTo3CxX+DobS93g==} engines: {node: '>=18.0.0'} + '@smithy/service-error-classification@4.2.4': + resolution: {integrity: sha512-fdWuhEx4+jHLGeew9/IvqVU/fxT/ot70tpRGuOLxE3HzZOyKeTQfYeV1oaBXpzi93WOk668hjMuuagJ2/Qs7ng==} + engines: {node: '>=18.0.0'} + '@smithy/shared-ini-file-loader@4.3.3': resolution: {integrity: sha512-9f9Ixej0hFhroOK2TxZfUUDR13WVa8tQzhSzPDgXe5jGL3KmaM9s8XN7RQwqtEypI82q9KHnKS71CJ+q/1xLtQ==} engines: {node: '>=18.0.0'} - '@smithy/signature-v4@5.1.2': - resolution: {integrity: sha512-d3+U/VpX7a60seHziWnVZOHuEgJlclufjkS6zhXvxcJgkJq4UWdH5eOBLzHRMx6gXjsdT9h6lfpmLzbrdupHgQ==} + '@smithy/shared-ini-file-loader@4.3.4': + resolution: {integrity: sha512-y5ozxeQ9omVjbnJo9dtTsdXj9BEvGx2X8xvRgKnV+/7wLBuYJQL6dOa/qMY6omyHi7yjt1OA97jZLoVRYi8lxA==} engines: {node: '>=18.0.0'} - '@smithy/smithy-client@4.9.0': - resolution: {integrity: sha512-qz7RTd15GGdwJ3ZCeBKLDQuUQ88m+skh2hJwcpPm1VqLeKzgZvXf6SrNbxvx7uOqvvkjCMXqx3YB5PDJyk00ww==} + '@smithy/signature-v4@5.1.2': + resolution: {integrity: sha512-d3+U/VpX7a60seHziWnVZOHuEgJlclufjkS6zhXvxcJgkJq4UWdH5eOBLzHRMx6gXjsdT9h6lfpmLzbrdupHgQ==} engines: {node: '>=18.0.0'} '@smithy/smithy-client@4.9.1': resolution: {integrity: sha512-Ngb95ryR5A9xqvQFT5mAmYkCwbXvoLavLFwmi7zVg/IowFPCfiqRfkOKnbc/ZRL8ZKJ4f+Tp6kSu6wjDQb8L/g==} engines: {node: '>=18.0.0'} + '@smithy/smithy-client@4.9.2': + resolution: {integrity: sha512-gZU4uAFcdrSi3io8U99Qs/FvVdRxPvIMToi+MFfsy/DN9UqtknJ1ais+2M9yR8e0ASQpNmFYEKeIKVcMjQg3rg==} + engines: {node: '>=18.0.0'} + '@smithy/types@4.8.0': resolution: {integrity: sha512-QpELEHLO8SsQVtqP+MkEgCYTFW0pleGozfs3cZ183ZBj9z3VC1CX1/wtFMK64p+5bhtZo41SeLK1rBRtd25nHQ==} engines: {node: '>=18.0.0'} + '@smithy/types@4.8.1': + resolution: {integrity: sha512-N0Zn0OT1zc+NA+UVfkYqQzviRh5ucWwO7mBV3TmHHprMnfcJNfhlPicDkBHi0ewbh+y3evR6cNAW0Raxvb01NA==} + engines: {node: '>=18.0.0'} + '@smithy/url-parser@4.2.3': resolution: {integrity: sha512-I066AigYvY3d9VlU3zG9XzZg1yT10aNqvCaBTw9EPgu5GrsEl1aUkcMvhkIXascYH1A8W0LQo3B1Kr1cJNcQEw==} engines: {node: '>=18.0.0'} + '@smithy/url-parser@4.2.4': + resolution: {integrity: sha512-w/N/Iw0/PTwJ36PDqU9PzAwVElo4qXxCC0eCTlUtIz/Z5V/2j/cViMHi0hPukSBHp4DVwvUlUhLgCzqSJ6plrg==} + engines: {node: '>=18.0.0'} + '@smithy/util-base64@4.3.0': resolution: {integrity: sha512-GkXZ59JfyxsIwNTWFnjmFEI8kZpRNIBfxKjv09+nkAWPt/4aGaEWMM04m4sxgNVWkbt2MdSvE3KF/PfX4nFedQ==} engines: {node: '>=18.0.0'} @@ -4584,18 +4640,26 @@ packages: resolution: {integrity: sha512-v5ObKlSe8PWUHCqEiX2fy1gNv6goiw6E5I/PN2aXg3Fb/hse0xeaAnSpXDiWl7x6LamVKq7senB+m5LOYHUAHw==} engines: {node: '>=18.0.0'} + '@smithy/util-middleware@4.2.4': + resolution: {integrity: sha512-fKGQAPAn8sgV0plRikRVo6g6aR0KyKvgzNrPuM74RZKy/wWVzx3BMk+ZWEueyN3L5v5EDg+P582mKU+sH5OAsg==} + engines: {node: '>=18.0.0'} + '@smithy/util-retry@4.2.3': resolution: {integrity: sha512-lLPWnakjC0q9z+OtiXk+9RPQiYPNAovt2IXD3CP4LkOnd9NpUsxOjMx1SnoUVB7Orb7fZp67cQMtTBKMFDvOGg==} engines: {node: '>=18.0.0'} - '@smithy/util-stream@4.5.3': - resolution: {integrity: sha512-oZvn8a5bwwQBNYHT2eNo0EU8Kkby3jeIg1P2Lu9EQtqDxki1LIjGRJM6dJ5CZUig8QmLxWxqOKWvg3mVoOBs5A==} + '@smithy/util-retry@4.2.4': + resolution: {integrity: sha512-yQncJmj4dtv/isTXxRb4AamZHy4QFr4ew8GxS6XLWt7sCIxkPxPzINWd7WLISEFPsIan14zrKgvyAF+/yzfwoA==} engines: {node: '>=18.0.0'} '@smithy/util-stream@4.5.4': resolution: {integrity: sha512-+qDxSkiErejw1BAIXUFBSfM5xh3arbz1MmxlbMCKanDDZtVEQ7PSKW9FQS0Vud1eI/kYn0oCTVKyNzRlq+9MUw==} engines: {node: '>=18.0.0'} + '@smithy/util-stream@4.5.5': + resolution: {integrity: sha512-7M5aVFjT+HPilPOKbOmQfCIPchZe4DSBc1wf1+NvHvSoFTiFtauZzT+onZvCj70xhXd0AEmYnZYmdJIuwxOo4w==} + engines: {node: '>=18.0.0'} + '@smithy/util-uri-escape@4.2.0': resolution: {integrity: sha512-igZpCKV9+E/Mzrpq6YacdTQ0qTiLm85gD6N/IrmyDvQFA4UnU3d5g3m8tMT/6zG/vVkWSU+VxeUyGonL62DuxA==} engines: {node: '>=18.0.0'} @@ -14335,7 +14399,7 @@ snapshots: '@aws-sdk/util-user-agent-browser': 3.821.0 '@aws-sdk/util-user-agent-node': 3.823.0 '@smithy/config-resolver': 4.1.4 - '@smithy/core': 3.17.0 + '@smithy/core': 3.17.1 '@smithy/eventstream-serde-browser': 4.0.4 '@smithy/eventstream-serde-config-resolver': 4.1.2 '@smithy/eventstream-serde-node': 4.0.4 @@ -14343,14 +14407,14 @@ snapshots: '@smithy/hash-node': 4.0.4 '@smithy/invalid-dependency': 4.0.4 '@smithy/middleware-content-length': 4.0.4 - '@smithy/middleware-endpoint': 4.3.4 - '@smithy/middleware-retry': 4.4.5 + '@smithy/middleware-endpoint': 4.3.5 + '@smithy/middleware-retry': 4.4.6 '@smithy/middleware-serde': 4.2.3 '@smithy/middleware-stack': 4.2.3 '@smithy/node-config-provider': 4.3.3 '@smithy/node-http-handler': 4.4.2 '@smithy/protocol-http': 5.3.3 - '@smithy/smithy-client': 4.9.0 + '@smithy/smithy-client': 4.9.1 '@smithy/types': 4.8.0 '@smithy/url-parser': 4.2.3 '@smithy/util-base64': 4.3.0 @@ -14361,7 +14425,7 @@ snapshots: '@smithy/util-endpoints': 3.0.6 '@smithy/util-middleware': 4.2.3 '@smithy/util-retry': 4.2.3 - '@smithy/util-stream': 4.5.3 + '@smithy/util-stream': 4.5.4 '@smithy/util-utf8': 4.2.0 '@types/uuid': 9.0.8 tslib: 2.8.1 @@ -14384,19 +14448,19 @@ snapshots: '@aws-sdk/util-user-agent-browser': 3.821.0 '@aws-sdk/util-user-agent-node': 3.823.0 '@smithy/config-resolver': 4.1.4 - '@smithy/core': 3.17.0 + '@smithy/core': 3.17.1 '@smithy/fetch-http-handler': 5.3.4 '@smithy/hash-node': 4.0.4 '@smithy/invalid-dependency': 4.0.4 '@smithy/middleware-content-length': 4.0.4 - '@smithy/middleware-endpoint': 4.3.4 - '@smithy/middleware-retry': 4.4.5 + '@smithy/middleware-endpoint': 4.3.5 + '@smithy/middleware-retry': 4.4.6 '@smithy/middleware-serde': 4.2.3 '@smithy/middleware-stack': 4.2.3 '@smithy/node-config-provider': 4.3.3 - '@smithy/node-http-handler': 4.4.2 + '@smithy/node-http-handler': 4.4.3 '@smithy/protocol-http': 5.3.3 - '@smithy/smithy-client': 4.9.0 + '@smithy/smithy-client': 4.9.1 '@smithy/types': 4.8.0 '@smithy/url-parser': 4.2.3 '@smithy/util-base64': 4.3.0 @@ -14416,12 +14480,12 @@ snapshots: dependencies: '@aws-sdk/types': 3.821.0 '@aws-sdk/xml-builder': 3.821.0 - '@smithy/core': 3.17.0 + '@smithy/core': 3.17.1 '@smithy/node-config-provider': 4.3.3 '@smithy/property-provider': 4.2.3 '@smithy/protocol-http': 5.3.3 '@smithy/signature-v4': 5.1.2 - '@smithy/smithy-client': 4.9.0 + '@smithy/smithy-client': 4.9.1 '@smithy/types': 4.8.0 '@smithy/util-base64': 4.3.0 '@smithy/util-body-length-browser': 4.2.0 @@ -14443,12 +14507,12 @@ snapshots: '@aws-sdk/core': 3.823.0 '@aws-sdk/types': 3.821.0 '@smithy/fetch-http-handler': 5.3.4 - '@smithy/node-http-handler': 4.4.2 + '@smithy/node-http-handler': 4.4.3 '@smithy/property-provider': 4.2.3 '@smithy/protocol-http': 5.3.3 - '@smithy/smithy-client': 4.9.0 + '@smithy/smithy-client': 4.9.1 '@smithy/types': 4.8.0 - '@smithy/util-stream': 4.5.3 + '@smithy/util-stream': 4.5.4 tslib: 2.8.1 '@aws-sdk/credential-provider-ini@3.823.0': @@ -14558,7 +14622,7 @@ snapshots: '@aws-sdk/core': 3.823.0 '@aws-sdk/types': 3.821.0 '@aws-sdk/util-endpoints': 3.821.0 - '@smithy/core': 3.17.0 + '@smithy/core': 3.17.1 '@smithy/protocol-http': 5.3.3 '@smithy/types': 4.8.0 tslib: 2.8.1 @@ -14578,19 +14642,19 @@ snapshots: '@aws-sdk/util-user-agent-browser': 3.821.0 '@aws-sdk/util-user-agent-node': 3.823.0 '@smithy/config-resolver': 4.1.4 - '@smithy/core': 3.17.0 + '@smithy/core': 3.17.1 '@smithy/fetch-http-handler': 5.3.4 '@smithy/hash-node': 4.0.4 '@smithy/invalid-dependency': 4.0.4 '@smithy/middleware-content-length': 4.0.4 - '@smithy/middleware-endpoint': 4.3.4 - '@smithy/middleware-retry': 4.4.5 + '@smithy/middleware-endpoint': 4.3.5 + '@smithy/middleware-retry': 4.4.6 '@smithy/middleware-serde': 4.2.3 '@smithy/middleware-stack': 4.2.3 '@smithy/node-config-provider': 4.3.3 - '@smithy/node-http-handler': 4.4.2 + '@smithy/node-http-handler': 4.4.3 '@smithy/protocol-http': 5.3.3 - '@smithy/smithy-client': 4.9.0 + '@smithy/smithy-client': 4.9.1 '@smithy/types': 4.8.0 '@smithy/url-parser': 4.2.3 '@smithy/util-base64': 4.3.0 @@ -15047,6 +15111,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15108,6 +15174,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -15348,6 +15416,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-engine': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-essentials@47.1.0': dependencies: @@ -15795,8 +15865,6 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -18782,6 +18850,11 @@ snapshots: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/abort-controller@4.2.4': + dependencies: + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/config-resolver@4.1.4': dependencies: '@smithy/node-config-provider': 4.3.3 @@ -18790,19 +18863,6 @@ snapshots: '@smithy/util-middleware': 4.2.3 tslib: 2.8.1 - '@smithy/core@3.17.0': - dependencies: - '@smithy/middleware-serde': 4.2.3 - '@smithy/protocol-http': 5.3.3 - '@smithy/types': 4.8.0 - '@smithy/util-base64': 4.3.0 - '@smithy/util-body-length-browser': 4.2.0 - '@smithy/util-middleware': 4.2.3 - '@smithy/util-stream': 4.5.3 - '@smithy/util-utf8': 4.2.0 - '@smithy/uuid': 1.1.0 - tslib: 2.8.1 - '@smithy/core@3.17.1': dependencies: '@smithy/middleware-serde': 4.2.3 @@ -18816,6 +18876,19 @@ snapshots: '@smithy/uuid': 1.1.0 tslib: 2.8.1 + '@smithy/core@3.17.2': + dependencies: + '@smithy/middleware-serde': 4.2.4 + '@smithy/protocol-http': 5.3.4 + '@smithy/types': 4.8.1 + '@smithy/util-base64': 4.3.0 + '@smithy/util-body-length-browser': 4.2.0 + '@smithy/util-middleware': 4.2.4 + '@smithy/util-stream': 4.5.5 + '@smithy/util-utf8': 4.2.0 + '@smithy/uuid': 1.1.0 + tslib: 2.8.1 + '@smithy/credential-provider-imds@4.0.6': dependencies: '@smithy/node-config-provider': 4.3.3 @@ -18862,6 +18935,14 @@ snapshots: '@smithy/util-base64': 4.3.0 tslib: 2.8.1 + '@smithy/fetch-http-handler@5.3.5': + dependencies: + '@smithy/protocol-http': 5.3.4 + '@smithy/querystring-builder': 4.2.4 + '@smithy/types': 4.8.1 + '@smithy/util-base64': 4.3.0 + tslib: 2.8.1 + '@smithy/hash-node@4.0.4': dependencies: '@smithy/types': 4.8.0 @@ -18888,17 +18969,6 @@ snapshots: '@smithy/types': 4.8.0 tslib: 2.8.1 - '@smithy/middleware-endpoint@4.3.4': - dependencies: - '@smithy/core': 3.17.0 - '@smithy/middleware-serde': 4.2.3 - '@smithy/node-config-provider': 4.3.3 - '@smithy/shared-ini-file-loader': 4.3.3 - '@smithy/types': 4.8.0 - '@smithy/url-parser': 4.2.3 - '@smithy/util-middleware': 4.2.3 - tslib: 2.8.1 - '@smithy/middleware-endpoint@4.3.5': dependencies: '@smithy/core': 3.17.1 @@ -18910,15 +18980,26 @@ snapshots: '@smithy/util-middleware': 4.2.3 tslib: 2.8.1 - '@smithy/middleware-retry@4.4.5': + '@smithy/middleware-endpoint@4.3.6': dependencies: - '@smithy/node-config-provider': 4.3.3 - '@smithy/protocol-http': 5.3.3 - '@smithy/service-error-classification': 4.2.3 - '@smithy/smithy-client': 4.9.1 - '@smithy/types': 4.8.0 - '@smithy/util-middleware': 4.2.3 - '@smithy/util-retry': 4.2.3 + '@smithy/core': 3.17.2 + '@smithy/middleware-serde': 4.2.4 + '@smithy/node-config-provider': 4.3.4 + '@smithy/shared-ini-file-loader': 4.3.4 + '@smithy/types': 4.8.1 + '@smithy/url-parser': 4.2.4 + '@smithy/util-middleware': 4.2.4 + tslib: 2.8.1 + + '@smithy/middleware-retry@4.4.6': + dependencies: + '@smithy/node-config-provider': 4.3.4 + '@smithy/protocol-http': 5.3.4 + '@smithy/service-error-classification': 4.2.4 + '@smithy/smithy-client': 4.9.2 + '@smithy/types': 4.8.1 + '@smithy/util-middleware': 4.2.4 + '@smithy/util-retry': 4.2.4 '@smithy/uuid': 1.1.0 tslib: 2.8.1 @@ -18928,11 +19009,22 @@ snapshots: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/middleware-serde@4.2.4': + dependencies: + '@smithy/protocol-http': 5.3.4 + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/middleware-stack@4.2.3': dependencies: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/middleware-stack@4.2.4': + dependencies: + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/node-config-provider@4.3.3': dependencies: '@smithy/property-provider': 4.2.3 @@ -18940,6 +19032,13 @@ snapshots: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/node-config-provider@4.3.4': + dependencies: + '@smithy/property-provider': 4.2.4 + '@smithy/shared-ini-file-loader': 4.3.4 + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/node-http-handler@4.4.2': dependencies: '@smithy/abort-controller': 4.2.3 @@ -18956,36 +19055,74 @@ snapshots: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/node-http-handler@4.4.4': + dependencies: + '@smithy/abort-controller': 4.2.4 + '@smithy/protocol-http': 5.3.4 + '@smithy/querystring-builder': 4.2.4 + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/property-provider@4.2.3': dependencies: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/property-provider@4.2.4': + dependencies: + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/protocol-http@5.3.3': dependencies: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/protocol-http@5.3.4': + dependencies: + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/querystring-builder@4.2.3': dependencies: '@smithy/types': 4.8.0 '@smithy/util-uri-escape': 4.2.0 tslib: 2.8.1 + '@smithy/querystring-builder@4.2.4': + dependencies: + '@smithy/types': 4.8.1 + '@smithy/util-uri-escape': 4.2.0 + tslib: 2.8.1 + '@smithy/querystring-parser@4.2.3': dependencies: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/querystring-parser@4.2.4': + dependencies: + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/service-error-classification@4.2.3': dependencies: '@smithy/types': 4.8.0 + '@smithy/service-error-classification@4.2.4': + dependencies: + '@smithy/types': 4.8.1 + '@smithy/shared-ini-file-loader@4.3.3': dependencies: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/shared-ini-file-loader@4.3.4': + dependencies: + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/signature-v4@5.1.2': dependencies: '@smithy/is-array-buffer': 4.2.0 @@ -18997,16 +19134,6 @@ snapshots: '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 - '@smithy/smithy-client@4.9.0': - dependencies: - '@smithy/core': 3.17.0 - '@smithy/middleware-endpoint': 4.3.4 - '@smithy/middleware-stack': 4.2.3 - '@smithy/protocol-http': 5.3.3 - '@smithy/types': 4.8.0 - '@smithy/util-stream': 4.5.3 - tslib: 2.8.1 - '@smithy/smithy-client@4.9.1': dependencies: '@smithy/core': 3.17.1 @@ -19017,16 +19144,36 @@ snapshots: '@smithy/util-stream': 4.5.4 tslib: 2.8.1 + '@smithy/smithy-client@4.9.2': + dependencies: + '@smithy/core': 3.17.2 + '@smithy/middleware-endpoint': 4.3.6 + '@smithy/middleware-stack': 4.2.4 + '@smithy/protocol-http': 5.3.4 + '@smithy/types': 4.8.1 + '@smithy/util-stream': 4.5.5 + tslib: 2.8.1 + '@smithy/types@4.8.0': dependencies: tslib: 2.8.1 + '@smithy/types@4.8.1': + dependencies: + tslib: 2.8.1 + '@smithy/url-parser@4.2.3': dependencies: '@smithy/querystring-parser': 4.2.3 '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/url-parser@4.2.4': + dependencies: + '@smithy/querystring-parser': 4.2.4 + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/util-base64@4.3.0': dependencies: '@smithy/util-buffer-from': 4.2.0 @@ -19058,7 +19205,7 @@ snapshots: '@smithy/util-defaults-mode-browser@4.0.22': dependencies: '@smithy/property-provider': 4.2.3 - '@smithy/smithy-client': 4.9.0 + '@smithy/smithy-client': 4.9.1 '@smithy/types': 4.8.0 bowser: 2.11.0 tslib: 2.8.1 @@ -19069,7 +19216,7 @@ snapshots: '@smithy/credential-provider-imds': 4.0.6 '@smithy/node-config-provider': 4.3.3 '@smithy/property-provider': 4.2.3 - '@smithy/smithy-client': 4.9.0 + '@smithy/smithy-client': 4.9.1 '@smithy/types': 4.8.0 tslib: 2.8.1 @@ -19088,21 +19235,21 @@ snapshots: '@smithy/types': 4.8.0 tslib: 2.8.1 + '@smithy/util-middleware@4.2.4': + dependencies: + '@smithy/types': 4.8.1 + tslib: 2.8.1 + '@smithy/util-retry@4.2.3': dependencies: '@smithy/service-error-classification': 4.2.3 '@smithy/types': 4.8.0 tslib: 2.8.1 - '@smithy/util-stream@4.5.3': + '@smithy/util-retry@4.2.4': dependencies: - '@smithy/fetch-http-handler': 5.3.4 - '@smithy/node-http-handler': 4.4.2 - '@smithy/types': 4.8.0 - '@smithy/util-base64': 4.3.0 - '@smithy/util-buffer-from': 4.2.0 - '@smithy/util-hex-encoding': 4.2.0 - '@smithy/util-utf8': 4.2.0 + '@smithy/service-error-classification': 4.2.4 + '@smithy/types': 4.8.1 tslib: 2.8.1 '@smithy/util-stream@4.5.4': @@ -19116,6 +19263,17 @@ snapshots: '@smithy/util-utf8': 4.2.0 tslib: 2.8.1 + '@smithy/util-stream@4.5.5': + dependencies: + '@smithy/fetch-http-handler': 5.3.5 + '@smithy/node-http-handler': 4.4.4 + '@smithy/types': 4.8.1 + '@smithy/util-base64': 4.3.0 + '@smithy/util-buffer-from': 4.2.0 + '@smithy/util-hex-encoding': 4.2.0 + '@smithy/util-utf8': 4.2.0 + tslib: 2.8.1 + '@smithy/util-uri-escape@4.2.0': dependencies: tslib: 2.8.1 From 664de68d53e7b8955180defb32f504e86f8ce06d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:51:29 +0000 Subject: [PATCH 025/136] chore(deps): update dependency axios to v1.13.1 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index ed536368d..eb7b14106 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -68,7 +68,7 @@ "@types/xml2js": "0.4.14", "archiver": "7.0.1", "async-mutex": "0.5.0", - "axios": "1.13.0", + "axios": "1.13.1", "bindings": "1.5.0", "bootstrap": "5.3.8", "chardet": "2.1.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..8bb7864a4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -580,8 +580,8 @@ importers: specifier: 0.5.0 version: 0.5.0 axios: - specifier: 1.13.0 - version: 1.13.0(debug@4.4.3) + specifier: 1.13.1 + version: 1.13.1(debug@4.4.3) bindings: specifier: 1.5.0 version: 1.5.0 @@ -5858,8 +5858,8 @@ packages: resolution: {integrity: sha512-zJAaP9zxTcvTHRlejau3ZOY4V7SRpiByf3/dxx2uyKxxor19tpmpV2QRsTKikckwhaPmr2dVpxxMr7jOCYVp5g==} engines: {node: '>=6.0.0'} - axios@1.13.0: - resolution: {integrity: sha512-zt40Pz4zcRXra9CVV31KeyofwiNvAbJ5B6YPz9pMJ+yOSLikvPT4Yi5LjfgjRa9CawVYBaD1JQzIVcIvBejKeA==} + axios@1.13.1: + resolution: {integrity: sha512-hU4EGxxt+j7TQijx1oYdAjw4xuIp1wRQSsbMFwSthCWeBQur1eF+qJ5iQ5sN3Tw8YRzQNKb8jszgBdMDVqwJcw==} b4a@1.6.7: resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==} @@ -20627,7 +20627,7 @@ snapshots: await-to-js@3.0.0: {} - axios@1.13.0(debug@4.4.3): + axios@1.13.1(debug@4.4.3): dependencies: follow-redirects: 1.15.9(debug@4.4.3) form-data: 4.0.4 From 16200312cecc1d762d8545fb9e2a46db9e745284 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:52:16 +0000 Subject: [PATCH 026/136] chore(deps): update dependency chardet to v2.1.1 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index ed536368d..d8066270a 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -71,7 +71,7 @@ "axios": "1.13.0", "bindings": "1.5.0", "bootstrap": "5.3.8", - "chardet": "2.1.0", + "chardet": "2.1.1", "cheerio": "1.1.2", "chokidar": "4.0.3", "cls-hooked": "4.2.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..2989133a8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -589,8 +589,8 @@ importers: specifier: 5.3.8 version: 5.3.8(@popperjs/core@2.11.8) chardet: - specifier: 2.1.0 - version: 2.1.0 + specifier: 2.1.1 + version: 2.1.1 cheerio: specifier: 1.1.2 version: 1.1.2 @@ -6198,8 +6198,8 @@ packages: chardet@0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} - chardet@2.1.0: - resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} + chardet@2.1.1: + resolution: {integrity: sha512-PsezH1rqdV9VvyNhxxOW32/d75r01NY7TQCmOqomRo15ZSOKbpTFVsfjghxo6JloQUCGnH4k1LGu0R4yCLlWQQ==} check-error@2.1.1: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} @@ -21056,7 +21056,7 @@ snapshots: chardet@0.7.0: {} - chardet@2.1.0: {} + chardet@2.1.1: {} check-error@2.1.1: {} From 104a1f0c3a1a62333d2188f3b422933322b85108 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:54:26 +0000 Subject: [PATCH 027/136] chore(deps): update dependency happy-dom to v20.0.10 --- apps/client/package.json | 2 +- pnpm-lock.yaml | 163 +++++++++++++++++++++++++-------------- 2 files changed, 105 insertions(+), 60 deletions(-) diff --git a/apps/client/package.json b/apps/client/package.json index 6bc7f10f2..90df7a489 100644 --- a/apps/client/package.json +++ b/apps/client/package.json @@ -76,7 +76,7 @@ "@types/reveal.js": "5.2.1", "@types/tabulator-tables": "6.3.0", "copy-webpack-plugin": "13.0.1", - "happy-dom": "20.0.8", + "happy-dom": "20.0.10", "script-loader": "0.7.2", "vite-plugin-static-copy": "3.1.4" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..bca921ac1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -87,7 +87,7 @@ importers: version: 7.0.1(eslint@9.38.0(jiti@2.6.1)) happy-dom: specifier: ~20.0.0 - version: 20.0.8 + version: 20.0.10 jiti: specifier: 2.6.1 version: 2.6.1 @@ -123,7 +123,7 @@ importers: version: 4.5.4(@types/node@24.9.1)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) apps/client: dependencies: @@ -280,7 +280,7 @@ importers: version: 5.0.0 '@preact/preset-vite': specifier: 2.10.2 - version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.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)) + version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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)) '@types/bootstrap': specifier: 5.2.10 version: 5.2.10 @@ -306,14 +306,14 @@ importers: specifier: 13.0.1 version: 13.0.1(webpack@5.101.3(esbuild@0.25.11)) happy-dom: - specifier: 20.0.8 - version: 20.0.8 + specifier: 20.0.10 + version: 20.0.10 script-loader: specifier: 0.7.2 version: 0.7.2 vite-plugin-static-copy: specifier: 3.1.4 - version: 3.1.4(vite@7.1.12(@types/node@24.9.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)) + version: 3.1.4(vite@7.1.12(@types/node@24.9.2)(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)) apps/db-compare: dependencies: @@ -476,7 +476,7 @@ importers: version: 2.1.3(electron@38.4.0) '@preact/preset-vite': specifier: 2.10.2 - version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.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)) + version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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)) '@triliumnext/commons': specifier: workspace:* version: link:../../packages/commons @@ -761,7 +761,7 @@ importers: version: 1.0.1 vite: specifier: 7.1.12 - version: 7.1.12(@types/node@24.9.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) + version: 7.1.12(@types/node@24.9.2)(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) ws: specifier: 8.18.3 version: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -801,7 +801,7 @@ importers: devDependencies: '@preact/preset-vite': specifier: 2.10.2 - version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.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)) + version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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)) eslint: specifier: 9.38.0 version: 9.38.0(jiti@2.6.1) @@ -816,7 +816,7 @@ importers: version: 0.4.2 vite: specifier: 7.1.12 - version: 7.1.12(@types/node@24.9.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) + version: 7.1.12(@types/node@24.9.2)(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) packages/ckeditor5: dependencies: @@ -904,7 +904,7 @@ importers: version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -964,7 +964,7 @@ importers: version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -1024,7 +1024,7 @@ importers: version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -1091,7 +1091,7 @@ importers: version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -1158,7 +1158,7 @@ importers: version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -5094,6 +5094,9 @@ packages: '@types/node@20.19.23': resolution: {integrity: sha512-yIdlVVVHXpmqRhtyovZAcSy0MiPcYWGkoO4CGe/+jpP0hmNuihm4XhHbADpK++MsiLHP5MVlv+bcgdF99kSiFQ==} + '@types/node@20.19.24': + resolution: {integrity: sha512-FE5u0ezmi6y9OZEzlJfg37mqqf6ZDSF2V/NLjUyGrR9uTZ7Sb9F7bLNZ03S4XVUNRWGA7Ck4c1kK+YnuWjl+DA==} + '@types/node@22.15.21': resolution: {integrity: sha512-EV/37Td6c+MgKAbkcLG6vqZ2zEYHD7bvSrzqqs2RIhbA6w3x+Dqz8MZM3sP6kGTeLrdoOgKZe+Xja7tUB2DNkQ==} @@ -5103,12 +5106,18 @@ packages: '@types/node@22.18.12': resolution: {integrity: sha512-BICHQ67iqxQGFSzfCFTT7MRQ5XcBjG5aeKh5Ok38UBbPe5fxTyE+aHFxwVrGyr8GNlqFMLKD1D3P2K/1ks8tog==} + '@types/node@22.18.13': + resolution: {integrity: sha512-Bo45YKIjnmFtv6I1TuC8AaHBbqXtIo+Om5fE4QiU1Tj8QR/qt+8O3BAtOimG5IFmwaWiPmB3Mv3jtYzBA4Us2A==} + '@types/node@22.18.8': resolution: {integrity: sha512-pAZSHMiagDR7cARo/cch1f3rXy0AEXwsVsVH09FcyeJVAzCnGgmYis7P3JidtTUjyadhTeSo8TgRPswstghDaw==} '@types/node@24.9.1': resolution: {integrity: sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==} + '@types/node@24.9.2': + resolution: {integrity: sha512-uWN8YqxXxqFMX2RqGOrumsKeti4LlmIMIyV0lgut4jx7KQBcBiW6vkDtIBvHnHIquwNfJhk8v2OtmO8zXWHfPA==} + '@types/parse-json@4.0.2': resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} @@ -8334,8 +8343,8 @@ packages: graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - graphql@16.11.0: - resolution: {integrity: sha512-mS1lbMsxgQj6hge1XZ6p7GPhbrtFwUFYi3wRzXAC/FmYnyXMTvvI3td3rjmQ2u8ewXueaSvRPWaEcgVVOT9Jnw==} + graphql@16.12.0: + resolution: {integrity: sha512-DKKrynuQRne0PNpEbzuEdHlYOMksHSUI8Zc9Unei5gTsMNA2/vMpoMz/yKba50pejK56qj98qM0SjYxAKi13gQ==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} growl@1.10.5: @@ -8348,8 +8357,8 @@ packages: handle-thing@2.0.1: resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==} - happy-dom@20.0.8: - resolution: {integrity: sha512-TlYaNQNtzsZ97rNMBAm8U+e2cUQXNithgfCizkDgc11lgmN4j9CKMhO3FPGKWQYPwwkFcPpoXYF/CqEPLgzfOg==} + happy-dom@20.0.10: + resolution: {integrity: sha512-6umCCHcjQrhP5oXhrHQQvLB0bwb1UzHAHdsXy+FjtKoYjUhmNZsQL8NivwM1vDvNEChJabVrUYxUnp/ZdYmy2g==} engines: {node: '>=20.0.0'} has-bigints@1.1.0: @@ -15047,6 +15056,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15299,6 +15310,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -17280,7 +17293,7 @@ snapshots: '@inquirer/figures': 1.0.13 '@inquirer/type': 2.0.0 '@types/mute-stream': 0.0.4 - '@types/node': 22.18.12 + '@types/node': 22.18.13 '@types/wrap-ansi': 3.0.0 ansi-escapes: 4.3.2 cli-width: 4.1.0 @@ -18060,18 +18073,18 @@ snapshots: '@popperjs/core@2.11.8': {} - '@preact/preset-vite@2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.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))': + '@preact/preset-vite@2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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))': 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.8(preact@10.27.2)(vite@7.1.12(@types/node@24.9.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)) + '@prefresh/vite': 2.4.8(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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)) '@rollup/pluginutils': 4.2.1 babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.28.0) debug: 4.4.1 picocolors: 1.1.1 - vite: 7.1.12(@types/node@24.9.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) - vite-prerender-plugin: 0.5.11(vite@7.1.12(@types/node@24.9.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)) + vite: 7.1.12(@types/node@24.9.2)(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) + vite-prerender-plugin: 0.5.11(vite@7.1.12(@types/node@24.9.2)(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)) transitivePeerDependencies: - preact - supports-color @@ -18084,7 +18097,7 @@ snapshots: '@prefresh/utils@1.2.1': {} - '@prefresh/vite@2.4.8(preact@10.27.2)(vite@7.1.12(@types/node@24.9.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))': + '@prefresh/vite@2.4.8(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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))': dependencies: '@babel/core': 7.28.0 '@prefresh/babel-plugin': 0.5.2 @@ -18092,7 +18105,7 @@ snapshots: '@prefresh/utils': 1.2.1 '@rollup/pluginutils': 4.2.1 preact: 10.27.2 - vite: 7.1.12(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) transitivePeerDependencies: - supports-color @@ -19289,7 +19302,7 @@ snapshots: '@types/appdmg@0.5.5': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 optional: true '@types/archiver@7.0.0': @@ -19311,7 +19324,7 @@ snapshots: '@types/bonjour@3.5.13': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/bootstrap@5.2.10': dependencies: @@ -19325,7 +19338,7 @@ snapshots: dependencies: '@types/http-cache-semantics': 4.0.4 '@types/keyv': 3.1.4 - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/responselike': 1.0.3 '@types/chai@5.2.2': @@ -19350,7 +19363,7 @@ snapshots: '@types/connect-history-api-fallback@1.5.4': dependencies: '@types/express-serve-static-core': 5.1.0 - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/connect@3.4.38': dependencies: @@ -19367,7 +19380,7 @@ snapshots: '@types/cors@2.8.19': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/cssnano@5.1.3(postcss@8.5.6)': dependencies: @@ -19561,7 +19574,7 @@ snapshots: '@types/fs-extra@9.0.13': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 optional: true '@types/geojson-vt@3.2.5': @@ -19573,7 +19586,7 @@ snapshots: '@types/glob@7.2.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/hast@3.0.4': dependencies: @@ -19587,7 +19600,7 @@ snapshots: '@types/http-proxy@1.17.16': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/ini@4.1.1': {} @@ -19605,7 +19618,7 @@ snapshots: '@types/keyv@3.1.4': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/leaflet-gpx@1.3.8': dependencies: @@ -19655,11 +19668,11 @@ snapshots: '@types/mute-stream@0.0.4': dependencies: - '@types/node': 24.9.1 + '@types/node': 22.18.13 '@types/node-forge@1.3.14': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/node@16.9.1': {} @@ -19671,6 +19684,10 @@ snapshots: dependencies: undici-types: 6.21.0 + '@types/node@20.19.24': + dependencies: + undici-types: 6.21.0 + '@types/node@22.15.21': dependencies: undici-types: 6.21.0 @@ -19683,6 +19700,10 @@ snapshots: dependencies: undici-types: 6.21.0 + '@types/node@22.18.13': + dependencies: + undici-types: 6.21.0 + '@types/node@22.18.8': dependencies: undici-types: 6.21.0 @@ -19691,6 +19712,10 @@ snapshots: dependencies: undici-types: 7.16.0 + '@types/node@24.9.2': + dependencies: + undici-types: 7.16.0 + '@types/parse-json@4.0.2': {} '@types/pbf@3.0.5': {} @@ -19721,7 +19746,7 @@ snapshots: '@types/responselike@1.0.3': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/retry@0.12.2': {} @@ -19767,7 +19792,7 @@ snapshots: '@types/sockjs@0.3.36': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/statuses@2.0.6': optional: true @@ -19803,7 +19828,7 @@ snapshots: '@types/through2@2.0.41': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/tmp@0.2.6': {} @@ -19841,7 +19866,7 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 24.9.1 + '@types/node': 22.18.12 optional: true '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': @@ -19979,7 +20004,7 @@ snapshots: magic-string: 0.30.18 sirv: 3.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) optionalDependencies: playwright: 1.56.1 @@ -20002,7 +20027,7 @@ snapshots: magicast: 0.3.5 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) transitivePeerDependencies: - supports-color @@ -20021,7 +20046,7 @@ snapshots: std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) optionalDependencies: '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) transitivePeerDependencies: @@ -20073,7 +20098,7 @@ snapshots: sirv: 3.0.1 tinyglobby: 0.2.15 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) '@vitest/utils@3.2.4': dependencies: @@ -22642,7 +22667,7 @@ snapshots: engine.io@6.6.4(bufferutil@4.0.9)(utf-8-validate@6.0.5): dependencies: '@types/cors': 2.8.19 - '@types/node': 24.9.1 + '@types/node': 24.9.2 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.7.2 @@ -23969,7 +23994,7 @@ snapshots: graphemer@1.4.0: {} - graphql@16.11.0: + graphql@16.12.0: optional: true growl@1.10.5: {} @@ -23978,9 +24003,9 @@ snapshots: handle-thing@2.0.1: {} - happy-dom@20.0.8: + happy-dom@20.0.10: dependencies: - '@types/node': 20.19.23 + '@types/node': 20.19.24 '@types/whatwg-mimetype': 3.0.2 whatwg-mimetype: 3.0.0 @@ -24776,13 +24801,13 @@ snapshots: jest-worker@26.6.2: dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 merge-stream: 2.0.0 supports-color: 7.2.0 jest-worker@27.5.1: dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -26163,7 +26188,7 @@ snapshots: '@open-draft/until': 2.1.0 '@types/cookie': 0.6.0 '@types/statuses': 2.0.6 - graphql: 16.11.0 + graphql: 16.12.0 headers-polyfill: 4.0.3 is-node-process: 1.2.0 outvariant: 1.4.3 @@ -27758,7 +27783,7 @@ snapshots: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 - '@types/node': 24.9.1 + '@types/node': 24.9.2 long: 5.3.2 protocol-buffers-schema@3.6.0: {} @@ -30262,13 +30287,13 @@ snapshots: - rollup - supports-color - vite-plugin-static-copy@3.1.4(vite@7.1.12(@types/node@24.9.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)): + vite-plugin-static-copy@3.1.4(vite@7.1.12(@types/node@24.9.2)(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)): dependencies: chokidar: 3.6.0 p-map: 7.0.3 picocolors: 1.1.1 tinyglobby: 0.2.15 - vite: 7.1.12(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) vite-plugin-svgo@2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)): dependencies: @@ -30276,7 +30301,7 @@ snapshots: typescript: 5.9.3 vite: 7.1.12(@types/node@24.9.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) - vite-prerender-plugin@0.5.11(vite@7.1.12(@types/node@24.9.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)): + vite-prerender-plugin@0.5.11(vite@7.1.12(@types/node@24.9.2)(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)): dependencies: kolorist: 1.8.0 magic-string: 0.30.18 @@ -30284,7 +30309,7 @@ snapshots: simple-code-frame: 1.3.0 source-map: 0.7.6 stack-trace: 1.0.0-pre2 - vite: 7.1.12(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) vite@7.1.12(@types/node@24.9.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): dependencies: @@ -30306,7 +30331,27 @@ snapshots: tsx: 4.20.6 yaml: 2.8.1 - vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.8)(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.9.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): + vite@7.1.12(@types/node@24.9.2)(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): + dependencies: + esbuild: 0.25.11 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + postcss: 8.5.6 + rollup: 4.52.0 + tinyglobby: 0.2.15 + optionalDependencies: + '@types/node': 24.9.2 + fsevents: 2.3.3 + jiti: 2.6.1 + less: 4.1.3 + lightningcss: 1.30.1 + sass: 1.91.0 + sass-embedded: 1.91.0 + terser: 5.44.0 + tsx: 4.20.6 + yaml: 2.8.1 + + vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 @@ -30336,7 +30381,7 @@ snapshots: '@types/node': 24.9.1 '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/ui': 3.2.4(vitest@3.2.4) - happy-dom: 20.0.8 + happy-dom: 20.0.10 jsdom: 26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) transitivePeerDependencies: - jiti From 61319c3a14eedcedc93475f645ef4b6335e80844 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:55:13 +0000 Subject: [PATCH 028/136] chore(deps): update dependency ollama to v0.6.2 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index ed536368d..abc41660e 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -110,7 +110,7 @@ "mime-types": "3.0.1", "multer": "2.0.2", "normalize-strings": "1.1.1", - "ollama": "0.6.0", + "ollama": "0.6.2", "openai": "6.7.0", "rand-token": "1.0.1", "safe-compare": "1.1.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..0a97f63b4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -706,8 +706,8 @@ importers: specifier: 1.1.1 version: 1.1.1 ollama: - specifier: 0.6.0 - version: 0.6.0 + specifier: 0.6.2 + version: 0.6.2 openai: specifier: 6.7.0 version: 6.7.0(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@4.1.12) @@ -10380,8 +10380,8 @@ packages: resolution: {integrity: sha512-y0W+X7Ppo7oZX6eovsRkuzcSM40Bicg2JEJkDJ4irIt1wsYAP5MLSNv+QAogO8xivMffw/9OvV3um1pxXgt1uA==} engines: {node: ^10.13.0 || >=12.0.0} - ollama@0.6.0: - resolution: {integrity: sha512-FHjdU2Ok5x2HZsxPui/MBJZ5J+HzmxoWYa/p9wk736eT+uAhS8nvIICar5YgwlG5MFNjDR6UA5F3RSKq+JseOA==} + ollama@0.6.2: + resolution: {integrity: sha512-VcPZpBuz3kdoJIcyWpiDS1MSDSZKyQPM6f9wi405vdLOB5yZWiQ+m7NSTrYsntQyCp/s/Yy0quKiYerhq7Liog==} omggif@1.0.10: resolution: {integrity: sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==} @@ -26511,7 +26511,7 @@ snapshots: oidc-token-hash@5.1.0: {} - ollama@0.6.0: + ollama@0.6.2: dependencies: whatwg-fetch: 3.6.20 From 136b449f60c9c1ffc9509b38cf7e5fb80efe0008 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:56:07 +0000 Subject: [PATCH 029/136] fix(deps): update dependency dayjs to v1.11.19 --- apps/client/package.json | 2 +- apps/server/package.json | 2 +- pnpm-lock.yaml | 18 ++++++++++-------- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/apps/client/package.json b/apps/client/package.json index 6bc7f10f2..e2e09e989 100644 --- a/apps/client/package.json +++ b/apps/client/package.json @@ -37,7 +37,7 @@ "bootstrap": "5.3.8", "boxicons": "2.1.4", "color": "5.0.2", - "dayjs": "1.11.18", + "dayjs": "1.11.19", "dayjs-plugin-utc": "0.1.2", "debounce": "2.2.0", "draggabilly": "3.0.0", diff --git a/apps/server/package.json b/apps/server/package.json index ed536368d..6c6754f0c 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -78,7 +78,7 @@ "compression": "1.8.1", "cookie-parser": "1.4.7", "csrf-csrf": "3.2.2", - "dayjs": "1.11.18", + "dayjs": "1.11.19", "debounce": "2.2.0", "debug": "4.4.3", "ejs": "3.1.10", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..f9b4c3d94 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -194,8 +194,8 @@ importers: specifier: 5.0.2 version: 5.0.2 dayjs: - specifier: 1.11.18 - version: 1.11.18 + specifier: 1.11.19 + version: 1.11.19 dayjs-plugin-utc: specifier: 0.1.2 version: 0.1.2 @@ -610,8 +610,8 @@ importers: specifier: 3.2.2 version: 3.2.2 dayjs: - specifier: 1.11.18 - version: 1.11.18 + specifier: 1.11.19 + version: 1.11.19 debounce: specifier: 2.2.0 version: 2.2.0 @@ -7005,8 +7005,8 @@ packages: dayjs-plugin-utc@0.1.2: resolution: {integrity: sha512-ExERH5o3oo6jFOdkvMP3gytTCQ9Ksi5PtylclJWghr7k7m3o2U5QrwtdiJkOxLOH4ghr0EKhpqGefzGz1VvVJg==} - dayjs@1.11.18: - resolution: {integrity: sha512-zFBQ7WFRvVRhKcWoUh+ZA1g2HVgUbsZm9sbddh8EC5iv93sui8DVVz1Npvz+r6meo9VKfa8NyLWBsQK1VvIKPA==} + dayjs@1.11.19: + resolution: {integrity: sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==} de-indent@1.0.2: resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} @@ -15047,6 +15047,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -22155,7 +22157,7 @@ snapshots: dayjs-plugin-utc@0.1.2: {} - dayjs@1.11.18: {} + dayjs@1.11.19: {} de-indent@1.0.2: {} @@ -25713,7 +25715,7 @@ snapshots: d3: 7.9.0 d3-sankey: 0.12.3 dagre-d3-es: 7.0.13 - dayjs: 1.11.18 + dayjs: 1.11.19 dompurify: 3.2.5 katex: 0.16.25 khroma: 2.1.0 From 8f8302c4a37417a03529ade226a12d5aaf50c22e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:56:54 +0000 Subject: [PATCH 030/136] fix(deps): update dependency react-i18next to v16.2.3 --- apps/client/package.json | 2 +- apps/website/package.json | 2 +- pnpm-lock.yaml | 18 +++++++++++------- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/apps/client/package.json b/apps/client/package.json index 6bc7f10f2..23d058ad0 100644 --- a/apps/client/package.json +++ b/apps/client/package.json @@ -59,7 +59,7 @@ "normalize.css": "8.0.1", "panzoom": "9.4.3", "preact": "10.27.2", - "react-i18next": "16.2.1", + "react-i18next": "16.2.3", "reveal.js": "5.2.1", "svg-pan-zoom": "3.6.2", "tabulator-tables": "6.3.1", diff --git a/apps/website/package.json b/apps/website/package.json index cf27abca5..d0ec91a7d 100644 --- a/apps/website/package.json +++ b/apps/website/package.json @@ -14,7 +14,7 @@ "preact": "10.27.2", "preact-iso": "2.11.0", "preact-render-to-string": "6.6.3", - "react-i18next": "16.2.1" + "react-i18next": "16.2.3" }, "devDependencies": { "@preact/preset-vite": "2.10.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..289d4cc12 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -260,8 +260,8 @@ importers: specifier: 10.27.2 version: 10.27.2 react-i18next: - specifier: 16.2.1 - version: 16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3) + specifier: 16.2.3 + version: 16.2.3(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3) reveal.js: specifier: 5.2.1 version: 5.2.1 @@ -796,8 +796,8 @@ importers: specifier: 6.6.3 version: 6.6.3(preact@10.27.2) react-i18next: - specifier: 16.2.1 - version: 16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3) + specifier: 16.2.3 + version: 16.2.3(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3) devDependencies: '@preact/preset-vite': specifier: 2.10.2 @@ -11779,8 +11779,8 @@ packages: peerDependencies: react: ^19.1.0 - react-i18next@16.2.1: - resolution: {integrity: sha512-z7TVwd8q4AjFo2n7oOwzNusY7xVL4uHykwX1zZRvasUQnmnXlp7Z1FZqXvhK/6hQaCvWTZmZW1bMaUWKowtvVw==} + react-i18next@16.2.3: + resolution: {integrity: sha512-O0t2zvmIz7nHWKNfIL+O/NTIbpTaOPY0vZov779hegbep3IZ+xcqkeVPKWBSXwzdkiv77q8zmq9toKIUys1x3A==} peerDependencies: i18next: '>= 25.5.2' react: '>= 16.8.0' @@ -15047,6 +15047,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15299,6 +15301,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -27899,7 +27903,7 @@ snapshots: react: 16.14.0 scheduler: 0.26.0 - react-i18next@16.2.1(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3): + react-i18next@16.2.3(i18next@25.6.0(typescript@5.9.3))(react-dom@19.1.0(react@16.14.0))(react@16.14.0)(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.4 html-parse-stringify: 3.0.1 From ffc9e715ef19a9b00e76683536cf1c73ae8d01ec Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:57:40 +0000 Subject: [PATCH 031/136] chore(deps): update dependency @anthropic-ai/sdk to v0.68.0 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index ed536368d..3f7276041 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -30,7 +30,7 @@ "node-html-parser": "7.0.1" }, "devDependencies": { - "@anthropic-ai/sdk": "0.67.0", + "@anthropic-ai/sdk": "0.68.0", "@braintree/sanitize-url": "7.1.1", "@electron/remote": "2.1.3", "@preact/preset-vite": "2.10.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..95b51666c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -466,8 +466,8 @@ importers: version: 7.0.1 devDependencies: '@anthropic-ai/sdk': - specifier: 0.67.0 - version: 0.67.0(zod@4.1.12) + specifier: 0.68.0 + version: 0.68.0(zod@4.1.12) '@braintree/sanitize-url': specifier: 7.1.1 version: 7.1.1 @@ -1415,8 +1415,8 @@ packages: '@antfu/utils@9.2.0': resolution: {integrity: sha512-Oq1d9BGZakE/FyoEtcNeSwM7MpDO2vUBi11RWBZXf75zPsbUVWmUs03EqkRFrcgbXyKTas0BdZWC1wcuSoqSAw==} - '@anthropic-ai/sdk@0.67.0': - resolution: {integrity: sha512-Buxbf6jYJ+pPtfCgXe1pcFtZmdXPrbdqhBjiscFt9irS1G0hCsmR/fPA+DwKTk4GPjqeNnnCYNecXH6uVZ4G/A==} + '@anthropic-ai/sdk@0.68.0': + resolution: {integrity: sha512-SMYAmbbiprG8k1EjEPMTwaTqssDT7Ae+jxcR5kWXiqTlbwMR2AthXtscEVWOHkRfyAV5+y3PFYTJRNa3OJWIEw==} hasBin: true peerDependencies: zod: ^3.25.0 || ^4.0.0 @@ -14249,7 +14249,7 @@ snapshots: '@antfu/utils@9.2.0': {} - '@anthropic-ai/sdk@0.67.0(zod@4.1.12)': + '@anthropic-ai/sdk@0.68.0(zod@4.1.12)': dependencies: json-schema-to-ts: 3.1.1 optionalDependencies: From 79290633b10ddd2b149ae36313e957bec51bb773 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:58:25 +0000 Subject: [PATCH 032/136] chore(deps): update dependency electron to v38.5.0 --- apps/desktop/package.json | 2 +- apps/edit-docs/package.json | 2 +- apps/server/package.json | 2 +- pnpm-lock.yaml | 30 +++++++++++++++++------------- 4 files changed, 20 insertions(+), 16 deletions(-) diff --git a/apps/desktop/package.json b/apps/desktop/package.json index a59f17e12..5cf38b041 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -35,7 +35,7 @@ "@triliumnext/commons": "workspace:*", "@triliumnext/server": "workspace:*", "copy-webpack-plugin": "13.0.1", - "electron": "38.4.0", + "electron": "38.5.0", "@electron-forge/cli": "7.10.2", "@electron-forge/maker-deb": "7.10.2", "@electron-forge/maker-dmg": "7.10.2", diff --git a/apps/edit-docs/package.json b/apps/edit-docs/package.json index f47db844c..cc664e81d 100644 --- a/apps/edit-docs/package.json +++ b/apps/edit-docs/package.json @@ -12,7 +12,7 @@ "@triliumnext/desktop": "workspace:*", "@types/fs-extra": "11.0.4", "copy-webpack-plugin": "13.0.1", - "electron": "38.4.0", + "electron": "38.5.0", "fs-extra": "11.3.2" }, "scripts": { diff --git a/apps/server/package.json b/apps/server/package.json index ed536368d..cb2e0e7ec 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -82,7 +82,7 @@ "debounce": "2.2.0", "debug": "4.4.3", "ejs": "3.1.10", - "electron": "38.4.0", + "electron": "38.5.0", "electron-debug": "4.1.0", "electron-window-state": "5.0.3", "escape-html": "1.0.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..90fb1f345 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -334,7 +334,7 @@ importers: dependencies: '@electron/remote': specifier: 2.1.3 - version: 2.1.3(electron@38.4.0) + version: 2.1.3(electron@38.5.0) better-sqlite3: specifier: 12.4.1 version: 12.4.1 @@ -391,8 +391,8 @@ importers: specifier: 13.0.1 version: 13.0.1(webpack@5.101.3(esbuild@0.25.11)) electron: - specifier: 38.4.0 - version: 38.4.0 + specifier: 38.5.0 + version: 38.5.0 prebuild-install: specifier: 7.1.3 version: 7.1.3 @@ -447,8 +447,8 @@ importers: specifier: 13.0.1 version: 13.0.1(webpack@5.101.3(esbuild@0.25.11)) electron: - specifier: 38.4.0 - version: 38.4.0 + specifier: 38.5.0 + version: 38.5.0 fs-extra: specifier: 11.3.2 version: 11.3.2 @@ -473,7 +473,7 @@ importers: version: 7.1.1 '@electron/remote': specifier: 2.1.3 - version: 2.1.3(electron@38.4.0) + version: 2.1.3(electron@38.5.0) '@preact/preset-vite': specifier: 2.10.2 version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.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)) @@ -622,8 +622,8 @@ importers: specifier: 3.1.10 version: 3.1.10 electron: - specifier: 38.4.0 - version: 38.4.0 + specifier: 38.5.0 + version: 38.5.0 electron-debug: specifier: 4.1.0 version: 4.1.0 @@ -7386,8 +7386,8 @@ packages: resolution: {integrity: sha512-bO3y10YikuUwUuDUQRM4KfwNkKhnpVO7IPdbsrejwN9/AABJzzTQ4GeHwyzNSrVO+tEH3/Np255a3sVZpZDjvg==} engines: {node: '>=8.0.0'} - electron@38.4.0: - resolution: {integrity: sha512-9CsXKbGf2qpofVe2pQYSgom2E//zLDJO2rGLLbxgy9tkdTOs7000Gte+d/PUtzLjI/DS95jDK0ojYAeqjLvpYg==} + electron@38.5.0: + resolution: {integrity: sha512-dbC7V+eZweerYMJfxQldzHOg37a1VdNMCKxrJxlkp3cA30gOXtXSg4ZYs07L5+QwI19WOy1uyvtEUgbw1RRsCQ==} engines: {node: '>= 12.20.55'} hasBin: true @@ -15047,6 +15047,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15299,6 +15301,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -16641,9 +16645,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@electron/remote@2.1.3(electron@38.4.0)': + '@electron/remote@2.1.3(electron@38.5.0)': dependencies: - electron: 38.4.0 + electron: 38.5.0 '@electron/universal@2.0.2': dependencies: @@ -22580,7 +22584,7 @@ snapshots: - supports-color optional: true - electron@38.4.0: + electron@38.5.0: dependencies: '@electron/get': 2.0.3 '@types/node': 22.18.12 From 35e98addc80559d19293055f4cf5a37c6a1a1667 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 01:59:58 +0000 Subject: [PATCH 033/136] chore(deps): update dependency express-rate-limit to v8.2.1 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index ed536368d..5e3d7b896 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -89,7 +89,7 @@ "express": "5.1.0", "express-http-proxy": "2.1.2", "express-openid-connect": "2.19.2", - "express-rate-limit": "8.1.0", + "express-rate-limit": "8.2.1", "express-session": "1.18.2", "file-uri-to-path": "2.0.0", "fs-extra": "11.3.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..7499f6511 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -643,8 +643,8 @@ importers: specifier: 2.19.2 version: 2.19.2(express@5.1.0) express-rate-limit: - specifier: 8.1.0 - version: 8.1.0(express@5.1.0) + specifier: 8.2.1 + version: 8.2.1(express@5.1.0) express-session: specifier: 1.18.2 version: 1.18.2 @@ -7774,8 +7774,8 @@ packages: peerDependencies: express: '>= 4.17.0' - express-rate-limit@8.1.0: - resolution: {integrity: sha512-4nLnATuKupnmwqiJc27b4dCFmB/T60ExgmtDD7waf4LdrbJ8CPZzZRHYErDYNhoz+ql8fUdYwM/opf90PoPAQA==} + express-rate-limit@8.2.1: + resolution: {integrity: sha512-PCZEIEIxqwhzw4KF0n7QF4QqruVTcF73O5kFKUnGOyjbCCgizBBiFaYpd/fnBLUMPw/BWw9OsiN7GgrNYr7j6g==} engines: {node: '>= 16'} peerDependencies: express: '>= 4.11' @@ -23222,7 +23222,7 @@ snapshots: transitivePeerDependencies: - supports-color - express-rate-limit@8.1.0(express@5.1.0): + express-rate-limit@8.2.1(express@5.1.0): dependencies: express: 5.1.0 ip-address: 10.0.1 From 1fec5bb564698e907de9ffc58841c5db8d185a6c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 02:00:49 +0000 Subject: [PATCH 034/136] chore(deps): update dependency node-abi to v4.17.0 --- package.json | 2 +- pnpm-lock.yaml | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index bc9283a4b..eac1aa45d 100644 --- a/package.json +++ b/package.json @@ -104,7 +104,7 @@ "on-headers@<1.1.0": ">=1.1.0", "form-data@>=4.0.0 <4.0.4": ">=4.0.4", "form-data@>=3.0.0 <3.0.4": ">=3.0.4", - "node-abi": "4.15.0" + "node-abi": "4.17.0" }, "ignoredBuiltDependencies": [ "sqlite3" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..1c3ddc704 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,7 +20,7 @@ overrides: on-headers@<1.1.0: '>=1.1.0' form-data@>=4.0.0 <4.0.4: '>=4.0.4' form-data@>=3.0.0 <3.0.4: '>=3.0.4' - node-abi: 4.15.0 + node-abi: 4.17.0 patchedDependencies: '@ckeditor/ckeditor5-code-block': @@ -10174,8 +10174,8 @@ packages: nice-try@1.0.5: resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} - node-abi@4.15.0: - resolution: {integrity: sha512-w5n9oW45LIgHXqDhA2tL4/uzjeussOn0c5WgWQT48xMbk49+kTlVgZjaEyCBuvS1AP+HuizfiAKGZwIYsILGcw==} + node-abi@4.17.0: + resolution: {integrity: sha512-ljZ7PiChMA2O3sGPX5/bpBhW0O9rXn+orb2xo3Z0vleSlil7G65WZjSFjmIeAtHZHa2GXiTOMdFCsiyImMEIMg==} engines: {node: '>=22.12.0'} node-addon-api@7.1.1: @@ -16611,7 +16611,7 @@ snapshots: detect-libc: 2.1.1 fs-extra: 10.1.0 got: 11.8.6 - node-abi: 4.15.0 + node-abi: 4.17.0 node-api-version: 0.2.1 ora: 5.4.1 read-binary-file-arch: 1.0.6 @@ -16630,7 +16630,7 @@ snapshots: detect-libc: 2.0.4 got: 11.8.6 graceful-fs: 4.2.11 - node-abi: 4.15.0 + node-abi: 4.17.0 node-api-version: 0.2.1 node-gyp: 11.2.0 ora: 5.4.1 @@ -26249,7 +26249,7 @@ snapshots: nice-try@1.0.5: {} - node-abi@4.15.0: + node-abi@4.17.0: dependencies: semver: 7.7.3 @@ -27704,7 +27704,7 @@ snapshots: minimist: 1.2.8 mkdirp-classic: 0.5.3 napi-build-utils: 2.0.0 - node-abi: 4.15.0 + node-abi: 4.17.0 pump: 3.0.3 rc: 1.2.8 simple-get: 4.0.1 From a1d86cef5841a108d2fabab4376d8fcaac08ff95 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 02:00:54 +0000 Subject: [PATCH 035/136] chore(deps): update dependency rimraf to v6.1.0 --- _regroup/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_regroup/package.json b/_regroup/package.json index 0b2a759a9..148d1c461 100644 --- a/_regroup/package.json +++ b/_regroup/package.json @@ -47,7 +47,7 @@ "jsdoc": "4.0.5", "lorem-ipsum": "2.0.8", "rcedit": "4.0.1", - "rimraf": "6.0.1", + "rimraf": "6.1.0", "tslib": "2.8.1", "typedoc": "0.28.14", "typedoc-plugin-missing-exports": "4.1.2" From b7dd806d075350bf021419fb18aad5c298e48a22 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 02:01:05 +0000 Subject: [PATCH 036/136] chore(deps): update pnpm to v10.20.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index bc9283a4b..06ec7c9c4 100644 --- a/package.json +++ b/package.json @@ -81,7 +81,7 @@ "url": "https://github.com/TriliumNext/Trilium/issues" }, "homepage": "https://triliumnotes.org", - "packageManager": "pnpm@10.19.0", + "packageManager": "pnpm@10.20.0", "pnpm": { "patchedDependencies": { "@ckeditor/ckeditor5-mention": "patches/@ckeditor__ckeditor5-mention.patch", From 938c6e356b90e46b6992a83cc686612b6d70f06c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 02:01:50 +0000 Subject: [PATCH 037/136] fix(deps): update dependency eslint-linter-browserify to v9.39.0 --- packages/codemirror/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/codemirror/package.json b/packages/codemirror/package.json index 48485c005..dfb44d686 100644 --- a/packages/codemirror/package.json +++ b/packages/codemirror/package.json @@ -50,6 +50,6 @@ "codemirror-lang-elixir": "4.0.0", "codemirror-lang-hcl": "0.1.0", "codemirror-lang-mermaid": "0.5.0", - "eslint-linter-browserify": "9.38.0" + "eslint-linter-browserify": "9.39.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..f3bebe0d0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1301,8 +1301,8 @@ importers: specifier: 0.5.0 version: 0.5.0 eslint-linter-browserify: - specifier: 9.38.0 - version: 9.38.0 + specifier: 9.39.0 + version: 9.39.0 packages/commons: {} @@ -7601,8 +7601,8 @@ packages: peerDependencies: eslint: '>=7.0.0' - eslint-linter-browserify@9.38.0: - resolution: {integrity: sha512-uOR+eJFM+WQyyZAGeazz8D3XiS0a26bIK/uHSFZWQ7H8UK7hrUpHzMfcGZSzY1icM86LYCPhV3jYkVePWLjQGA==} + eslint-linter-browserify@9.39.0: + resolution: {integrity: sha512-SmFk1DwXcC+p2IjHAouYjjJcAKAiSMlMrJgc8w2s1W3D00FM2sC6SHeCd8Axy1T5sB8oMVMt23GuCun8/UFo1Q==} eslint-plugin-ckeditor5-rules@12.2.0: resolution: {integrity: sha512-WgQP9aZo1N7bIDwwf2Wsnd0RpL20MAVxEehhYoFWy7HAMAnV3IliKuU3dsFA35O8cK4q7eKz7FiObwSRAfttQA==} @@ -22983,7 +22983,7 @@ snapshots: dependencies: eslint: 9.38.0(jiti@2.6.1) - eslint-linter-browserify@9.38.0: {} + eslint-linter-browserify@9.39.0: {} eslint-plugin-ckeditor5-rules@12.2.0: dependencies: From 89585e38ceb18c10b1573abcf5c25430e889fbd3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 02:03:29 +0000 Subject: [PATCH 038/136] fix(deps): update eslint monorepo to v9.39.0 --- _regroup/package.json | 2 +- apps/client/package.json | 2 +- apps/website/package.json | 2 +- package.json | 2 +- packages/ckeditor5-admonition/package.json | 2 +- packages/ckeditor5-footnotes/package.json | 2 +- .../ckeditor5-keyboard-marker/package.json | 2 +- packages/ckeditor5-math/package.json | 2 +- packages/ckeditor5-mermaid/package.json | 2 +- packages/share-theme/package.json | 2 +- pnpm-lock.yaml | 232 +++++++++--------- 11 files changed, 127 insertions(+), 125 deletions(-) diff --git a/_regroup/package.json b/_regroup/package.json index 0b2a759a9..b98ef1ad3 100644 --- a/_regroup/package.json +++ b/_regroup/package.json @@ -41,7 +41,7 @@ "@types/node": "24.9.1", "@types/yargs": "17.0.34", "@vitest/coverage-v8": "3.2.4", - "eslint": "9.38.0", + "eslint": "9.39.0", "eslint-plugin-simple-import-sort": "12.1.1", "esm": "3.2.25", "jsdoc": "4.0.5", diff --git a/apps/client/package.json b/apps/client/package.json index 6bc7f10f2..35199c6d4 100644 --- a/apps/client/package.json +++ b/apps/client/package.json @@ -15,7 +15,7 @@ "circular-deps": "dpdm -T src/**/*.ts --tree=false --warning=false --skip-dynamic-imports=circular" }, "dependencies": { - "@eslint/js": "9.38.0", + "@eslint/js": "9.39.0", "@excalidraw/excalidraw": "0.18.0", "@fullcalendar/core": "6.1.19", "@fullcalendar/daygrid": "6.1.19", diff --git a/apps/website/package.json b/apps/website/package.json index cf27abca5..2181d7e8b 100644 --- a/apps/website/package.json +++ b/apps/website/package.json @@ -18,7 +18,7 @@ }, "devDependencies": { "@preact/preset-vite": "2.10.2", - "eslint": "9.38.0", + "eslint": "9.39.0", "eslint-config-preact": "2.0.0", "typescript": "5.9.3", "user-agent-data-types": "0.4.2", diff --git a/package.json b/package.json index bc9283a4b..af3c9f8a9 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "cross-env": "10.1.0", "dpdm": "3.14.0", "esbuild": "0.25.11", - "eslint": "9.38.0", + "eslint": "9.39.0", "eslint-config-prettier": "10.1.8", "eslint-plugin-playwright": "2.2.2", "eslint-plugin-react-hooks": "7.0.1", diff --git a/packages/ckeditor5-admonition/package.json b/packages/ckeditor5-admonition/package.json index 1413fec20..bc32ffc98 100644 --- a/packages/ckeditor5-admonition/package.json +++ b/packages/ckeditor5-admonition/package.json @@ -29,7 +29,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.38.0", + "eslint": "9.39.0", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/ckeditor5-footnotes/package.json b/packages/ckeditor5-footnotes/package.json index 786cb2e77..2835113b1 100644 --- a/packages/ckeditor5-footnotes/package.json +++ b/packages/ckeditor5-footnotes/package.json @@ -30,7 +30,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.38.0", + "eslint": "9.39.0", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/ckeditor5-keyboard-marker/package.json b/packages/ckeditor5-keyboard-marker/package.json index 8fc80dd33..cfbef699b 100644 --- a/packages/ckeditor5-keyboard-marker/package.json +++ b/packages/ckeditor5-keyboard-marker/package.json @@ -32,7 +32,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.38.0", + "eslint": "9.39.0", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/ckeditor5-math/package.json b/packages/ckeditor5-math/package.json index fca16801d..97573e4aa 100644 --- a/packages/ckeditor5-math/package.json +++ b/packages/ckeditor5-math/package.json @@ -33,7 +33,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.38.0", + "eslint": "9.39.0", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/ckeditor5-mermaid/package.json b/packages/ckeditor5-mermaid/package.json index 246cc41c5..c924a95b6 100644 --- a/packages/ckeditor5-mermaid/package.json +++ b/packages/ckeditor5-mermaid/package.json @@ -32,7 +32,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.38.0", + "eslint": "9.39.0", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/share-theme/package.json b/packages/share-theme/package.json index c03ebc044..f9f920751 100644 --- a/packages/share-theme/package.json +++ b/packages/share-theme/package.json @@ -37,7 +37,7 @@ "@typescript-eslint/parser": "8.46.2", "dotenv": "17.2.3", "esbuild": "0.25.11", - "eslint": "9.38.0", + "eslint": "9.39.0", "highlight.js": "11.11.1", "typescript": "5.9.3" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index df172fbba..a94c281bd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -74,17 +74,17 @@ importers: specifier: 0.25.11 version: 0.25.11 eslint: - specifier: 9.38.0 - version: 9.38.0(jiti@2.6.1) + specifier: 9.39.0 + version: 9.39.0(jiti@2.6.1) eslint-config-prettier: specifier: 10.1.8 - version: 10.1.8(eslint@9.38.0(jiti@2.6.1)) + version: 10.1.8(eslint@9.39.0(jiti@2.6.1)) eslint-plugin-playwright: specifier: 2.2.2 - version: 2.2.2(eslint@9.38.0(jiti@2.6.1)) + version: 2.2.2(eslint@9.39.0(jiti@2.6.1)) eslint-plugin-react-hooks: specifier: 7.0.1 - version: 7.0.1(eslint@9.38.0(jiti@2.6.1)) + version: 7.0.1(eslint@9.39.0(jiti@2.6.1)) happy-dom: specifier: ~20.0.0 version: 20.0.8 @@ -111,7 +111,7 @@ importers: version: 5.9.3 typescript-eslint: specifier: 8.46.2 - version: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) upath: specifier: 2.0.1 version: 2.0.1 @@ -128,8 +128,8 @@ importers: apps/client: dependencies: '@eslint/js': - specifier: 9.38.0 - version: 9.38.0 + specifier: 9.39.0 + version: 9.39.0 '@excalidraw/excalidraw': specifier: 0.18.0 version: 0.18.0(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0) @@ -803,11 +803,11 @@ importers: specifier: 2.10.2 version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.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)) eslint: - specifier: 9.38.0 - version: 9.38.0(jiti@2.6.1) + specifier: 9.39.0 + version: 9.39.0(jiti@2.6.1) eslint-config-preact: specifier: 2.0.0 - version: 2.0.0(eslint@9.38.0(jiti@2.6.1)) + version: 2.0.0(eslint@9.39.0(jiti@2.6.1)) typescript: specifier: 5.9.3 version: 5.9.3 @@ -862,10 +862,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -876,11 +876,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.38.0 - version: 9.38.0(jiti@2.6.1) + specifier: 9.39.0 + version: 9.39.0(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -922,10 +922,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -936,11 +936,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.38.0 - version: 9.38.0(jiti@2.6.1) + specifier: 9.39.0 + version: 9.39.0(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -982,10 +982,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -996,11 +996,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.38.0 - version: 9.38.0(jiti@2.6.1) + specifier: 9.39.0 + version: 9.39.0(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -1049,10 +1049,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1063,11 +1063,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.38.0 - version: 9.38.0(jiti@2.6.1) + specifier: 9.39.0 + version: 9.39.0(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -1116,10 +1116,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1130,11 +1130,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.38.0 - version: 9.38.0(jiti@2.6.1) + specifier: 9.39.0 + version: 9.39.0(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -1356,10 +1356,10 @@ importers: version: 5.21.1 '@typescript-eslint/eslint-plugin': specifier: 8.46.2 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) dotenv: specifier: 17.2.3 version: 17.2.3 @@ -1367,8 +1367,8 @@ importers: specifier: 0.25.11 version: 0.25.11 eslint: - specifier: 9.38.0 - version: 9.38.0(jiti@2.6.1) + specifier: 9.39.0 + version: 9.39.0(jiti@2.6.1) highlight.js: specifier: 11.11.1 version: 11.11.1 @@ -2631,8 +2631,8 @@ packages: resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/config-helpers@0.4.1': - resolution: {integrity: sha512-csZAzkNhsgwb0I/UAV6/RGFTbiakPCf0ZrGmrIxQpYvGZ00PhTkSnyKNolphgIvmnJeGw6rcGVEXfTzUnFuEvw==} + '@eslint/config-helpers@0.4.2': + resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/core@0.14.0': @@ -2643,16 +2643,16 @@ packages: resolution: {integrity: sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/core@0.16.0': - resolution: {integrity: sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==} + '@eslint/core@0.17.0': + resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/eslintrc@3.3.1': resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.38.0': - resolution: {integrity: sha512-UZ1VpFvXf9J06YG9xQBdnzU+kthors6KjhMAl6f4gH4usHyh31rUf2DLGInT8RFYIReYXNSydgPY0V2LuWgl7A==} + '@eslint/js@9.39.0': + resolution: {integrity: sha512-BIhe0sW91JGPiaF1mOuPy5v8NflqfjIcDNpC+LbW9f609WVRX1rArrhi6Z2ymvrAry9jw+5POTj4t2t62o8Bmw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/markdown@6.6.0': @@ -2667,8 +2667,8 @@ packages: resolution: {integrity: sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.4.0': - resolution: {integrity: sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==} + '@eslint/plugin-kit@0.4.1': + resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@excalidraw/excalidraw@0.18.0': @@ -7662,8 +7662,8 @@ packages: resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.38.0: - resolution: {integrity: sha512-t5aPOpmtJcZcz5UJyY2GbvpDlsK5E8JqRqoKtfiKE3cNh437KIqfJr3A3AKf5k64NPx6d0G3dno6XDY05PqPtw==} + eslint@9.39.0: + resolution: {integrity: sha512-iy2GE3MHrYTL5lrCtMZ0X1KLEKKUjmK0kzwcnefhR66txcEmXZD2YWgR5GNdcEwkNx3a0siYkSvl0vIC+Svjmg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -14691,11 +14691,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/eslint-parser@7.28.4(@babel/core@7.28.0)(eslint@9.38.0(jiti@2.6.1))': + '@babel/eslint-parser@7.28.4(@babel/core@7.28.0)(eslint@9.39.0(jiti@2.6.1))': dependencies: '@babel/core': 7.28.0 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) eslint-visitor-keys: 2.1.0 semver: 6.3.1 @@ -15299,6 +15299,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -16849,9 +16851,9 @@ snapshots: '@esbuild/win32-x64@0.25.11': optional: true - '@eslint-community/eslint-utils@4.9.0(eslint@9.38.0(jiti@2.6.1))': + '@eslint-community/eslint-utils@4.9.0(eslint@9.39.0(jiti@2.6.1))': dependencies: - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} @@ -16864,9 +16866,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.4.1': + '@eslint/config-helpers@0.4.2': dependencies: - '@eslint/core': 0.16.0 + '@eslint/core': 0.17.0 '@eslint/core@0.14.0': dependencies: @@ -16876,7 +16878,7 @@ snapshots: dependencies: '@types/json-schema': 7.0.15 - '@eslint/core@0.16.0': + '@eslint/core@0.17.0': dependencies: '@types/json-schema': 7.0.15 @@ -16894,7 +16896,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.38.0': {} + '@eslint/js@9.39.0': {} '@eslint/markdown@6.6.0': dependencies: @@ -16916,9 +16918,9 @@ snapshots: '@eslint/core': 0.15.2 levn: 0.4.1 - '@eslint/plugin-kit@0.4.0': + '@eslint/plugin-kit@0.4.1': dependencies: - '@eslint/core': 0.16.0 + '@eslint/core': 0.17.0 levn: 0.4.1 '@excalidraw/excalidraw@0.18.0(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.1.0(react@16.14.0))(react@16.14.0)': @@ -19144,10 +19146,10 @@ snapshots: '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 - '@stylistic/eslint-plugin@4.4.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@stylistic/eslint-plugin@4.4.1(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@typescript-eslint/utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - eslint: 9.38.0(jiti@2.6.1) + '@typescript-eslint/utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.0(jiti@2.6.1) eslint-visitor-keys: 4.2.1 espree: 10.4.0 estraverse: 5.3.0 @@ -19844,15 +19846,15 @@ snapshots: '@types/node': 24.9.1 optional: true - '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/scope-manager': 8.46.2 - '@typescript-eslint/type-utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/type-utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.46.2 - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) graphemer: 1.4.0 ignore: 7.0.5 natural-compare: 1.4.0 @@ -19861,14 +19863,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 8.46.2 '@typescript-eslint/types': 8.46.2 '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.46.2 debug: 4.4.3(supports-color@6.0.0) - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -19891,13 +19893,13 @@ snapshots: dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 8.46.2 '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) - '@typescript-eslint/utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) debug: 4.4.3(supports-color@6.0.0) - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) ts-api-utils: 2.1.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -19921,13 +19923,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/utils@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.38.0(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.0(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.46.2 '@typescript-eslint/types': 8.46.2 '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -22950,38 +22952,38 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-config-ckeditor5@12.2.0(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3): + eslint-config-ckeditor5@12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3): dependencies: - '@eslint/js': 9.38.0 + '@eslint/js': 9.39.0 '@eslint/markdown': 6.6.0 - '@stylistic/eslint-plugin': 4.4.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - eslint: 9.38.0(jiti@2.6.1) + '@stylistic/eslint-plugin': 4.4.1(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.0(jiti@2.6.1) eslint-plugin-ckeditor5-rules: 12.2.0 - eslint-plugin-mocha: 11.2.0(eslint@9.38.0(jiti@2.6.1)) + eslint-plugin-mocha: 11.2.0(eslint@9.39.0(jiti@2.6.1)) globals: 16.4.0 typescript: 5.9.3 - typescript-eslint: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + typescript-eslint: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) transitivePeerDependencies: - supports-color - eslint-config-preact@2.0.0(eslint@9.38.0(jiti@2.6.1)): + eslint-config-preact@2.0.0(eslint@9.39.0(jiti@2.6.1)): dependencies: '@babel/core': 7.28.0 - '@babel/eslint-parser': 7.28.4(@babel/core@7.28.0)(eslint@9.38.0(jiti@2.6.1)) + '@babel/eslint-parser': 7.28.4(@babel/core@7.28.0)(eslint@9.39.0(jiti@2.6.1)) '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.28.0) '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.0) - '@eslint/js': 9.38.0 - eslint: 9.38.0(jiti@2.6.1) - eslint-plugin-compat: 6.0.2(eslint@9.38.0(jiti@2.6.1)) - eslint-plugin-react: 7.37.5(eslint@9.38.0(jiti@2.6.1)) - eslint-plugin-react-hooks: 5.2.0(eslint@9.38.0(jiti@2.6.1)) + '@eslint/js': 9.39.0 + eslint: 9.39.0(jiti@2.6.1) + eslint-plugin-compat: 6.0.2(eslint@9.39.0(jiti@2.6.1)) + eslint-plugin-react: 7.37.5(eslint@9.39.0(jiti@2.6.1)) + eslint-plugin-react-hooks: 5.2.0(eslint@9.39.0(jiti@2.6.1)) globals: 16.4.0 transitivePeerDependencies: - supports-color - eslint-config-prettier@10.1.8(eslint@9.38.0(jiti@2.6.1)): + eslint-config-prettier@10.1.8(eslint@9.39.0(jiti@2.6.1)): dependencies: - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) eslint-linter-browserify@9.38.0: {} @@ -22995,45 +22997,45 @@ snapshots: validate-npm-package-name: 6.0.2 yaml: 2.8.1 - eslint-plugin-compat@6.0.2(eslint@9.38.0(jiti@2.6.1)): + eslint-plugin-compat@6.0.2(eslint@9.39.0(jiti@2.6.1)): dependencies: '@mdn/browser-compat-data': 5.7.6 ast-metadata-inferer: 0.8.1 browserslist: 4.26.2 caniuse-lite: 1.0.30001743 - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) find-up: 5.0.0 globals: 15.15.0 lodash.memoize: 4.1.2 semver: 7.7.2 - eslint-plugin-mocha@11.2.0(eslint@9.38.0(jiti@2.6.1)): + eslint-plugin-mocha@11.2.0(eslint@9.39.0(jiti@2.6.1)): dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.38.0(jiti@2.6.1)) - eslint: 9.38.0(jiti@2.6.1) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.0(jiti@2.6.1)) + eslint: 9.39.0(jiti@2.6.1) globals: 15.15.0 - eslint-plugin-playwright@2.2.2(eslint@9.38.0(jiti@2.6.1)): + eslint-plugin-playwright@2.2.2(eslint@9.39.0(jiti@2.6.1)): dependencies: - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) globals: 13.24.0 - eslint-plugin-react-hooks@5.2.0(eslint@9.38.0(jiti@2.6.1)): + eslint-plugin-react-hooks@5.2.0(eslint@9.39.0(jiti@2.6.1)): dependencies: - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) - eslint-plugin-react-hooks@7.0.1(eslint@9.38.0(jiti@2.6.1)): + eslint-plugin-react-hooks@7.0.1(eslint@9.39.0(jiti@2.6.1)): dependencies: '@babel/core': 7.28.0 '@babel/parser': 7.28.4 - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) hermes-parser: 0.25.1 zod: 4.1.12 zod-validation-error: 3.5.3(zod@4.1.12) transitivePeerDependencies: - supports-color - eslint-plugin-react@7.37.5(eslint@9.38.0(jiti@2.6.1)): + eslint-plugin-react@7.37.5(eslint@9.39.0(jiti@2.6.1)): dependencies: array-includes: 3.1.9 array.prototype.findlast: 1.2.5 @@ -23041,7 +23043,7 @@ snapshots: array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 es-iterator-helpers: 1.2.1 - eslint: 9.38.0(jiti@2.6.1) + eslint: 9.39.0(jiti@2.6.1) estraverse: 5.3.0 hasown: 2.0.2 jsx-ast-utils: 3.3.5 @@ -23071,16 +23073,16 @@ snapshots: eslint-visitor-keys@4.2.1: {} - eslint@9.38.0(jiti@2.6.1): + eslint@9.39.0(jiti@2.6.1): dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.38.0(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.0(jiti@2.6.1)) '@eslint-community/regexpp': 4.12.1 '@eslint/config-array': 0.21.1 - '@eslint/config-helpers': 0.4.1 - '@eslint/core': 0.16.0 + '@eslint/config-helpers': 0.4.2 + '@eslint/core': 0.17.0 '@eslint/eslintrc': 3.3.1 - '@eslint/js': 9.38.0 - '@eslint/plugin-kit': 0.4.0 + '@eslint/js': 9.39.0 + '@eslint/plugin-kit': 0.4.1 '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 @@ -29969,13 +29971,13 @@ snapshots: typedarray@0.0.6: {} - typescript-eslint@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3): + typescript-eslint@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/parser': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/eslint-plugin': 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) - '@typescript-eslint/utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - eslint: 9.38.0(jiti@2.6.1) + '@typescript-eslint/utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color From ef82c3d48b5cc8d67cda3a4c4bd2c7a8645c18c5 Mon Sep 17 00:00:00 2001 From: SiriusXT <1160925501@qq.com> Date: Sun, 2 Nov 2025 16:48:05 +0800 Subject: [PATCH 039/136] fix(electron): port-in-use dialog shown when opening a new window | --- apps/server/src/www.ts | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/apps/server/src/www.ts b/apps/server/src/www.ts index 7f3445312..4149d518b 100644 --- a/apps/server/src/www.ts +++ b/apps/server/src/www.ts @@ -158,14 +158,13 @@ function startHttpServer(app: Express) { // Not all situations require showing an error dialog. When Trilium is already open, // clicking the shortcut, the software icon, or the taskbar icon, or when creating a new window, // should simply focus on the existing window or open a new one, without displaying an error message. - if ("code" in error && error.code == "EADDRINUSE") { - if (process.argv.includes("--new-window") || !app.requestSingleInstanceLock()) { - console.error(message); - process.exit(1); - } + if ("code" in error && error.code === "EADDRINUSE" && (process.argv.includes("--new-window") || !app.requestSingleInstanceLock())) { + console.error(message); + process.exit(1); + } else { + dialog.showErrorBox("Error while initializing the server", message); + process.exit(1); } - dialog.showErrorBox("Error while initializing the server", message); - process.exit(1); }); } else { console.error(message); From d7460e9fe509c0024a61a3159860912bb35fd6fd Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 11:22:29 +0200 Subject: [PATCH 040/136] chore(renovate): ignore legacy Dockerfile from Renovate updates --- renovate.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/renovate.json b/renovate.json index df042296c..ef63cce99 100644 --- a/renovate.json +++ b/renovate.json @@ -17,7 +17,8 @@ "**/node_modules/**", "apps/edit-docs/demo/**", "apps/server/src/assets/doc_notes/**", - "docs/**" + "docs/**", + "apps/server/Dockerfile.legacy" ], "html": { "enabled": false From 738b28c2b38e43a59c57ee6da38253f2518d2f6e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 09:27:32 +0000 Subject: [PATCH 041/136] chore(deps): update dependency esbuild to v0.25.12 --- package.json | 2 +- packages/share-theme/package.json | 2 +- pnpm-lock.yaml | 474 +++++++++++++++++++++++------- 3 files changed, 372 insertions(+), 106 deletions(-) diff --git a/package.json b/package.json index 9b0f63139..4ded641cb 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ "chalk": "5.6.2", "cross-env": "10.1.0", "dpdm": "3.14.0", - "esbuild": "0.25.11", + "esbuild": "0.25.12", "eslint": "9.39.0", "eslint-config-prettier": "10.1.8", "eslint-plugin-playwright": "2.2.2", diff --git a/packages/share-theme/package.json b/packages/share-theme/package.json index f9f920751..5e90f536a 100644 --- a/packages/share-theme/package.json +++ b/packages/share-theme/package.json @@ -36,7 +36,7 @@ "@typescript-eslint/eslint-plugin": "8.46.2", "@typescript-eslint/parser": "8.46.2", "dotenv": "17.2.3", - "esbuild": "0.25.11", + "esbuild": "0.25.12", "eslint": "9.39.0", "highlight.js": "11.11.1", "typescript": "5.9.3" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9bbd150d9..bffe2c1da 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -71,8 +71,8 @@ importers: specifier: 3.14.0 version: 3.14.0 esbuild: - specifier: 0.25.11 - version: 0.25.11 + specifier: 0.25.12 + version: 0.25.12 eslint: specifier: 9.39.0 version: 9.39.0(jiti@2.6.1) @@ -304,7 +304,7 @@ importers: version: 6.3.0 copy-webpack-plugin: specifier: 13.0.1 - version: 13.0.1(webpack@5.101.3(esbuild@0.25.11)) + version: 13.0.1(webpack@5.101.3(esbuild@0.25.12)) happy-dom: specifier: 20.0.8 version: 20.0.8 @@ -356,7 +356,7 @@ importers: devDependencies: '@electron-forge/cli': specifier: 7.10.2 - version: 7.10.2(encoding@0.1.13)(esbuild@0.25.11) + version: 7.10.2(encoding@0.1.13)(esbuild@0.25.12) '@electron-forge/maker-deb': specifier: 7.10.2 version: 7.10.2 @@ -389,7 +389,7 @@ importers: version: 1.0.2 copy-webpack-plugin: specifier: 13.0.1 - version: 13.0.1(webpack@5.101.3(esbuild@0.25.11)) + version: 13.0.1(webpack@5.101.3(esbuild@0.25.12)) electron: specifier: 38.4.0 version: 38.4.0 @@ -445,7 +445,7 @@ importers: version: 11.0.4 copy-webpack-plugin: specifier: 13.0.1 - version: 13.0.1(webpack@5.101.3(esbuild@0.25.11)) + version: 13.0.1(webpack@5.101.3(esbuild@0.25.12)) electron: specifier: 38.4.0 version: 38.4.0 @@ -859,7 +859,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -919,7 +919,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -979,7 +979,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -1040,13 +1040,13 @@ importers: version: 43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3) '@ckeditor/ckeditor5-dev-utils': specifier: 43.1.0 - version: 43.1.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + version: 43.1.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) '@ckeditor/ckeditor5-inspector': specifier: '>=4.1.0' version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -1113,7 +1113,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -1364,8 +1364,8 @@ importers: specifier: 17.2.3 version: 17.2.3 esbuild: - specifier: 0.25.11 - version: 0.25.11 + specifier: 0.25.12 + version: 0.25.12 eslint: specifier: 9.39.0 version: 9.39.0(jiti@2.6.1) @@ -2317,6 +2317,12 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.25.12': + resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.25.10': resolution: {integrity: sha512-LSQa7eDahypv/VO6WKohZGPSJDq5OVOo3UoFR1E4t4Gj1W7zEQMUhI+lo81H+DtB+kP+tDgBp+M4oNCwp6kffg==} engines: {node: '>=18'} @@ -2329,6 +2335,12 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.25.12': + resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.25.10': resolution: {integrity: sha512-dQAxF1dW1C3zpeCDc5KqIYuZ1tgAdRXNoZP7vkBIRtKZPYe2xVr/d3SkirklCHudW1B45tGiUlz2pUWDfbDD4w==} engines: {node: '>=18'} @@ -2341,6 +2353,12 @@ packages: cpu: [arm] os: [android] + '@esbuild/android-arm@0.25.12': + resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.25.10': resolution: {integrity: sha512-MiC9CWdPrfhibcXwr39p9ha1x0lZJ9KaVfvzA0Wxwz9ETX4v5CHfF09bx935nHlhi+MxhA63dKRRQLiVgSUtEg==} engines: {node: '>=18'} @@ -2353,6 +2371,12 @@ packages: cpu: [x64] os: [android] + '@esbuild/android-x64@0.25.12': + resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.25.10': resolution: {integrity: sha512-JC74bdXcQEpW9KkV326WpZZjLguSZ3DfS8wrrvPMHgQOIEIG/sPXEN/V8IssoJhbefLRcRqw6RQH2NnpdprtMA==} engines: {node: '>=18'} @@ -2365,6 +2389,12 @@ packages: cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.25.12': + resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.25.10': resolution: {integrity: sha512-tguWg1olF6DGqzws97pKZ8G2L7Ig1vjDmGTwcTuYHbuU6TTjJe5FXbgs5C1BBzHbJ2bo1m3WkQDbWO2PvamRcg==} engines: {node: '>=18'} @@ -2377,6 +2407,12 @@ packages: cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.25.12': + resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.25.10': resolution: {integrity: sha512-3ZioSQSg1HT2N05YxeJWYR+Libe3bREVSdWhEEgExWaDtyFbbXWb49QgPvFH8u03vUPX10JhJPcz7s9t9+boWg==} engines: {node: '>=18'} @@ -2389,6 +2425,12 @@ packages: cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.25.12': + resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.25.10': resolution: {integrity: sha512-LLgJfHJk014Aa4anGDbh8bmI5Lk+QidDmGzuC2D+vP7mv/GeSN+H39zOf7pN5N8p059FcOfs2bVlrRr4SK9WxA==} engines: {node: '>=18'} @@ -2401,6 +2443,12 @@ packages: cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.25.12': + resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.25.10': resolution: {integrity: sha512-5luJWN6YKBsawd5f9i4+c+geYiVEw20FVW5x0v1kEMWNq8UctFjDiMATBxLvmmHA4bf7F6hTRaJgtghFr9iziQ==} engines: {node: '>=18'} @@ -2413,6 +2461,12 @@ packages: cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.25.12': + resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.25.10': resolution: {integrity: sha512-oR31GtBTFYCqEBALI9r6WxoU/ZofZl962pouZRTEYECvNF/dtXKku8YXcJkhgK/beU+zedXfIzHijSRapJY3vg==} engines: {node: '>=18'} @@ -2425,6 +2479,12 @@ packages: cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.25.12': + resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.25.10': resolution: {integrity: sha512-NrSCx2Kim3EnnWgS4Txn0QGt0Xipoumb6z6sUtl5bOEZIVKhzfyp/Lyw4C1DIYvzeW/5mWYPBFJU3a/8Yr75DQ==} engines: {node: '>=18'} @@ -2437,6 +2497,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.25.12': + resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.25.10': resolution: {integrity: sha512-xoSphrd4AZda8+rUDDfD9J6FUMjrkTz8itpTITM4/xgerAZZcFW7Dv+sun7333IfKxGG8gAq+3NbfEMJfiY+Eg==} engines: {node: '>=18'} @@ -2449,6 +2515,12 @@ packages: cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.25.12': + resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.25.10': resolution: {integrity: sha512-ab6eiuCwoMmYDyTnyptoKkVS3k8fy/1Uvq7Dj5czXI6DF2GqD2ToInBI0SHOp5/X1BdZ26RKc5+qjQNGRBelRA==} engines: {node: '>=18'} @@ -2461,6 +2533,12 @@ packages: cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.25.12': + resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.25.10': resolution: {integrity: sha512-NLinzzOgZQsGpsTkEbdJTCanwA5/wozN9dSgEl12haXJBzMTpssebuXR42bthOF3z7zXFWH1AmvWunUCkBE4EA==} engines: {node: '>=18'} @@ -2473,6 +2551,12 @@ packages: cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.25.12': + resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.25.10': resolution: {integrity: sha512-FE557XdZDrtX8NMIeA8LBJX3dC2M8VGXwfrQWU7LB5SLOajfJIxmSdyL/gU1m64Zs9CBKvm4UAuBp5aJ8OgnrA==} engines: {node: '>=18'} @@ -2485,6 +2569,12 @@ packages: cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.25.12': + resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.25.10': resolution: {integrity: sha512-3BBSbgzuB9ajLoVZk0mGu+EHlBwkusRmeNYdqmznmMc9zGASFjSsxgkNsqmXugpPk00gJ0JNKh/97nxmjctdew==} engines: {node: '>=18'} @@ -2497,6 +2587,12 @@ packages: cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.25.12': + resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.25.10': resolution: {integrity: sha512-QSX81KhFoZGwenVyPoberggdW1nrQZSvfVDAIUXr3WqLRZGZqWk/P4T8p2SP+de2Sr5HPcvjhcJzEiulKgnxtA==} engines: {node: '>=18'} @@ -2509,6 +2605,12 @@ packages: cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.25.12': + resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/netbsd-arm64@0.25.10': resolution: {integrity: sha512-AKQM3gfYfSW8XRk8DdMCzaLUFB15dTrZfnX8WXQoOUpUBQ+NaAFCP1kPS/ykbbGYz7rxn0WS48/81l9hFl3u4A==} engines: {node: '>=18'} @@ -2521,6 +2623,12 @@ packages: cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-arm64@0.25.12': + resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + '@esbuild/netbsd-x64@0.25.10': resolution: {integrity: sha512-7RTytDPGU6fek/hWuN9qQpeGPBZFfB4zZgcz2VK2Z5VpdUxEI8JKYsg3JfO0n/Z1E/6l05n0unDCNc4HnhQGig==} engines: {node: '>=18'} @@ -2533,6 +2641,12 @@ packages: cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.25.12': + resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + '@esbuild/openbsd-arm64@0.25.10': resolution: {integrity: sha512-5Se0VM9Wtq797YFn+dLimf2Zx6McttsH2olUBsDml+lm0GOCRVebRWUvDtkY4BWYv/3NgzS8b/UM3jQNh5hYyw==} engines: {node: '>=18'} @@ -2545,6 +2659,12 @@ packages: cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-arm64@0.25.12': + resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.25.10': resolution: {integrity: sha512-XkA4frq1TLj4bEMB+2HnI0+4RnjbuGZfet2gs/LNs5Hc7D89ZQBHQ0gL2ND6Lzu1+QVkjp3x1gIcPKzRNP8bXw==} engines: {node: '>=18'} @@ -2557,6 +2677,12 @@ packages: cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.25.12': + resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/openharmony-arm64@0.25.10': resolution: {integrity: sha512-AVTSBhTX8Y/Fz6OmIVBip9tJzZEUcY8WLh7I59+upa5/GPhh2/aM6bvOMQySspnCCHvFi79kMtdJS1w0DXAeag==} engines: {node: '>=18'} @@ -2569,6 +2695,12 @@ packages: cpu: [arm64] os: [openharmony] + '@esbuild/openharmony-arm64@0.25.12': + resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + '@esbuild/sunos-x64@0.25.10': resolution: {integrity: sha512-fswk3XT0Uf2pGJmOpDB7yknqhVkJQkAQOcW/ccVOtfx05LkbWOaRAtn5SaqXypeKQra1QaEa841PgrSL9ubSPQ==} engines: {node: '>=18'} @@ -2581,6 +2713,12 @@ packages: cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.25.12': + resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.25.10': resolution: {integrity: sha512-ah+9b59KDTSfpaCg6VdJoOQvKjI33nTaQr4UluQwW7aEwZQsbMCfTmfEO4VyewOxx4RaDT/xCy9ra2GPWmO7Kw==} engines: {node: '>=18'} @@ -2593,6 +2731,12 @@ packages: cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.25.12': + resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.25.10': resolution: {integrity: sha512-QHPDbKkrGO8/cz9LKVnJU22HOi4pxZnZhhA2HYHez5Pz4JeffhDjf85E57Oyco163GnzNCVkZK0b/n4Y0UHcSw==} engines: {node: '>=18'} @@ -2605,6 +2749,12 @@ packages: cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.25.12': + resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.25.10': resolution: {integrity: sha512-9KpxSVFCu0iK1owoez6aC/s/EdUQLDN3adTxGCqxMVhrPDj6bt5dbrHDXUuq+Bs2vATFBBrQS5vdQ/Ed2P+nbw==} engines: {node: '>=18'} @@ -2617,6 +2767,12 @@ packages: cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.25.12': + resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.9.0': resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -7556,6 +7712,11 @@ packages: engines: {node: '>=18'} hasBin: true + esbuild@0.25.12: + resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} + engines: {node: '>=18'} + hasBin: true + escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -14971,8 +15132,6 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-block-quote@47.1.0': dependencies: @@ -15108,6 +15267,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -15152,11 +15313,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@ckeditor/ckeditor5-dev-translations@53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11))': + '@ckeditor/ckeditor5-dev-translations@53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12))': dependencies: '@babel/parser': 7.28.4 '@babel/traverse': 7.28.4 - '@ckeditor/ckeditor5-dev-utils': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + '@ckeditor/ckeditor5-dev-utils': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) chalk: 5.6.2 fs-extra: 11.3.2 glob: 11.0.3 @@ -15174,63 +15335,63 @@ snapshots: - uglify-js - webpack - '@ckeditor/ckeditor5-dev-utils@43.1.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11))': + '@ckeditor/ckeditor5-dev-utils@43.1.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12))': dependencies: '@ckeditor/ckeditor5-dev-translations': 43.1.0 chalk: 3.0.0 cli-cursor: 3.1.0 cli-spinners: 2.9.2 - css-loader: 5.2.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + css-loader: 5.2.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) cssnano: 6.1.2(postcss@8.5.3) del: 5.1.0 - esbuild-loader: 3.0.1(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + esbuild-loader: 3.0.1(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) fs-extra: 11.3.2 is-interactive: 1.0.0 javascript-stringify: 1.6.0 - mini-css-extract-plugin: 2.4.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + mini-css-extract-plugin: 2.4.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) mocha: 7.2.0 postcss: 8.5.3 postcss-import: 14.1.0(postcss@8.5.3) - postcss-loader: 4.3.0(postcss@8.5.3)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + postcss-loader: 4.3.0(postcss@8.5.3)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) postcss-mixins: 9.0.4(postcss@8.5.3) postcss-nesting: 13.0.1(postcss@8.5.3) - raw-loader: 4.0.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + raw-loader: 4.0.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) shelljs: 0.8.5 - style-loader: 2.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) - terser-webpack-plugin: 4.2.3(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + style-loader: 2.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) + terser-webpack-plugin: 4.2.3(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) through2: 3.0.2 transitivePeerDependencies: - bluebird - supports-color - webpack - '@ckeditor/ckeditor5-dev-utils@53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11))': + '@ckeditor/ckeditor5-dev-utils@53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12))': dependencies: - '@ckeditor/ckeditor5-dev-translations': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + '@ckeditor/ckeditor5-dev-translations': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) '@types/postcss-import': 14.0.3 '@types/through2': 2.0.41 chalk: 5.6.2 cli-cursor: 5.0.0 cli-spinners: 3.2.0 - css-loader: 7.1.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + css-loader: 7.1.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) cssnano: 7.1.1(postcss@8.5.6) - esbuild-loader: 4.3.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + esbuild-loader: 4.3.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) fs-extra: 11.3.2 glob: 11.0.3 is-interactive: 2.0.0 - mini-css-extract-plugin: 2.9.4(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + mini-css-extract-plugin: 2.9.4(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) mocha: 11.7.2 pacote: 21.0.1 postcss: 8.5.6 postcss-import: 16.1.1(postcss@8.5.6) - postcss-loader: 8.2.0(postcss@8.5.6)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + postcss-loader: 8.2.0(postcss@8.5.6)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) postcss-mixins: 11.0.3(postcss@8.5.6) postcss-nesting: 13.0.2(postcss@8.5.6) - raw-loader: 4.0.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + raw-loader: 4.0.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) shelljs: 0.10.0 simple-git: 3.28.0 - style-loader: 4.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) - terser-webpack-plugin: 5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + style-loader: 4.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) + terser-webpack-plugin: 5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) through2: 4.0.2 upath: 2.0.1 transitivePeerDependencies: @@ -15299,8 +15460,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -15323,8 +15482,6 @@ snapshots: '@ckeditor/ckeditor5-table': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-emoji@47.1.0': dependencies: @@ -15350,6 +15507,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-engine': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-essentials@47.1.0': dependencies: @@ -15687,30 +15846,30 @@ snapshots: es-toolkit: 1.39.5 protobufjs: 7.5.0 - '@ckeditor/ckeditor5-package-tools@4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.11)(utf-8-validate@6.0.5)': + '@ckeditor/ckeditor5-package-tools@4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5)': dependencies: - '@ckeditor/ckeditor5-dev-translations': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) - '@ckeditor/ckeditor5-dev-utils': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + '@ckeditor/ckeditor5-dev-translations': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) + '@ckeditor/ckeditor5-dev-utils': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) buffer: 6.0.3 chalk: 5.6.2 - css-loader: 5.2.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + css-loader: 5.2.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) fs-extra: 11.3.2 glob: 11.0.3 minimist: 1.2.8 postcss: 8.5.6 - postcss-loader: 4.3.0(postcss@8.5.6)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + postcss-loader: 4.3.0(postcss@8.5.6)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) process: 0.11.10 - raw-loader: 4.0.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) - style-loader: 2.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + raw-loader: 4.0.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) + style-loader: 2.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) stylelint: 16.25.0(typescript@5.0.4) stylelint-config-ckeditor5: 2.0.1(stylelint@16.25.0(typescript@5.9.3)) - terser-webpack-plugin: 5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) - ts-loader: 9.5.4(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + terser-webpack-plugin: 5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) + ts-loader: 9.5.4(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) ts-node: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.0.4) typescript: 5.0.4 upath: 2.0.1 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) - webpack-dev-server: 5.2.2(bufferutil@4.0.9)(utf-8-validate@6.0.5)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) + webpack-dev-server: 5.2.2(bufferutil@4.0.9)(utf-8-validate@6.0.5)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) transitivePeerDependencies: - '@rspack/core' - '@swc/core' @@ -16256,15 +16415,15 @@ snapshots: dependencies: '@digitak/grubber': 3.1.4 chokidar: 3.6.0 - esbuild: 0.25.11 + esbuild: 0.25.12 '@digitak/grubber@3.1.4': {} '@dual-bundle/import-meta-resolve@4.2.1': {} - '@electron-forge/cli@7.10.2(encoding@0.1.13)(esbuild@0.25.11)': + '@electron-forge/cli@7.10.2(encoding@0.1.13)(esbuild@0.25.12)': dependencies: - '@electron-forge/core': 7.10.2(encoding@0.1.13)(esbuild@0.25.11) + '@electron-forge/core': 7.10.2(encoding@0.1.13)(esbuild@0.25.12) '@electron-forge/core-utils': 7.10.2 '@electron-forge/shared-types': 7.10.2 '@electron/get': 3.1.0 @@ -16302,7 +16461,7 @@ snapshots: - bluebird - supports-color - '@electron-forge/core@7.10.2(encoding@0.1.13)(esbuild@0.25.11)': + '@electron-forge/core@7.10.2(encoding@0.1.13)(esbuild@0.25.12)': dependencies: '@electron-forge/core-utils': 7.10.2 '@electron-forge/maker-base': 7.10.2 @@ -16313,7 +16472,7 @@ snapshots: '@electron-forge/template-vite': 7.10.2 '@electron-forge/template-vite-typescript': 7.10.2 '@electron-forge/template-webpack': 7.10.2 - '@electron-forge/template-webpack-typescript': 7.10.2(esbuild@0.25.11) + '@electron-forge/template-webpack-typescript': 7.10.2(esbuild@0.25.12) '@electron-forge/tracer': 7.10.2 '@electron/get': 3.1.0 '@electron/packager': 18.3.6 @@ -16483,13 +16642,13 @@ snapshots: - bluebird - supports-color - '@electron-forge/template-webpack-typescript@7.10.2(esbuild@0.25.11)': + '@electron-forge/template-webpack-typescript@7.10.2(esbuild@0.25.12)': dependencies: '@electron-forge/shared-types': 7.10.2 '@electron-forge/template-base': 7.10.2 fs-extra: 10.1.0 typescript: 5.4.5 - webpack: 5.101.3(esbuild@0.25.11) + webpack: 5.101.3(esbuild@0.25.12) transitivePeerDependencies: - '@swc/core' - bluebird @@ -16701,156 +16860,234 @@ snapshots: '@esbuild/aix-ppc64@0.25.11': optional: true + '@esbuild/aix-ppc64@0.25.12': + optional: true + '@esbuild/android-arm64@0.25.10': optional: true '@esbuild/android-arm64@0.25.11': optional: true + '@esbuild/android-arm64@0.25.12': + optional: true + '@esbuild/android-arm@0.25.10': optional: true '@esbuild/android-arm@0.25.11': optional: true + '@esbuild/android-arm@0.25.12': + optional: true + '@esbuild/android-x64@0.25.10': optional: true '@esbuild/android-x64@0.25.11': optional: true + '@esbuild/android-x64@0.25.12': + optional: true + '@esbuild/darwin-arm64@0.25.10': optional: true '@esbuild/darwin-arm64@0.25.11': optional: true + '@esbuild/darwin-arm64@0.25.12': + optional: true + '@esbuild/darwin-x64@0.25.10': optional: true '@esbuild/darwin-x64@0.25.11': optional: true + '@esbuild/darwin-x64@0.25.12': + optional: true + '@esbuild/freebsd-arm64@0.25.10': optional: true '@esbuild/freebsd-arm64@0.25.11': optional: true + '@esbuild/freebsd-arm64@0.25.12': + optional: true + '@esbuild/freebsd-x64@0.25.10': optional: true '@esbuild/freebsd-x64@0.25.11': optional: true + '@esbuild/freebsd-x64@0.25.12': + optional: true + '@esbuild/linux-arm64@0.25.10': optional: true '@esbuild/linux-arm64@0.25.11': optional: true + '@esbuild/linux-arm64@0.25.12': + optional: true + '@esbuild/linux-arm@0.25.10': optional: true '@esbuild/linux-arm@0.25.11': optional: true + '@esbuild/linux-arm@0.25.12': + optional: true + '@esbuild/linux-ia32@0.25.10': optional: true '@esbuild/linux-ia32@0.25.11': optional: true + '@esbuild/linux-ia32@0.25.12': + optional: true + '@esbuild/linux-loong64@0.25.10': optional: true '@esbuild/linux-loong64@0.25.11': optional: true + '@esbuild/linux-loong64@0.25.12': + optional: true + '@esbuild/linux-mips64el@0.25.10': optional: true '@esbuild/linux-mips64el@0.25.11': optional: true + '@esbuild/linux-mips64el@0.25.12': + optional: true + '@esbuild/linux-ppc64@0.25.10': optional: true '@esbuild/linux-ppc64@0.25.11': optional: true + '@esbuild/linux-ppc64@0.25.12': + optional: true + '@esbuild/linux-riscv64@0.25.10': optional: true '@esbuild/linux-riscv64@0.25.11': optional: true + '@esbuild/linux-riscv64@0.25.12': + optional: true + '@esbuild/linux-s390x@0.25.10': optional: true '@esbuild/linux-s390x@0.25.11': optional: true + '@esbuild/linux-s390x@0.25.12': + optional: true + '@esbuild/linux-x64@0.25.10': optional: true '@esbuild/linux-x64@0.25.11': optional: true + '@esbuild/linux-x64@0.25.12': + optional: true + '@esbuild/netbsd-arm64@0.25.10': optional: true '@esbuild/netbsd-arm64@0.25.11': optional: true + '@esbuild/netbsd-arm64@0.25.12': + optional: true + '@esbuild/netbsd-x64@0.25.10': optional: true '@esbuild/netbsd-x64@0.25.11': optional: true + '@esbuild/netbsd-x64@0.25.12': + optional: true + '@esbuild/openbsd-arm64@0.25.10': optional: true '@esbuild/openbsd-arm64@0.25.11': optional: true + '@esbuild/openbsd-arm64@0.25.12': + optional: true + '@esbuild/openbsd-x64@0.25.10': optional: true '@esbuild/openbsd-x64@0.25.11': optional: true + '@esbuild/openbsd-x64@0.25.12': + optional: true + '@esbuild/openharmony-arm64@0.25.10': optional: true '@esbuild/openharmony-arm64@0.25.11': optional: true + '@esbuild/openharmony-arm64@0.25.12': + optional: true + '@esbuild/sunos-x64@0.25.10': optional: true '@esbuild/sunos-x64@0.25.11': optional: true + '@esbuild/sunos-x64@0.25.12': + optional: true + '@esbuild/win32-arm64@0.25.10': optional: true '@esbuild/win32-arm64@0.25.11': optional: true + '@esbuild/win32-arm64@0.25.12': + optional: true + '@esbuild/win32-ia32@0.25.10': optional: true '@esbuild/win32-ia32@0.25.11': optional: true + '@esbuild/win32-ia32@0.25.12': + optional: true + '@esbuild/win32-x64@0.25.10': optional: true '@esbuild/win32-x64@0.25.11': optional: true + '@esbuild/win32-x64@0.25.12': + optional: true + '@eslint-community/eslint-utils@4.9.0(eslint@9.39.0(jiti@2.6.1))': dependencies: eslint: 9.39.0(jiti@2.6.1) @@ -21515,14 +21752,14 @@ snapshots: is-what: 3.14.1 optional: true - copy-webpack-plugin@13.0.1(webpack@5.101.3(esbuild@0.25.11)): + copy-webpack-plugin@13.0.1(webpack@5.101.3(esbuild@0.25.12)): dependencies: glob-parent: 6.0.2 normalize-path: 3.0.0 schema-utils: 4.3.2 serialize-javascript: 6.0.2 tinyglobby: 0.2.14 - webpack: 5.101.3(esbuild@0.25.11) + webpack: 5.101.3(esbuild@0.25.12) core-util-is@1.0.3: {} @@ -21631,7 +21868,7 @@ snapshots: css-functions-list@3.2.3: {} - css-loader@5.2.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + css-loader@5.2.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: icss-utils: 5.1.0(postcss@8.5.6) loader-utils: 2.0.4 @@ -21643,9 +21880,9 @@ snapshots: postcss-value-parser: 4.2.0 schema-utils: 3.3.0 semver: 7.7.3 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) - css-loader@7.1.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + css-loader@7.1.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: icss-utils: 5.1.0(postcss@8.5.6) postcss: 8.5.6 @@ -21656,7 +21893,7 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.7.3 optionalDependencies: - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) css-select@4.3.0: dependencies: @@ -22858,20 +23095,20 @@ snapshots: es6-promise@4.2.8: {} - esbuild-loader@3.0.1(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + esbuild-loader@3.0.1(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: - esbuild: 0.25.11 + esbuild: 0.25.12 get-tsconfig: 4.10.1 loader-utils: 2.0.4 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) webpack-sources: 1.4.3 - esbuild-loader@4.3.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + esbuild-loader@4.3.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: - esbuild: 0.25.11 + esbuild: 0.25.12 get-tsconfig: 4.10.1 loader-utils: 2.0.4 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) webpack-sources: 1.4.3 esbuild@0.25.10: @@ -22932,6 +23169,35 @@ snapshots: '@esbuild/win32-ia32': 0.25.11 '@esbuild/win32-x64': 0.25.11 + esbuild@0.25.12: + optionalDependencies: + '@esbuild/aix-ppc64': 0.25.12 + '@esbuild/android-arm': 0.25.12 + '@esbuild/android-arm64': 0.25.12 + '@esbuild/android-x64': 0.25.12 + '@esbuild/darwin-arm64': 0.25.12 + '@esbuild/darwin-x64': 0.25.12 + '@esbuild/freebsd-arm64': 0.25.12 + '@esbuild/freebsd-x64': 0.25.12 + '@esbuild/linux-arm': 0.25.12 + '@esbuild/linux-arm64': 0.25.12 + '@esbuild/linux-ia32': 0.25.12 + '@esbuild/linux-loong64': 0.25.12 + '@esbuild/linux-mips64el': 0.25.12 + '@esbuild/linux-ppc64': 0.25.12 + '@esbuild/linux-riscv64': 0.25.12 + '@esbuild/linux-s390x': 0.25.12 + '@esbuild/linux-x64': 0.25.12 + '@esbuild/netbsd-arm64': 0.25.12 + '@esbuild/netbsd-x64': 0.25.12 + '@esbuild/openbsd-arm64': 0.25.12 + '@esbuild/openbsd-x64': 0.25.12 + '@esbuild/openharmony-arm64': 0.25.12 + '@esbuild/sunos-x64': 0.25.12 + '@esbuild/win32-arm64': 0.25.12 + '@esbuild/win32-ia32': 0.25.12 + '@esbuild/win32-x64': 0.25.12 + escalade@3.2.0: {} escape-goat@4.0.0: {} @@ -25961,16 +26227,16 @@ snapshots: mind-elixir@5.3.4: {} - mini-css-extract-plugin@2.4.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + mini-css-extract-plugin@2.4.7(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: schema-utils: 4.3.2 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) - mini-css-extract-plugin@2.9.4(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + mini-css-extract-plugin@2.9.4(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: schema-utils: 4.3.2 tapable: 2.2.3 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) minimalistic-assert@1.0.1: {} @@ -27114,7 +27380,7 @@ snapshots: camelcase-css: 2.0.1 postcss: 8.5.6 - postcss-loader@4.3.0(postcss@8.5.3)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + postcss-loader@4.3.0(postcss@8.5.3)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: cosmiconfig: 7.1.0 klona: 2.0.6 @@ -27122,9 +27388,9 @@ snapshots: postcss: 8.5.3 schema-utils: 3.3.0 semver: 7.7.3 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) - postcss-loader@4.3.0(postcss@8.5.6)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + postcss-loader@4.3.0(postcss@8.5.6)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: cosmiconfig: 7.1.0 klona: 2.0.6 @@ -27132,16 +27398,16 @@ snapshots: postcss: 8.5.6 schema-utils: 3.3.0 semver: 7.7.3 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) - postcss-loader@8.2.0(postcss@8.5.6)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + postcss-loader@8.2.0(postcss@8.5.6)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: cosmiconfig: 9.0.0(typescript@5.0.4) jiti: 2.6.1 postcss: 8.5.6 semver: 7.7.3 optionalDependencies: - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) transitivePeerDependencies: - typescript @@ -27875,11 +28141,11 @@ snapshots: raw-loader@0.5.1: {} - raw-loader@4.0.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + raw-loader@4.0.2(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) rc@1.2.8: dependencies: @@ -29261,15 +29527,15 @@ snapshots: '@tokenizer/token': 0.3.0 peek-readable: 4.1.0 - style-loader@2.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + style-loader@2.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) - style-loader@4.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + style-loader@4.0.0(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) style-mod@4.1.2: {} @@ -29616,7 +29882,7 @@ snapshots: rimraf: 2.6.3 optional: true - terser-webpack-plugin@4.2.3(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + terser-webpack-plugin@4.2.3(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: cacache: 15.3.0 find-cache-dir: 3.3.2 @@ -29626,33 +29892,33 @@ snapshots: serialize-javascript: 5.0.1 source-map: 0.6.1 terser: 5.44.0 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) webpack-sources: 1.4.3 transitivePeerDependencies: - bluebird - terser-webpack-plugin@5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + terser-webpack-plugin@5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: '@jridgewell/trace-mapping': 0.3.31 jest-worker: 27.5.1 schema-utils: 4.3.2 serialize-javascript: 6.0.2 terser: 5.44.0 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) optionalDependencies: '@swc/core': 1.11.29(@swc/helpers@0.5.17) - esbuild: 0.25.11 + esbuild: 0.25.12 - terser-webpack-plugin@5.3.14(esbuild@0.25.11)(webpack@5.101.3(esbuild@0.25.11)): + terser-webpack-plugin@5.3.14(esbuild@0.25.12)(webpack@5.101.3(esbuild@0.25.12)): dependencies: '@jridgewell/trace-mapping': 0.3.31 jest-worker: 27.5.1 schema-utils: 4.3.2 serialize-javascript: 6.0.2 terser: 5.44.0 - webpack: 5.101.3(esbuild@0.25.11) + webpack: 5.101.3(esbuild@0.25.12) optionalDependencies: - esbuild: 0.25.11 + esbuild: 0.25.12 terser@5.44.0: dependencies: @@ -29815,7 +30081,7 @@ snapshots: ts-dedent@2.2.0: {} - ts-loader@9.5.4(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + ts-loader@9.5.4(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: chalk: 4.1.2 enhanced-resolve: 5.18.3 @@ -29823,7 +30089,7 @@ snapshots: semver: 7.7.3 source-map: 0.7.6 typescript: 5.0.4 - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.0.4): dependencies: @@ -30488,7 +30754,7 @@ snapshots: webidl-conversions@7.0.0: optional: true - webpack-dev-middleware@7.4.3(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + webpack-dev-middleware@7.4.3(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: colorette: 2.0.20 memfs: 4.42.0 @@ -30497,9 +30763,9 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.3.2 optionalDependencies: - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) - webpack-dev-server@5.2.2(bufferutil@4.0.9)(utf-8-validate@6.0.5)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)): + webpack-dev-server@5.2.2(bufferutil@4.0.9)(utf-8-validate@6.0.5)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -30527,10 +30793,10 @@ snapshots: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 7.4.3(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + webpack-dev-middleware: 7.4.3(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) optionalDependencies: - webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11) + webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) transitivePeerDependencies: - bufferutil - debug @@ -30549,7 +30815,7 @@ snapshots: webpack-sources@3.3.3: {} - webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11): + webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.8 @@ -30573,7 +30839,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 4.3.2 tapable: 2.2.3 - terser-webpack-plugin: 5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.11)) + terser-webpack-plugin: 5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) watchpack: 2.4.4 webpack-sources: 3.3.3 transitivePeerDependencies: @@ -30581,7 +30847,7 @@ snapshots: - esbuild - uglify-js - webpack@5.101.3(esbuild@0.25.11): + webpack@5.101.3(esbuild@0.25.12): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.8 @@ -30605,7 +30871,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 4.3.2 tapable: 2.2.3 - terser-webpack-plugin: 5.3.14(esbuild@0.25.11)(webpack@5.101.3(esbuild@0.25.11)) + terser-webpack-plugin: 5.3.14(esbuild@0.25.12)(webpack@5.101.3(esbuild@0.25.12)) watchpack: 2.4.4 webpack-sources: 3.3.3 transitivePeerDependencies: From 71a3cf0cfe1ee50592dcb1e95c9a30250d7de67c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 09:28:29 +0000 Subject: [PATCH 042/136] chore(deps): update dependency eslint-plugin-playwright to v2.3.0 --- package.json | 2 +- pnpm-lock.yaml | 30 +++++++----------------------- 2 files changed, 8 insertions(+), 24 deletions(-) diff --git a/package.json b/package.json index 9b0f63139..25e1a5e4b 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,7 @@ "esbuild": "0.25.11", "eslint": "9.39.0", "eslint-config-prettier": "10.1.8", - "eslint-plugin-playwright": "2.2.2", + "eslint-plugin-playwright": "2.3.0", "eslint-plugin-react-hooks": "7.0.1", "happy-dom": "~20.0.0", "jiti": "2.6.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9bbd150d9..5dfeac682 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -80,8 +80,8 @@ importers: specifier: 10.1.8 version: 10.1.8(eslint@9.39.0(jiti@2.6.1)) eslint-plugin-playwright: - specifier: 2.2.2 - version: 2.2.2(eslint@9.39.0(jiti@2.6.1)) + specifier: 2.3.0 + version: 2.3.0(eslint@9.39.0(jiti@2.6.1)) eslint-plugin-react-hooks: specifier: 7.0.1 version: 7.0.1(eslint@9.39.0(jiti@2.6.1)) @@ -7618,9 +7618,9 @@ packages: peerDependencies: eslint: '>=9.0.0' - eslint-plugin-playwright@2.2.2: - resolution: {integrity: sha512-j0jKpndIPOXRRP9uMkwb9l/nSmModOU3452nrFdgFJoEv/435J1onk8+aITzjDW8DfypxgmVaDMdmVIa6F7I0w==} - engines: {node: '>=16.6.0'} + eslint-plugin-playwright@2.3.0: + resolution: {integrity: sha512-7UeUuIb5SZrNkrUGb2F+iwHM97kn33/huajcVtAaQFCSMUYGNFvjzRPil5C0OIppslPfuOV68M/zsisXx+/ZvQ==} + engines: {node: '>=16.9.0'} peerDependencies: eslint: '>=8.40.0' @@ -8283,10 +8283,6 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} - globals@14.0.0: resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} engines: {node: '>=18'} @@ -13326,10 +13322,6 @@ packages: resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} engines: {node: '>=10'} - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - type-fest@0.21.3: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} @@ -15299,8 +15291,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -23015,10 +23005,10 @@ snapshots: eslint: 9.39.0(jiti@2.6.1) globals: 15.15.0 - eslint-plugin-playwright@2.2.2(eslint@9.39.0(jiti@2.6.1)): + eslint-plugin-playwright@2.3.0(eslint@9.39.0(jiti@2.6.1)): dependencies: eslint: 9.39.0(jiti@2.6.1) - globals: 13.24.0 + globals: 16.4.0 eslint-plugin-react-hooks@5.2.0(eslint@9.39.0(jiti@2.6.1)): dependencies: @@ -23910,10 +23900,6 @@ snapshots: globals@11.12.0: {} - globals@13.24.0: - dependencies: - type-fest: 0.20.2 - globals@14.0.0: {} globals@15.15.0: {} @@ -29915,8 +29901,6 @@ snapshots: type-fest@0.13.1: optional: true - type-fest@0.20.2: {} - type-fest@0.21.3: {} type-fest@1.4.0: {} From 6571ff9d84cb25fcac1df9f7acd2abe2aa7ceac5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 09:29:14 +0000 Subject: [PATCH 043/136] fix(deps): update dependency globals to v16.5.0 --- apps/client/package.json | 2 +- pnpm-lock.yaml | 16 +++++++--------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/apps/client/package.json b/apps/client/package.json index 35199c6d4..f46ef59ab 100644 --- a/apps/client/package.json +++ b/apps/client/package.json @@ -42,7 +42,7 @@ "debounce": "2.2.0", "draggabilly": "3.0.0", "force-graph": "1.51.0", - "globals": "16.4.0", + "globals": "16.5.0", "i18next": "25.6.0", "i18next-http-backend": "3.0.2", "jquery": "3.7.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9bbd150d9..0af0ff374 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -209,8 +209,8 @@ importers: specifier: 1.51.0 version: 1.51.0 globals: - specifier: 16.4.0 - version: 16.4.0 + specifier: 16.5.0 + version: 16.5.0 i18next: specifier: 25.6.0 version: 25.6.0(typescript@5.9.3) @@ -8295,8 +8295,8 @@ packages: resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==} engines: {node: '>=18'} - globals@16.4.0: - resolution: {integrity: sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==} + globals@16.5.0: + resolution: {integrity: sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==} engines: {node: '>=18'} globalthis@1.0.4: @@ -15299,8 +15299,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -22960,7 +22958,7 @@ snapshots: eslint: 9.39.0(jiti@2.6.1) eslint-plugin-ckeditor5-rules: 12.2.0 eslint-plugin-mocha: 11.2.0(eslint@9.39.0(jiti@2.6.1)) - globals: 16.4.0 + globals: 16.5.0 typescript: 5.9.3 typescript-eslint: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) transitivePeerDependencies: @@ -22977,7 +22975,7 @@ snapshots: eslint-plugin-compat: 6.0.2(eslint@9.39.0(jiti@2.6.1)) eslint-plugin-react: 7.37.5(eslint@9.39.0(jiti@2.6.1)) eslint-plugin-react-hooks: 5.2.0(eslint@9.39.0(jiti@2.6.1)) - globals: 16.4.0 + globals: 16.5.0 transitivePeerDependencies: - supports-color @@ -23918,7 +23916,7 @@ snapshots: globals@15.15.0: {} - globals@16.4.0: {} + globals@16.5.0: {} globalthis@1.0.4: dependencies: From 05f3f9627d4975c9d35dff3712e282bbaff82b6e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 09:31:25 +0000 Subject: [PATCH 044/136] chore(deps): update node.js to v24 --- .nvmrc | 2 +- _regroup/package.json | 2 +- apps/server/Dockerfile | 4 +- apps/server/Dockerfile.alpine | 4 +- apps/server/Dockerfile.alpine.rootless | 4 +- apps/server/Dockerfile.rootless | 4 +- package.json | 2 +- pnpm-lock.yaml | 248 +++++++++++-------------- 8 files changed, 116 insertions(+), 154 deletions(-) diff --git a/.nvmrc b/.nvmrc index f5b3ef39f..40115e966 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -22.21.0 \ No newline at end of file +24.11.0 \ No newline at end of file diff --git a/_regroup/package.json b/_regroup/package.json index 1a2950b80..11f8b299f 100644 --- a/_regroup/package.json +++ b/_regroup/package.json @@ -38,7 +38,7 @@ "@playwright/test": "1.56.1", "@stylistic/eslint-plugin": "5.5.0", "@types/express": "5.0.5", - "@types/node": "24.9.1", + "@types/node": "24.9.2", "@types/yargs": "17.0.34", "@vitest/coverage-v8": "3.2.4", "eslint": "9.39.0", diff --git a/apps/server/Dockerfile b/apps/server/Dockerfile index 56f2d3f5e..9e26c545b 100644 --- a/apps/server/Dockerfile +++ b/apps/server/Dockerfile @@ -1,4 +1,4 @@ -FROM node:24.10.0-bullseye-slim AS builder +FROM node:24.11.0-bullseye-slim AS builder RUN corepack enable # Install native dependencies since we might be building cross-platform. @@ -7,7 +7,7 @@ COPY ./docker/package.json ./docker/pnpm-workspace.yaml /usr/src/app/ # We have to use --no-frozen-lockfile due to CKEditor patches RUN pnpm install --no-frozen-lockfile --prod && pnpm rebuild -FROM node:24.10.0-bullseye-slim +FROM node:24.11.0-bullseye-slim # Install only runtime dependencies RUN apt-get update && \ apt-get install -y --no-install-recommends \ diff --git a/apps/server/Dockerfile.alpine b/apps/server/Dockerfile.alpine index 684702abd..76721cc65 100644 --- a/apps/server/Dockerfile.alpine +++ b/apps/server/Dockerfile.alpine @@ -1,4 +1,4 @@ -FROM node:24.10.0-alpine AS builder +FROM node:24.11.0-alpine AS builder RUN corepack enable # Install native dependencies since we might be building cross-platform. @@ -7,7 +7,7 @@ COPY ./docker/package.json ./docker/pnpm-workspace.yaml /usr/src/app/ # We have to use --no-frozen-lockfile due to CKEditor patches RUN pnpm install --no-frozen-lockfile --prod && pnpm rebuild -FROM node:24.10.0-alpine +FROM node:24.11.0-alpine # Install runtime dependencies RUN apk add --no-cache su-exec shadow diff --git a/apps/server/Dockerfile.alpine.rootless b/apps/server/Dockerfile.alpine.rootless index c0451eaaa..f81ee2056 100644 --- a/apps/server/Dockerfile.alpine.rootless +++ b/apps/server/Dockerfile.alpine.rootless @@ -1,4 +1,4 @@ -FROM node:24.10.0-alpine AS builder +FROM node:24.11.0-alpine AS builder RUN corepack enable # Install native dependencies since we might be building cross-platform. @@ -7,7 +7,7 @@ COPY ./docker/package.json ./docker/pnpm-workspace.yaml /usr/src/app/ # We have to use --no-frozen-lockfile due to CKEditor patches RUN pnpm install --no-frozen-lockfile --prod && pnpm rebuild -FROM node:24.10.0-alpine +FROM node:24.11.0-alpine # Create a non-root user with configurable UID/GID ARG USER=trilium ARG UID=1001 diff --git a/apps/server/Dockerfile.rootless b/apps/server/Dockerfile.rootless index b16e8c969..90ab7b0c9 100644 --- a/apps/server/Dockerfile.rootless +++ b/apps/server/Dockerfile.rootless @@ -1,4 +1,4 @@ -FROM node:24.10.0-bullseye-slim AS builder +FROM node:24.11.0-bullseye-slim AS builder RUN corepack enable # Install native dependencies since we might be building cross-platform. @@ -7,7 +7,7 @@ COPY ./docker/package.json ./docker/pnpm-workspace.yaml /usr/src/app/ # We have to use --no-frozen-lockfile due to CKEditor patches RUN pnpm install --no-frozen-lockfile --prod && pnpm rebuild -FROM node:24.10.0-bullseye-slim +FROM node:24.11.0-bullseye-slim # Create a non-root user with configurable UID/GID ARG USER=trilium ARG UID=1001 diff --git a/package.json b/package.json index 4ded641cb..34b9cb74d 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@playwright/test": "1.56.1", "@triliumnext/server": "workspace:*", "@types/express": "5.0.5", - "@types/node": "24.9.1", + "@types/node": "24.9.2", "@vitest/coverage-v8": "3.2.4", "@vitest/ui": "3.2.4", "chalk": "5.6.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7634a97d4..fbeaa64b6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -53,8 +53,8 @@ importers: specifier: 5.0.5 version: 5.0.5 '@types/node': - specifier: 24.9.1 - version: 24.9.1 + specifier: 24.9.2 + version: 24.9.2 '@vitest/coverage-v8': specifier: 3.2.4 version: 3.2.4(@vitest/browser@3.2.4)(vitest@3.2.4) @@ -99,7 +99,7 @@ importers: version: 0.18.0 rollup-plugin-webpack-stats: specifier: 2.1.6 - version: 2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.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)) + version: 2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.2)(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)) tslib: specifier: 2.8.1 version: 2.8.1 @@ -117,13 +117,13 @@ importers: version: 2.0.1 vite: specifier: 7.1.12 - version: 7.1.12(@types/node@24.9.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) + version: 7.1.12(@types/node@24.9.2)(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) vite-plugin-dts: specifier: ~4.5.0 - version: 4.5.4(@types/node@24.9.1)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)) + version: 4.5.4(@types/node@24.9.2)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) apps/client: dependencies: @@ -859,7 +859,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -868,7 +868,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -895,16 +895,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -919,7 +919,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -928,7 +928,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -955,16 +955,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -979,7 +979,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -988,7 +988,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -1015,16 +1015,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -1046,7 +1046,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -1055,7 +1055,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -1082,16 +1082,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -1113,7 +1113,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -1122,7 +1122,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -1149,16 +1149,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -5247,9 +5247,6 @@ packages: '@types/node@20.19.18': resolution: {integrity: sha512-KeYVbfnbsBCyKG8e3gmUqAfyZNcoj/qpEbHRkQkfZdKOBrU7QQ+BsTdfqLSWX9/m1ytYreMhpKvp+EZi3UFYAg==} - '@types/node@20.19.23': - resolution: {integrity: sha512-yIdlVVVHXpmqRhtyovZAcSy0MiPcYWGkoO4CGe/+jpP0hmNuihm4XhHbADpK++MsiLHP5MVlv+bcgdF99kSiFQ==} - '@types/node@20.19.24': resolution: {integrity: sha512-FE5u0ezmi6y9OZEzlJfg37mqqf6ZDSF2V/NLjUyGrR9uTZ7Sb9F7bLNZ03S4XVUNRWGA7Ck4c1kK+YnuWjl+DA==} @@ -5268,9 +5265,6 @@ packages: '@types/node@22.18.8': resolution: {integrity: sha512-pAZSHMiagDR7cARo/cch1f3rXy0AEXwsVsVH09FcyeJVAzCnGgmYis7P3JidtTUjyadhTeSo8TgRPswstghDaw==} - '@types/node@24.9.1': - resolution: {integrity: sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==} - '@types/node@24.9.2': resolution: {integrity: sha512-uWN8YqxXxqFMX2RqGOrumsKeti4LlmIMIyV0lgut4jx7KQBcBiW6vkDtIBvHnHIquwNfJhk8v2OtmO8zXWHfPA==} @@ -15141,6 +15135,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-block-quote@47.1.0': dependencies: @@ -15215,8 +15211,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15518,8 +15512,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-engine': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-essentials@47.1.0': dependencies: @@ -15857,7 +15849,7 @@ snapshots: es-toolkit: 1.39.5 protobufjs: 7.5.0 - '@ckeditor/ckeditor5-package-tools@4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5)': + '@ckeditor/ckeditor5-package-tools@4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5)': dependencies: '@ckeditor/ckeditor5-dev-translations': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) '@ckeditor/ckeditor5-dev-utils': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) @@ -15876,7 +15868,7 @@ snapshots: stylelint-config-ckeditor5: 2.0.1(stylelint@16.25.0(typescript@5.9.3)) terser-webpack-plugin: 5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) ts-loader: 9.5.4(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) - ts-node: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.0.4) + ts-node: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.0.4) typescript: 5.0.4 upath: 2.0.1 webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) @@ -15967,8 +15959,6 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -17503,26 +17493,26 @@ snapshots: '@inquirer/core': 9.2.1 '@inquirer/type': 2.0.0 - '@inquirer/confirm@5.1.19(@types/node@24.9.1)': + '@inquirer/confirm@5.1.19(@types/node@24.9.2)': dependencies: - '@inquirer/core': 10.3.0(@types/node@24.9.1) - '@inquirer/type': 3.0.9(@types/node@24.9.1) + '@inquirer/core': 10.3.0(@types/node@24.9.2) + '@inquirer/type': 3.0.9(@types/node@24.9.2) optionalDependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 optional: true - '@inquirer/core@10.3.0(@types/node@24.9.1)': + '@inquirer/core@10.3.0(@types/node@24.9.2)': dependencies: '@inquirer/ansi': 1.0.1 '@inquirer/figures': 1.0.14 - '@inquirer/type': 3.0.9(@types/node@24.9.1) + '@inquirer/type': 3.0.9(@types/node@24.9.2) cli-width: 4.1.0 mute-stream: 2.0.0 signal-exit: 4.1.0 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 optional: true '@inquirer/core@9.2.1': @@ -17615,9 +17605,9 @@ snapshots: dependencies: mute-stream: 1.0.0 - '@inquirer/type@3.0.9(@types/node@24.9.1)': + '@inquirer/type@3.0.9(@types/node@24.9.2)': optionalDependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 optional: true '@isaacs/balanced-match@4.0.1': {} @@ -18049,23 +18039,23 @@ snapshots: dependencies: langium: 3.3.1 - '@microsoft/api-extractor-model@7.30.6(@types/node@24.9.1)': + '@microsoft/api-extractor-model@7.30.6(@types/node@24.9.2)': dependencies: '@microsoft/tsdoc': 0.15.1 '@microsoft/tsdoc-config': 0.17.1 - '@rushstack/node-core-library': 5.13.1(@types/node@24.9.1) + '@rushstack/node-core-library': 5.13.1(@types/node@24.9.2) transitivePeerDependencies: - '@types/node' - '@microsoft/api-extractor@7.52.8(@types/node@24.9.1)': + '@microsoft/api-extractor@7.52.8(@types/node@24.9.2)': dependencies: - '@microsoft/api-extractor-model': 7.30.6(@types/node@24.9.1) + '@microsoft/api-extractor-model': 7.30.6(@types/node@24.9.2) '@microsoft/tsdoc': 0.15.1 '@microsoft/tsdoc-config': 0.17.1 - '@rushstack/node-core-library': 5.13.1(@types/node@24.9.1) + '@rushstack/node-core-library': 5.13.1(@types/node@24.9.2) '@rushstack/rig-package': 0.5.3 - '@rushstack/terminal': 0.15.3(@types/node@24.9.1) - '@rushstack/ts-command-line': 5.0.1(@types/node@24.9.1) + '@rushstack/terminal': 0.15.3(@types/node@24.9.2) + '@rushstack/ts-command-line': 5.0.1(@types/node@24.9.2) lodash: 4.17.21 minimatch: 3.0.8 resolve: 1.22.10 @@ -18944,7 +18934,7 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.52.0': optional: true - '@rushstack/node-core-library@5.13.1(@types/node@24.9.1)': + '@rushstack/node-core-library@5.13.1(@types/node@24.9.2)': dependencies: ajv: 8.13.0 ajv-draft-04: 1.0.0(ajv@8.13.0) @@ -18955,23 +18945,23 @@ snapshots: resolve: 1.22.10 semver: 7.5.4 optionalDependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@rushstack/rig-package@0.5.3': dependencies: resolve: 1.22.10 strip-json-comments: 3.1.1 - '@rushstack/terminal@0.15.3(@types/node@24.9.1)': + '@rushstack/terminal@0.15.3(@types/node@24.9.2)': dependencies: - '@rushstack/node-core-library': 5.13.1(@types/node@24.9.1) + '@rushstack/node-core-library': 5.13.1(@types/node@24.9.2) supports-color: 8.1.1 optionalDependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 - '@rushstack/ts-command-line@5.0.1(@types/node@24.9.1)': + '@rushstack/ts-command-line@5.0.1(@types/node@24.9.2)': dependencies: - '@rushstack/terminal': 0.15.3(@types/node@24.9.1) + '@rushstack/terminal': 0.15.3(@types/node@24.9.2) '@types/argparse': 1.0.38 argparse: 1.0.10 string-argv: 0.3.2 @@ -19557,7 +19547,7 @@ snapshots: '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/bonjour@3.5.13': dependencies: @@ -19604,7 +19594,7 @@ snapshots: '@types/connect@3.4.38': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/cookie-parser@1.4.10(@types/express@5.0.5)': dependencies: @@ -19776,7 +19766,7 @@ snapshots: '@types/express-serve-static-core@5.1.0': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/qs': 6.14.0 '@types/range-parser': 1.2.7 '@types/send': 0.17.5 @@ -19851,7 +19841,7 @@ snapshots: '@types/jsonfile@6.1.4': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/keyv@3.1.4': dependencies: @@ -19905,7 +19895,7 @@ snapshots: '@types/mute-stream@0.0.4': dependencies: - '@types/node': 22.18.13 + '@types/node': 24.9.2 '@types/node-forge@1.3.14': dependencies: @@ -19917,10 +19907,6 @@ snapshots: dependencies: undici-types: 6.21.0 - '@types/node@20.19.23': - dependencies: - undici-types: 6.21.0 - '@types/node@20.19.24': dependencies: undici-types: 6.21.0 @@ -19945,10 +19931,6 @@ snapshots: dependencies: undici-types: 6.21.0 - '@types/node@24.9.1': - dependencies: - undici-types: 7.16.0 - '@types/node@24.9.2': dependencies: undici-types: 7.16.0 @@ -19977,7 +19959,7 @@ snapshots: '@types/readdir-glob@1.1.5': dependencies: - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/resolve@1.20.2': {} @@ -20002,7 +19984,7 @@ snapshots: '@types/send@0.17.5': dependencies: '@types/mime': 1.3.5 - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/serve-favicon@2.5.7': dependencies: @@ -20015,7 +19997,7 @@ snapshots: '@types/serve-static@1.15.10': dependencies: '@types/http-errors': 2.0.4 - '@types/node': 24.9.1 + '@types/node': 24.9.2 '@types/send': 0.17.5 '@types/serve-static@2.2.0': @@ -20042,7 +20024,7 @@ snapshots: dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 24.9.1 + '@types/node': 24.9.2 form-data: 4.0.4 '@types/supercluster@7.1.3': @@ -20103,7 +20085,7 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 22.18.12 + '@types/node': 24.9.2 optional: true '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': @@ -20232,16 +20214,16 @@ snapshots: - bufferutil - utf-8-validate - '@vitest/browser@3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))': + '@vitest/browser@3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))': dependencies: '@testing-library/dom': 10.4.0 '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.0) - '@vitest/mocker': 3.2.4(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.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/mocker': 3.2.4(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.2)(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/utils': 3.2.4 magic-string: 0.30.18 sirv: 3.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) optionalDependencies: playwright: 1.56.1 @@ -20264,7 +20246,7 @@ snapshots: magicast: 0.3.5 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) transitivePeerDependencies: - supports-color @@ -20283,9 +20265,9 @@ snapshots: std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) optionalDependencies: - '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) transitivePeerDependencies: - supports-color @@ -20297,14 +20279,14 @@ snapshots: chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.4(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.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/mocker@3.2.4(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.2)(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))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.18 optionalDependencies: - msw: 2.7.5(@types/node@24.9.1)(typescript@5.9.3) - vite: 7.1.12(@types/node@24.9.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) + msw: 2.7.5(@types/node@24.9.2)(typescript@5.9.3) + vite: 7.1.12(@types/node@24.9.2)(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/pretty-format@3.2.4': dependencies: @@ -20335,7 +20317,7 @@ snapshots: sirv: 3.0.1 tinyglobby: 0.2.15 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) '@vitest/utils@3.2.4': dependencies: @@ -20415,11 +20397,11 @@ snapshots: '@wdio/repl@9.16.2': dependencies: - '@types/node': 20.19.23 + '@types/node': 20.19.24 '@wdio/types@9.20.0': dependencies: - '@types/node': 20.19.23 + '@types/node': 20.19.24 '@wdio/utils@9.20.0': dependencies: @@ -26443,12 +26425,12 @@ snapshots: ms@2.1.3: {} - msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3): + msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3): dependencies: '@bundled-es-modules/cookie': 2.0.1 '@bundled-es-modules/statuses': 1.0.1 '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 5.1.19(@types/node@24.9.1) + '@inquirer/confirm': 5.1.19(@types/node@24.9.2) '@mswjs/interceptors': 0.37.6 '@open-draft/deferred-promise': 2.2.0 '@open-draft/until': 2.1.0 @@ -28574,11 +28556,11 @@ snapshots: '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.29 optional: true - rollup-plugin-stats@1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.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)): + rollup-plugin-stats@1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.2)(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)): optionalDependencies: rolldown: 1.0.0-beta.29 rollup: 4.52.0 - vite: 7.1.12(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) rollup-plugin-styles@4.0.0(rollup@4.40.0): dependencies: @@ -28607,13 +28589,13 @@ snapshots: '@rollup/pluginutils': 5.1.4(rollup@4.40.0) rollup: 4.40.0 - rollup-plugin-webpack-stats@2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.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)): + rollup-plugin-webpack-stats@2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.2)(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)): dependencies: - rollup-plugin-stats: 1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.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)) + rollup-plugin-stats: 1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.2)(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)) optionalDependencies: rolldown: 1.0.0-beta.29 rollup: 4.52.0 - vite: 7.1.12(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) rollup@4.40.0: dependencies: @@ -30114,14 +30096,14 @@ snapshots: typescript: 5.0.4 webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) - ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.0.4): + ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.0.4): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 24.9.1 + '@types/node': 24.9.2 acorn: 8.15.0 acorn-walk: 8.3.4 arg: 4.1.3 @@ -30134,14 +30116,14 @@ snapshots: optionalDependencies: '@swc/core': 1.11.29(@swc/helpers@0.5.17) - ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.1)(typescript@5.9.3): + ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 24.9.1 + '@types/node': 24.9.2 acorn: 8.15.0 acorn-walk: 8.3.4 arg: 4.1.3 @@ -30513,13 +30495,13 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-node@3.2.4(@types/node@24.9.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): + vite-node@3.2.4(@types/node@24.9.2)(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): dependencies: cac: 6.7.14 debug: 4.4.3(supports-color@6.0.0) es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.1.12(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) transitivePeerDependencies: - '@types/node' - jiti @@ -30534,9 +30516,9 @@ snapshots: - tsx - yaml - vite-plugin-dts@4.5.4(@types/node@24.9.1)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)): + vite-plugin-dts@4.5.4(@types/node@24.9.2)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)): dependencies: - '@microsoft/api-extractor': 7.52.8(@types/node@24.9.1) + '@microsoft/api-extractor': 7.52.8(@types/node@24.9.2) '@rollup/pluginutils': 5.1.4(rollup@4.52.0) '@volar/typescript': 2.4.13 '@vue/language-core': 2.2.0(typescript@5.9.3) @@ -30547,7 +30529,7 @@ snapshots: magic-string: 0.30.17 typescript: 5.9.3 optionalDependencies: - vite: 7.1.12(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) transitivePeerDependencies: - '@types/node' - rollup @@ -30561,11 +30543,11 @@ snapshots: tinyglobby: 0.2.15 vite: 7.1.12(@types/node@24.9.2)(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) - vite-plugin-svgo@2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.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)): + vite-plugin-svgo@2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)): dependencies: svgo: 3.3.2 typescript: 5.9.3 - vite: 7.1.12(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) vite-prerender-plugin@0.5.11(vite@7.1.12(@types/node@24.9.2)(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)): dependencies: @@ -30577,26 +30559,6 @@ snapshots: stack-trace: 1.0.0-pre2 vite: 7.1.12(@types/node@24.9.2)(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) - vite@7.1.12(@types/node@24.9.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): - dependencies: - esbuild: 0.25.11 - fdir: 6.5.0(picomatch@4.0.3) - picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.52.0 - tinyglobby: 0.2.15 - optionalDependencies: - '@types/node': 24.9.1 - fsevents: 2.3.3 - jiti: 2.6.1 - less: 4.1.3 - lightningcss: 1.30.1 - sass: 1.91.0 - sass-embedded: 1.91.0 - terser: 5.44.0 - tsx: 4.20.6 - yaml: 2.8.1 - vite@7.1.12(@types/node@24.9.2)(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): dependencies: esbuild: 0.25.11 @@ -30617,11 +30579,11 @@ snapshots: tsx: 4.20.6 yaml: 2.8.1 - vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.9.1)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.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): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.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/mocker': 3.2.4(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.2)(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/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 @@ -30639,13 +30601,13 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 7.1.12(@types/node@24.9.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) - vite-node: 3.2.4(@types/node@24.9.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) + vite: 7.1.12(@types/node@24.9.2)(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) + vite-node: 3.2.4(@types/node@24.9.2)(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) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 - '@types/node': 24.9.1 - '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.1)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + '@types/node': 24.9.2 + '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/ui': 3.2.4(vitest@3.2.4) happy-dom: 20.0.10 jsdom: 26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -30738,7 +30700,7 @@ snapshots: webdriver@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5): dependencies: - '@types/node': 20.19.23 + '@types/node': 20.19.24 '@types/ws': 8.18.1 '@wdio/config': 9.20.0 '@wdio/logger': 9.18.0 From f3f07cdd28f2fdb5e8b2e734d6dffe57389d41e1 Mon Sep 17 00:00:00 2001 From: SiriusXT <1160925501@qq.com> Date: Sun, 2 Nov 2025 20:30:01 +0800 Subject: [PATCH 045/136] fix(electron): port-in-use dialog shown when opening a new window --- apps/server/src/www.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/server/src/www.ts b/apps/server/src/www.ts index 4149d518b..130d3a380 100644 --- a/apps/server/src/www.ts +++ b/apps/server/src/www.ts @@ -160,11 +160,10 @@ function startHttpServer(app: Express) { // should simply focus on the existing window or open a new one, without displaying an error message. if ("code" in error && error.code === "EADDRINUSE" && (process.argv.includes("--new-window") || !app.requestSingleInstanceLock())) { console.error(message); - process.exit(1); } else { dialog.showErrorBox("Error while initializing the server", message); - process.exit(1); } + process.exit(1); }); } else { console.error(message); From 68c6260e45e899dc7774b18d0e6b9c0025672180 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 18:14:03 +0200 Subject: [PATCH 046/136] chore(build-docs): relocate OpenAPI location --- apps/build-docs/src/swagger.ts | 4 ++-- apps/server/{src/assets => }/etapi.openapi.yaml | 0 .../{src/assets/api-openapi.yaml => internal.openapi.yaml} | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename apps/server/{src/assets => }/etapi.openapi.yaml (100%) rename apps/server/{src/assets/api-openapi.yaml => internal.openapi.yaml} (100%) diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts index 7261d4171..ffc5fbce6 100644 --- a/apps/build-docs/src/swagger.ts +++ b/apps/build-docs/src/swagger.ts @@ -13,11 +13,11 @@ const DIR_PREFIX = "rest-api" const buildInfos: BuildInfo[] = [ { // Paths are relative to Git root. - specPath: "apps/server/src/assets/api-openapi.yaml", + specPath: "apps/server/internal.openapi.yaml", outDir: `${DIR_PREFIX}/internal` }, { - specPath: "apps/server/src/assets/etapi.openapi.yaml", + specPath: "apps/server/etapi.openapi.yaml", outDir: `${DIR_PREFIX}/etapi` } ]; diff --git a/apps/server/src/assets/etapi.openapi.yaml b/apps/server/etapi.openapi.yaml similarity index 100% rename from apps/server/src/assets/etapi.openapi.yaml rename to apps/server/etapi.openapi.yaml diff --git a/apps/server/src/assets/api-openapi.yaml b/apps/server/internal.openapi.yaml similarity index 100% rename from apps/server/src/assets/api-openapi.yaml rename to apps/server/internal.openapi.yaml From 4f5be54030b44dc1ad0b60977ead7dc3e58a8aa3 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 18:28:31 +0200 Subject: [PATCH 047/136] chore(build-docs): generate types for doc --- apps/build-docs/src/script-api.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/build-docs/src/script-api.ts b/apps/build-docs/src/script-api.ts index 2d06f7a28..8473ae3a0 100644 --- a/apps/build-docs/src/script-api.ts +++ b/apps/build-docs/src/script-api.ts @@ -2,7 +2,10 @@ import { execSync } from "child_process"; import BuildContext from "./context"; import { join } from "path"; -export default function buildScriptApi({ baseDir }: BuildContext) { +export default function buildScriptApi({ baseDir, gitRootDir }: BuildContext) { + // Generate types + execSync(`pnpm typecheck`, { stdio: "inherit", cwd: gitRootDir }); + for (const config of [ "backend", "frontend" ]) { const outDir = join(baseDir, "script-api", config); execSync(`pnpm typedoc --options typedoc.${config}.json --html "${outDir}"`, { From 966e5a2ef35eaff648818d6e0014123d997a9948 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 18:33:13 +0200 Subject: [PATCH 048/136] chore(build-docs): update meta --- apps/server/etapi.openapi.yaml | 10 +++++----- apps/server/internal.openapi.yaml | 13 +++++++------ 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/apps/server/etapi.openapi.yaml b/apps/server/etapi.openapi.yaml index ac2f01f55..12567c410 100644 --- a/apps/server/etapi.openapi.yaml +++ b/apps/server/etapi.openapi.yaml @@ -4,12 +4,12 @@ info: title: ETAPI description: External Trilium API contact: - name: zadam - email: zadam.apps@gmail.com - url: https://github.com/zadam/trilium + name: Trilium Notes Team + email: contact@eliandoran.me + url: https://triliumnotes.org license: - name: Apache 2.0 - url: https://www.apache.org/licenses/LICENSE-2.0.html + name: GNU Affero General Public License v3.0 only + url: https://www.gnu.org/licenses/agpl-3.0.en.html servers: - url: http://localhost:37740/etapi - url: http://localhost:8080/etapi diff --git a/apps/server/internal.openapi.yaml b/apps/server/internal.openapi.yaml index 8ca257b39..73cff4b62 100644 --- a/apps/server/internal.openapi.yaml +++ b/apps/server/internal.openapi.yaml @@ -1,7 +1,7 @@ openapi: 3.1.0 info: - title: Trilium Notes Internal API - version: 0.98.0 + title: Internal Trilium API + version: 0.99.3 description: | This is the internal API used by the Trilium Notes client application. @@ -24,11 +24,12 @@ info: State-changing operations require CSRF tokens when using session authentication. contact: - name: TriliumNext Issue Tracker - url: https://github.com/TriliumNext/Trilium/issues + name: Trilium Notes Team + email: contact@eliandoran.me + url: https://triliumnotes.org license: - name: GNU Affero General Public License v3.0 - url: https://www.gnu.org/licenses/agpl-3.0.html + name: GNU Affero General Public License v3.0 only + url: https://www.gnu.org/licenses/agpl-3.0.en.html servers: - url: http://localhost:8080 From beb7c66ff582bee70a522ef5b4728bfadfc97a82 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 19:45:16 +0200 Subject: [PATCH 049/136] feat(build-docs): rewrite URLs for in-app help --- apps/edit-docs/src/edit-docs.ts | 8 ++++++++ .../src/assets/doc_notes/en/User Guide/!!!meta.json | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/apps/edit-docs/src/edit-docs.ts b/apps/edit-docs/src/edit-docs.ts index b6a04969f..ea428e951 100644 --- a/apps/edit-docs/src/edit-docs.ts +++ b/apps/edit-docs/src/edit-docs.ts @@ -158,6 +158,14 @@ async function cleanUpMeta(outputPath: string, minify: boolean) { } el.isExpanded = false; + + // Rewrite web view URLs that point to root. + if (el.type === "webView" && minify) { + const srcAttr = el.attributes.find(attr => attr.name === "webViewSrc"); + if (srcAttr.value.startsWith("/")) { + srcAttr.value = "docs.triliumnotes.org" + srcAttr.value; + } + } } if (minify) { diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 7228ad0f6..40cdcd387 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file From 0a6670ce5e9d3c3898df825cecf28ec046264480 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 20:05:44 +0200 Subject: [PATCH 050/136] Update apps/build-docs/src/backend_script_entrypoint.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- apps/build-docs/src/backend_script_entrypoint.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/build-docs/src/backend_script_entrypoint.ts b/apps/build-docs/src/backend_script_entrypoint.ts index 145b5b13f..bc9087c0c 100644 --- a/apps/build-docs/src/backend_script_entrypoint.ts +++ b/apps/build-docs/src/backend_script_entrypoint.ts @@ -31,6 +31,6 @@ export type { Api }; const fakeNote = new BNote(); /** - * The `code` 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, {}); From 6bc54892a3eca2b850f22cb7b02f39a5a53d0ff7 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 20:12:50 +0200 Subject: [PATCH 051/136] Update apps/build-docs/src/swagger.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- apps/build-docs/src/swagger.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/build-docs/src/swagger.ts b/apps/build-docs/src/swagger.ts index ffc5fbce6..b3677aeeb 100644 --- a/apps/build-docs/src/swagger.ts +++ b/apps/build-docs/src/swagger.ts @@ -8,7 +8,7 @@ interface BuildInfo { outDir: string; } -const DIR_PREFIX = "rest-api" +const DIR_PREFIX = "rest-api"; const buildInfos: BuildInfo[] = [ { From 5171675dee813b22950ff016200cab7278dfc8df Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 20:10:58 +0200 Subject: [PATCH 052/136] chore(build-docs): fix URL --- apps/edit-docs/src/edit-docs.ts | 4 +++- apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/edit-docs/src/edit-docs.ts b/apps/edit-docs/src/edit-docs.ts index ea428e951..762dacc5b 100644 --- a/apps/edit-docs/src/edit-docs.ts +++ b/apps/edit-docs/src/edit-docs.ts @@ -23,6 +23,8 @@ if (!DOCS_ROOT || !USER_GUIDE_ROOT) { throw new Error("Missing DOCS_ROOT or USER_GUIDE_ROOT environment variable."); } +const BASE_URL = "https://docs.triliumnotes.org"; + const NOTE_MAPPINGS: NoteMapping[] = [ { rootNoteId: "pOsGYCXsbNQG", @@ -163,7 +165,7 @@ async function cleanUpMeta(outputPath: string, minify: boolean) { if (el.type === "webView" && minify) { const srcAttr = el.attributes.find(attr => attr.name === "webViewSrc"); if (srcAttr.value.startsWith("/")) { - srcAttr.value = "docs.triliumnotes.org" + srcAttr.value; + srcAttr.value = BASE_URL + srcAttr.value; } } } diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 40cdcd387..e72384e6e 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file From 452645548620b1b72af5d09b9c82ef64c3c87bf6 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 21:40:21 +0200 Subject: [PATCH 053/136] fix(help): webview source not updating --- .../assets/doc_notes/en/User Guide/!!!meta.json | 2 +- apps/server/src/services/hidden_subtree.spec.ts | 15 +++++++++++++++ apps/server/src/services/hidden_subtree.ts | 10 +++++++++- apps/server/src/services/in_app_help.ts | 1 + 4 files changed, 26 insertions(+), 2 deletions(-) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index e72384e6e..05cb4c625 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/services/hidden_subtree.spec.ts b/apps/server/src/services/hidden_subtree.spec.ts index e329176e6..623bed39e 100644 --- a/apps/server/src/services/hidden_subtree.spec.ts +++ b/apps/server/src/services/hidden_subtree.spec.ts @@ -98,6 +98,21 @@ describe("Hidden Subtree", () => { expect(updatedBoardTemplate?.title).not.toBe("My renamed board"); }); + it("enforces webviewSrc of templates", () => { + const apiRefNote = becca.getNote("_help_9qPsTWBorUhQ"); + expect(apiRefNote).toBeDefined(); + + cls.init(() => { + apiRefNote!.setAttribute("label", "webViewSrc", "foo"); + apiRefNote!.save(); + hiddenSubtreeService.checkHiddenSubtree(true); + }); + + const updatedApiRefNote = becca.getNote("_help_9qPsTWBorUhQ"); + expect(updatedApiRefNote).toBeDefined(); + expect(updatedApiRefNote?.getLabelValue("webViewSrc")).not.toBe("foo"); + }); + it("maintains launchers hidden, if they were shown by default but moved by the user", () => { const launcher = becca.getNote("_lbLlmChat"); const branch = launcher?.getParentBranches()[0]; diff --git a/apps/server/src/services/hidden_subtree.ts b/apps/server/src/services/hidden_subtree.ts index d1efdcbda..a95955f46 100644 --- a/apps/server/src/services/hidden_subtree.ts +++ b/apps/server/src/services/hidden_subtree.ts @@ -451,8 +451,16 @@ function checkHiddenSubtreeRecursively(parentNoteId: string, item: HiddenSubtree // Enforce attribute structure if needed. if (item.enforceAttributes) { for (const attribute of note.getAttributes()) { - if (!attrs.some(a => a.name === attribute.name)) { + // Remove unwanted attributes. + const attrDef = attrs.find(a => a.name === attribute.name); + if (!attrDef) { attribute.markAsDeleted(); + continue; + } + + // Ensure value is consistent. + if (attribute.value !== attrDef.value) { + note.setAttributeValueById(attribute.attributeId, attrDef.value); } } } diff --git a/apps/server/src/services/in_app_help.ts b/apps/server/src/services/in_app_help.ts index 0da176381..1424493ae 100644 --- a/apps/server/src/services/in_app_help.ts +++ b/apps/server/src/services/in_app_help.ts @@ -78,6 +78,7 @@ export function parseNoteMeta(noteMeta: NoteMeta, docNameRoot: string): HiddenSu // Handle web views if (noteMeta.type === "webView") { item.type = "webView"; + item.enforceAttributes = true; } // Handle children From 947330ed7308e3e704f7844a3deea093b0f0041b Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 2 Nov 2025 22:08:42 +0200 Subject: [PATCH 054/136] chore(options/etapi): update help --- apps/client/src/translations/en/translation.json | 4 ---- .../options/components/OptionsSection.tsx | 2 +- .../src/widgets/type_widgets/options/etapi.tsx | 16 ++++++---------- 3 files changed, 7 insertions(+), 15 deletions(-) diff --git a/apps/client/src/translations/en/translation.json b/apps/client/src/translations/en/translation.json index 78056e19a..9f203eab3 100644 --- a/apps/client/src/translations/en/translation.json +++ b/apps/client/src/translations/en/translation.json @@ -1453,10 +1453,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI is a REST API used to access Trilium instance programmatically, without UI.", - "see_more": "See more details in the {{- link_to_wiki}} and the {{- link_to_openapi_spec}} or the {{- link_to_swagger_ui }}.", - "wiki": "wiki", - "openapi_spec": "ETAPI OpenAPI spec", - "swagger_ui": "ETAPI Swagger UI", "create_token": "Create new ETAPI token", "existing_tokens": "Existing tokens", "no_tokens_yet": "There are no tokens yet. Click on the button above to create one.", diff --git a/apps/client/src/widgets/type_widgets/options/components/OptionsSection.tsx b/apps/client/src/widgets/type_widgets/options/components/OptionsSection.tsx index ff78d8a33..ce42b66e3 100644 --- a/apps/client/src/widgets/type_widgets/options/components/OptionsSection.tsx +++ b/apps/client/src/widgets/type_widgets/options/components/OptionsSection.tsx @@ -2,7 +2,7 @@ import type { ComponentChildren } from "preact"; import { CSSProperties } from "preact/compat"; interface OptionsSectionProps { - title?: string; + title?: ComponentChildren; children: ComponentChildren; noCard?: boolean; style?: CSSProperties; diff --git a/apps/client/src/widgets/type_widgets/options/etapi.tsx b/apps/client/src/widgets/type_widgets/options/etapi.tsx index 3ee7c7e19..f49dc85f7 100644 --- a/apps/client/src/widgets/type_widgets/options/etapi.tsx +++ b/apps/client/src/widgets/type_widgets/options/etapi.tsx @@ -11,6 +11,7 @@ import dialog from "../../../services/dialog"; import { formatDateTime } from "../../../utils/formatters"; import ActionButton from "../../react/ActionButton"; import { useTriliumEvent } from "../../react/hooks"; +import HelpButton from "../../react/HelpButton"; type RenameTokenCallback = (tokenId: string, oldName: string) => Promise; type DeleteTokenCallback = (tokenId: string, name: string ) => Promise; @@ -48,19 +49,13 @@ export default function EtapiSettings() { message: t("etapi.token_created_message"), defaultValue: authToken }); - }, []); + }, []); return ( - {t("etapi.description")}
        - ${t("etapi.wiki")}`, - // TODO: We use window.open src/public/app/services/link.ts -> prevents regular click behavior on "a" element here because it's a relative path - link_to_openapi_spec: `${t("etapi.openapi_spec")}`, - link_to_swagger_ui: `${t("etapi.swagger_ui")}` - })} /> + {t("etapi.description")} +
      2. -
      3. The size of the source/preview panes can be adjusted by hovering over +
      4. The size of the source/preview panes can be adjusted by hovering over the border between them and dragging it with the mouse.
      5. -
      6. In the Floating buttons area: +
      7. In the Floating buttons area:
          -
        • The source/preview can be laid out left-right or bottom-top via the Move editing pane to the left / bottom option.
        • -
        • Press Lock editing to automatically mark the note as read-only. +
        • The source/preview can be laid out left-right or bottom-top via the Move editing pane to the left / bottom option.
        • +
        • Press Lock editing to automatically mark the note as read-only. In this mode, the code pane is hidden and the diagram is displayed full-size. Similarly, press Unlock editing to mark a read-only note as editable.
        • -
        • Press the Copy image reference to the clipboard to be able to insert - the image representation of the diagram into a text note. See Image references for more information.
        • -
        • Press the Export diagram as SVG to download a scalable/vector rendering - of the diagram. Can be used to present the diagram without degrading when - zooming.
        • -
        • Press the Export diagram as PNG to download a normal image (at +
        • Press the Copy image reference to the clipboard to be able to insert + the image representation of the diagram into a text note. See Image references for more information.
        • +
        • Press the Export diagram as SVG to download a scalable/vector rendering + of the diagram. Can be used to present the diagram without degrading when + zooming.
        • +
        • Press the Export diagram as PNG to download a normal image (at 1x scale, raster) of the diagram. Can be used to send the diagram in more traditional channels such as e-mail.
        • -
        -
      8. +
    +

Errors in the diagram

If there is an error in the source code, the error will be displayed in diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types/Mermaid Diagrams/Syntax reference.dat b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types/Mermaid Diagrams/Syntax reference.dat new file mode 100644 index 000000000..e69de29bb diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index d748d499a..7c23b54d6 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -8838,6 +8838,13 @@ "value": "bx bx-selection", "isInheritable": false, "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "WWgeUaBb7UfC", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -8921,6 +8928,33 @@ "dataFileName": "ELK layout_ELK on.svg" } ] + }, + { + "isClone": false, + "noteId": "WWgeUaBb7UfC", + "notePath": [ + "pOsGYCXsbNQG", + "KSZ04uQ2D1St", + "s1aBHPd79XYj", + "WWgeUaBb7UfC" + ], + "title": "Syntax reference", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "webView", + "mime": "", + "attributes": [ + { + "type": "label", + "name": "webViewSrc", + "value": "https://mermaid.js.org/intro/syntax-reference.html", + "isInheritable": false, + "position": 10 + } + ], + "dataFileName": "Syntax reference.dat", + "attachments": [] } ] }, diff --git a/docs/User Guide/User Guide/Note Types/Mermaid Diagrams.md b/docs/User Guide/User Guide/Note Types/Mermaid Diagrams.md index 61cf0d515..ff2954f42 100644 --- a/docs/User Guide/User Guide/Note Types/Mermaid Diagrams.md +++ b/docs/User Guide/User Guide/Note Types/Mermaid Diagrams.md @@ -1,10 +1,11 @@ # Mermaid Diagrams +> [!TIP] +> For a quick understanding of the Mermaid syntax, see Syntax reference (official documentation). +

Trilium supports Mermaid, which adds support for various diagrams such as flowchart, sequence diagram, class diagram, state diagram, pie charts, etc., all using a text description of the chart instead of manually drawing the diagram. -For the official documentation of Mermaid.js see [mermaid.js.org/intro/](https://mermaid.js.org/intro/). - ## Layouts Depending on the chart being edited and user preference, there are two layouts supported by the Mermaid note type: diff --git a/docs/User Guide/User Guide/Note Types/Mermaid Diagrams/Syntax reference.dat b/docs/User Guide/User Guide/Note Types/Mermaid Diagrams/Syntax reference.dat new file mode 100644 index 000000000..e69de29bb From 0c1efd34029976f80ff973502ab096e8825095c7 Mon Sep 17 00:00:00 2001 From: Eugene Date: Sun, 2 Nov 2025 21:21:38 +0100 Subject: [PATCH 057/136] Translated using Weblate (Russian) Currently translated at 64.4% (76 of 118 strings) Translation: Trilium Notes/README Translate-URL: https://hosted.weblate.org/projects/trilium/readme/ru/ --- docs/README-ru.md | 181 +++++++++++++++++++++++----------------------- 1 file changed, 91 insertions(+), 90 deletions(-) diff --git a/docs/README-ru.md b/docs/README-ru.md index d7d5af43f..cfe5bb9bf 100644 --- a/docs/README-ru.md +++ b/docs/README-ru.md @@ -11,19 +11,19 @@ # Trilium Notes -![GitHub Sponsors](https://img.shields.io/github/sponsors/eliandoran) -![LiberaPay patrons](https://img.shields.io/liberapay/patrons/ElianDoran)\ -![Docker Pulls](https://img.shields.io/docker/pulls/triliumnext/trilium) -![GitHub Downloads (all assets, all +![Спонсоры GitHub](https://img.shields.io/github/sponsors/eliandoran) ![Меценаты +LiberaPay ](https://img.shields.io/liberapay/patrons/ElianDoran)\ +![Загрузок Docker](https://img.shields.io/docker/pulls/triliumnext/trilium) +![Загрузок GitHub (all assets, all releases)](https://img.shields.io/github/downloads/triliumnext/trilium/total)\ [![RelativeCI](https://badges.relative-ci.com/badges/Di5q7dz9daNDZ9UXi0Bp?branch=develop)](https://app.relative-ci.com/projects/Di5q7dz9daNDZ9UXi0Bp) -[![Translation -status](https://hosted.weblate.org/widget/trilium/svg-badge.svg)](https://hosted.weblate.org/engage/trilium/) +[![Процесс +перевода](https://hosted.weblate.org/widget/trilium/svg-badge.svg)](https://hosted.weblate.org/engage/trilium/) -[English](./README.md) | [Chinese (Simplified)](./docs/README-ZH_CN.md) | -[Chinese (Traditional)](./docs/README-ZH_TW.md) | [Russian](./docs/README-ru.md) -| [Japanese](./docs/README-ja.md) | [Italian](./docs/README-it.md) | -[Spanish](./docs/README-es.md) +[Английский](./README.md) | [Китайский (Упрощенный)](./docs/README-ZH_CN.md) | +[Китайский (Традиционный)](./docs/README-ZH_TW.md) | +[Русский](./docs/README-ru.md) | [Японский](./docs/README-ja.md) | +[Итальянский](./docs/README-it.md) | [Испанский](./docs/README-es.md) Trilium Notes – это приложение для заметок с иерархической структурой, ориентированное на создание больших персональных баз знаний. @@ -33,38 +33,38 @@ Trilium Notes – это приложение для заметок с иера Trilium Screenshot -## ⏬ Download -- [Latest release](https://github.com/TriliumNext/Trilium/releases/latest) – - stable version, recommended for most users. -- [Nightly build](https://github.com/TriliumNext/Trilium/releases/tag/nightly) – - unstable development version, updated daily with the latest features and - fixes. +## ⏬ Загрузка +- [Последний релиз](https://github.com/TriliumNext/Trilium/releases/latest) – + стабильная версия, подойдёт для большинства пользователей. +- [Ночной билд](https://github.com/TriliumNext/Trilium/releases/tag/nightly) – + нестабильная разрабатываемая версия, ежедневно получает новые функции и + исправления. ## 📚 Документация -**Visit our comprehensive documentation at +**Полная документация по адресу [docs.triliumnotes.org](https://docs.triliumnotes.org/)** -Our documentation is available in multiple formats: -- **Online Documentation**: Browse the full documentation at +Документация доступна в нескольких форматах: +- **Онлайн Документация**: Полная документация доступна по адресу: [docs.triliumnotes.org](https://docs.triliumnotes.org/) -- **In-App Help**: Press `F1` within Trilium to access the same documentation - directly in the application +- **Справка в приложении**: Нажмите`F1` в Trilium для доступа к этой + документации прямо в приложении - **GitHub**: Navigate through the [User Guide](./docs/User%20Guide/User%20Guide/) in this repository -### Quick Links -- [Getting Started Guide](https://docs.triliumnotes.org/) -- [Installation - Instructions](./docs/User%20Guide/User%20Guide/Installation%20&%20Setup/Server%20Installation.md) -- [Docker - Setup](./docs/User%20Guide/User%20Guide/Installation%20&%20Setup/Server%20Installation/1.%20Installing%20the%20server/Using%20Docker.md) -- [Upgrading +### Важные Ссылки +- [Руководство по началу работы](https://docs.triliumnotes.org/) +- [Инструкция по + установке](./docs/User%20Guide/User%20Guide/Installation%20&%20Setup/Server%20Installation.md) +- [Установка + Docker](./docs/User%20Guide/User%20Guide/Installation%20&%20Setup/Server%20Installation/1.%20Installing%20the%20server/Using%20Docker.md) +- [Обновление TriliumNext](./docs/User%20Guide/User%20Guide/Installation%20%26%20Setup/Upgrading%20TriliumNext.md) -- [Basic Concepts and - Features](./docs/User%20Guide/User%20Guide/Basic%20Concepts%20and%20Features/Notes.md) -- [Patterns of Personal Knowledge - Base](https://triliumnext.github.io/Docs/Wiki/patterns-of-personal-knowledge) +- [Основные идеи и + возможности](./docs/User%20Guide/User%20Guide/Basic%20Concepts%20and%20Features/Notes.md) +- [Шаблоны Персональный Базы + Знаний](https://triliumnext.github.io/Docs/Wiki/patterns-of-personal-knowledge) ## 🎁 Возможности @@ -88,11 +88,11 @@ Our documentation is available in multiple formats: * Специальные [атрибуты](https://triliumnext.github.io/Docs/Wiki/attributes) позволяют гибко организовать структуру, используются для поиска и продвинутого [скриптинга](https://triliumnext.github.io/Docs/Wiki/scripts) -* UI available in English, German, Spanish, French, Romanian, and Chinese - (simplified and traditional) -* Direct [OpenID and TOTP +* Интерфейс доступен на Английском, Немецком, Испанском, Французском, Румынском + и Китайском (упрощённом и традиционном) +* Интеграция [OpenID and TOTP integration](./docs/User%20Guide/User%20Guide/Installation%20%26%20Setup/Server%20Installation/Multi-Factor%20Authentication.md) - for more secure login + для более безопасного входа * [Синхронизация](https://triliumnext.github.io/Docs/Wiki/synchronization) заметок со своим сервером * there's a [3rd party service for hosting synchronisation @@ -223,20 +223,20 @@ installation docs](https://triliumnext.github.io/Docs/Wiki/server-installation). ## 💻 Участвуйте в разработке -### Translations +### Переводы -If you are a native speaker, help us translate Trilium by heading over to our -[Weblate page](https://hosted.weblate.org/engage/trilium/). +Если вы являетесь носителем языка, помогите нам перевести Trilium, перейдя на +нашу [страницу Weblate](https://hosted.weblate.org/engage/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 @@ -244,10 +244,10 @@ pnpm install pnpm run server:start ``` -### Documentation +### Документация -Download the repository, install dependencies using `pnpm` and then run the -environment required to edit the documentation: +Скачайте репозиторий, установите зависимости с помощью `pnpm`, затем запустите +окружение, необходимое для редактирование документации: ```shell git clone https://github.com/TriliumNext/Trilium.git cd Trilium @@ -255,9 +255,9 @@ pnpm install pnpm edit-docs:edit-docs ``` -### Building the Executable -Download the repository, install dependencies using `pnpm` and then build the -desktop app for Windows: +### Сборка исполняемого файла +Скачайте репозиторий, установите зависимости с помощью `pnpm`, затем соберите +приложение для Windows: ```shell git clone https://github.com/TriliumNext/Trilium.git cd Trilium @@ -265,10 +265,10 @@ pnpm install pnpm run --filter desktop electron-forge:make --arch=x64 --platform=win32 ``` -For more details, see the [development -docs](https://github.com/TriliumNext/Trilium/tree/main/docs/Developer%20Guide/Developer%20Guide). +Для получения подробностей, смотрите [документы +разработки](https://github.com/TriliumNext/Trilium/tree/main/docs/Developer%20Guide/Developer%20Guide). -### Developer Documentation +### Документация для разработчиков Please view the [documentation guide](https://github.com/TriliumNext/Trilium/blob/main/docs/Developer%20Guide/Developer%20Guide/Environment%20Setup.md) @@ -277,48 +277,49 @@ described in the "Discuss with us" section above. ## 👏 Благодарности -* [zadam](https://github.com/zadam) for the original concept and implementation - of the application. -* [Sarah Hussein](https://github.com/Sarah-Hussein) for designing the - application icon. -* [nriver](https://github.com/nriver) for his work on internationalization. +* [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. +* [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: +Trilium не существовал бы без технологий, лежащих в его основе: -* [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. -* [Excalidraw](https://github.com/excalidraw/excalidraw) - the infinite - whiteboard used in Canvas notes. -* [Mind Elixir](https://github.com/SSShooter/mind-elixir-core) - providing the - mind map functionality. -* [Leaflet](https://github.com/Leaflet/Leaflet) - for rendering geographical - maps. -* [Tabulator](https://github.com/olifolkerd/tabulator) - for the interactive - table used in collections. -* [FancyTree](https://github.com/mar10/fancytree) - feature-rich tree library - without real competition. -* [jsPlumb](https://github.com/jsplumb/jsplumb) - visual connectivity library. - Used in [relation - maps](https://triliumnext.github.io/Docs/Wiki/relation-map.html) and [link - maps](https://triliumnext.github.io/Docs/Wiki/note-map.html#link-map) +* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - визуальный редактор + текстовых заметок. Мы благодарны за предоставленный нам набор дополнительный + функций. +* [CodeMirror](https://github.com/codemirror/CodeMirror) - редактор кода с + поддержкой огромного количества языков. +* [Excalidraw](https://github.com/excalidraw/excalidraw) - бесконечная белая + доска, используемая в заметках Canvas. +* [Mind Elixir](https://github.com/SSShooter/mind-elixir-core) - обеспечивает + функционирование ментальной карты. +* [Leaflet](https://github.com/Leaflet/Leaflet) - отображение географических + карт. +* [Tabulator](https://github.com/olifolkerd/tabulator) - интерактивные таблицы, + используемые в коллекциях. +* [FancyTree](https://github.com/mar10/fancytree) - многофункциональная + библиотека деревьев, не имеющая себе равных. +* [jsPlumb](https://github.com/jsplumb/jsplumb) - библиотека визуальных связей. + Используется в [картах + связей](https://triliumnext.github.io/Docs/Wiki/relation-map.html) и [картах + ссылок](https://triliumnext.github.io/Docs/Wiki/note-map.html#link-map) -## 🤝 Support +## 🤝 Поддержка -Trilium is built and maintained with [hundreds of hours of -work](https://github.com/TriliumNext/Trilium/graphs/commit-activity). Your -support keeps it open-source, improves features, and covers costs such as -hosting. +На создание и поддержку Trilium затрачены [сотни часов +работы](https://github.com/TriliumNext/Trilium/graphs/commit-activity). Ваша +поддержка помогает ему оставаться open-source, улучшает функции и покрывает +расходы, такие как хостинг. -Consider supporting the main developer -([eliandoran](https://github.com/eliandoran)) of the application via: +Вы также можете поддержать главного разработчика приложения +([eliandoran](https://github.com/eliandoran)) с помощью: - [GitHub Sponsors](https://github.com/sponsors/eliandoran) - [PayPal](https://paypal.me/eliandoran) From b312b6f3bcdaf7853052df0072c30a504fbeb6ab Mon Sep 17 00:00:00 2001 From: Eugene Date: Sun, 2 Nov 2025 20:56:00 +0100 Subject: [PATCH 058/136] Translated using Weblate (Russian) Currently translated at 15.1% (23 of 152 strings) Translation: Trilium Notes/Website Translate-URL: https://hosted.weblate.org/projects/trilium/website/ru/ --- .../src/translations/ru/translation.json | 38 ++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/apps/website/src/translations/ru/translation.json b/apps/website/src/translations/ru/translation.json index 0967ef424..809e7a731 100644 --- a/apps/website/src/translations/ru/translation.json +++ b/apps/website/src/translations/ru/translation.json @@ -1 +1,37 @@ -{} +{ + "get-started": { + "title": "Для начала", + "desktop_title": "Установите приложение для ПК (v{{version}})", + "architecture": "Архитектура:", + "older_releases": "См. старые релизы", + "server_title": "Настройка сервера для работы с нескольких устройств" + }, + "hero_section": { + "title": "Упорядочите свои мысли. Создайте личную базу знаний.", + "subtitle": "Trilium - это open-source решение для ведение заметок и организации личной базы знаний. Используйте его локально на своём ПК, или синхронизируйтесь с собственным сервером, чтобы ваши заметки всегда были с вами.", + "get_started": "Для начала", + "github": "GitHub", + "dockerhub": "Docker Hub", + "screenshot_alt": "Скриншот приложения Trilium Notes для ПК" + }, + "organization_benefits": { + "title": "Структура", + "note_structure_title": "Структура заметки", + "note_structure_description": "Строки могут распологаться иерархически. Не нужно постоянно создавать папки, так как каждая заметка может содержать вложенные под-заметки. Одну и ту же заметку можно добавить сразу в несколько мест в иерархии.", + "attributes_title": "Ярлыки и связи заметок", + "hoisting_title": "Рабочие пространства и хосты", + "hoisting_description": "Легко разделяйте заметки на личные и рабочие, группируя их в рабочей области. Благодаря этому в вашем дереве будет отображаться только определённый набор заметок." + }, + "productivity_benefits": { + "revisions_content": "Заметки периодически сохраняются в фоне, ревизии могут быть использованы для просмотра или отмены случайных изменений. Ревизии также можно создавать самостоятельно.", + "sync_title": "Синхронизация", + "protected_notes_title": "Защищённые заметки", + "jump_to_title": "Бастрый поиск и команды", + "search_title": "Глубокий поиск", + "web_clipper_content": "Перемещайте целые веб-страницы (или скриншоты) в Trilium с помощью браузерного расширения web clipper." + }, + "note_types": { + "title": "Несколько способов представления вашей информации", + "text_title": "Текстовые заметки" + } +} From 510601037d80d405546ae77f4c57d1c1b07ca908 Mon Sep 17 00:00:00 2001 From: Hosted Weblate Date: Sun, 2 Nov 2025 21:35:49 +0100 Subject: [PATCH 059/136] Update translation files Updated by "Cleanup translation files" add-on in Weblate. Translation: Trilium Notes/Client Translate-URL: https://hosted.weblate.org/projects/trilium/client/ --- apps/client/src/translations/ar/translation.json | 1 - apps/client/src/translations/cn/translation.json | 4 ---- apps/client/src/translations/de/translation.json | 4 ---- apps/client/src/translations/es/translation.json | 4 ---- apps/client/src/translations/fr/translation.json | 6 +----- apps/client/src/translations/it/translation.json | 4 ---- apps/client/src/translations/ja/translation.json | 4 ---- apps/client/src/translations/pl/translation.json | 4 ---- apps/client/src/translations/pt/translation.json | 4 ---- apps/client/src/translations/pt_br/translation.json | 4 ---- apps/client/src/translations/ro/translation.json | 6 +----- apps/client/src/translations/ru/translation.json | 4 ---- apps/client/src/translations/tw/translation.json | 6 +----- apps/client/src/translations/uk/translation.json | 4 ---- 14 files changed, 3 insertions(+), 56 deletions(-) diff --git a/apps/client/src/translations/ar/translation.json b/apps/client/src/translations/ar/translation.json index b04472d7c..dffb4f9d4 100644 --- a/apps/client/src/translations/ar/translation.json +++ b/apps/client/src/translations/ar/translation.json @@ -716,7 +716,6 @@ "backup_database_now": "نسخ اختياطي لقاعدة البيانات الان" }, "etapi": { - "wiki": "ويكي", "created": "تم الأنشاء", "actions": "أجراءات", "title": "ETAPI", diff --git a/apps/client/src/translations/cn/translation.json b/apps/client/src/translations/cn/translation.json index e9738c25a..44aa6d387 100644 --- a/apps/client/src/translations/cn/translation.json +++ b/apps/client/src/translations/cn/translation.json @@ -1289,10 +1289,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI 是一个 REST API,用于以编程方式访问 Trilium 实例,而无需 UI。", - "see_more": "有关更多详细信息,请参见 {{- link_to_wiki}} 和 {{- link_to_openapi_spec}} 或 {{- link_to_swagger_ui}}。", - "wiki": "维基", - "openapi_spec": "ETAPI OpenAPI 规范", - "swagger_ui": "ETAPI Swagger UI", "create_token": "创建新的 ETAPI 令牌", "existing_tokens": "现有令牌", "no_tokens_yet": "目前还没有令牌。点击上面的按钮创建一个。", diff --git a/apps/client/src/translations/de/translation.json b/apps/client/src/translations/de/translation.json index 6d4790da8..6ff9525ff 100644 --- a/apps/client/src/translations/de/translation.json +++ b/apps/client/src/translations/de/translation.json @@ -1286,10 +1286,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI ist eine REST-API, die für den programmgesteuerten Zugriff auf die Trilium-Instanz ohne Benutzeroberfläche verwendet wird.", - "see_more": "Weitere Details können im {{- link_to_wiki}} und in der {{- link_to_openapi_spec}} oder der {{- link_to_swagger_ui }} gefunden werden.", - "wiki": "Wiki", - "openapi_spec": "ETAPI OpenAPI-Spezifikation", - "swagger_ui": "ETAPI Swagger UI", "create_token": "Erstelle ein neues ETAPI-Token", "existing_tokens": "Vorhandene Token", "no_tokens_yet": "Es sind noch keine Token vorhanden. Klicke auf die Schaltfläche oben, um eine zu erstellen.", diff --git a/apps/client/src/translations/es/translation.json b/apps/client/src/translations/es/translation.json index fe2f00dc0..b83fcf7bb 100644 --- a/apps/client/src/translations/es/translation.json +++ b/apps/client/src/translations/es/translation.json @@ -1446,10 +1446,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI es una REST API que se utiliza para acceder a la instancia de Trilium mediante programación, sin interfaz de usuario.", - "see_more": "Véa más detalles en el {{- link_to_wiki}} y el {{- link_to_openapi_spec}} o el {{- link_to_swagger_ui }}.", - "wiki": "wiki", - "openapi_spec": "Especificación ETAPI OpenAPI", - "swagger_ui": "ETAPI Swagger UI", "create_token": "Crear nuevo token ETAPI", "existing_tokens": "Tokens existentes", "no_tokens_yet": "Aún no hay tokens. Dé clic en el botón de arriba para crear uno.", diff --git a/apps/client/src/translations/fr/translation.json b/apps/client/src/translations/fr/translation.json index 84593207b..1a4a1dec8 100644 --- a/apps/client/src/translations/fr/translation.json +++ b/apps/client/src/translations/fr/translation.json @@ -1288,8 +1288,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI est une API REST utilisée pour accéder à l'instance Trilium par programme, sans interface utilisateur.", - "wiki": "wiki", - "openapi_spec": "Spec ETAPI OpenAPI", "create_token": "Créer un nouveau jeton ETAPI", "existing_tokens": "Jetons existants", "no_tokens_yet": "Il n'y a pas encore de jetons. Cliquez sur le bouton ci-dessus pour en créer un.", @@ -1306,9 +1304,7 @@ "delete_token": "Supprimer/désactiver ce token", "rename_token_title": "Renommer le jeton", "rename_token_message": "Veuillez saisir le nom du nouveau jeton", - "delete_token_confirmation": "Êtes-vous sûr de vouloir supprimer le jeton ETAPI « {{name}} » ?", - "see_more": "Voir plus de détails dans le {{- link_to_wiki}} et le {{- link_to_openapi_spec}} ou le {{- link_to_swagger_ui }}.", - "swagger_ui": "Interface utilisateur ETAPI Swagger" + "delete_token_confirmation": "Êtes-vous sûr de vouloir supprimer le jeton ETAPI « {{name}} » ?" }, "options_widget": { "options_status": "Statut des options", diff --git a/apps/client/src/translations/it/translation.json b/apps/client/src/translations/it/translation.json index d8bf6bad6..5105b13f3 100644 --- a/apps/client/src/translations/it/translation.json +++ b/apps/client/src/translations/it/translation.json @@ -132,10 +132,6 @@ "new_token_message": "Inserisci il nome del nuovo token", "title": "ETAPI", "description": "ETAPI è un'API REST utilizzata per accedere alle istanze di Trilium in modo programmatico, senza interfaccia utente.", - "see_more": "Per maggiori dettagli consulta {{- link_to_wiki}} e {{- link_to_openapi_spec}} o {{- link_to_swagger_ui}}.", - "wiki": "wiki", - "openapi_spec": "Specifiche ETAPI OpenAPI", - "swagger_ui": "Interfaccia utente ETAPI Swagger", "create_token": "Crea un nuovo token ETAPI", "existing_tokens": "Token esistenti", "no_tokens_yet": "Non ci sono ancora token. Clicca sul pulsante qui sopra per crearne uno.", diff --git a/apps/client/src/translations/ja/translation.json b/apps/client/src/translations/ja/translation.json index 05c8b48f9..6a9b4f75e 100644 --- a/apps/client/src/translations/ja/translation.json +++ b/apps/client/src/translations/ja/translation.json @@ -657,10 +657,6 @@ "created": "作成日時", "title": "ETAPI", "description": "ETAPI は、Trilium インスタンスに UI なしでプログラム的にアクセスするための REST API です。", - "see_more": "詳細は{{- link_to_wiki}}と{{- link_to_openapi_spec}}または{{- link_to_swagger_ui }}を参照してください。", - "wiki": "wiki", - "openapi_spec": "ETAPI OpenAPIの仕様", - "swagger_ui": "ETAPI Swagger UI", "create_token": "新しくETAPIトークンを作成", "existing_tokens": "既存のトークン", "no_tokens_yet": "トークンはまだありません。上のボタンをクリックして作成してください。", diff --git a/apps/client/src/translations/pl/translation.json b/apps/client/src/translations/pl/translation.json index 426296d14..6ff4b26f4 100644 --- a/apps/client/src/translations/pl/translation.json +++ b/apps/client/src/translations/pl/translation.json @@ -1663,10 +1663,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI to interfejs API REST używany do programowego dostępu do instancji Trilium, bez interfejsu użytkownika.", - "see_more": "Zobacz więcej szczegółów w {{- link_to_wiki}} oraz w {{- link_to_openapi_spec}} lub {{- link_to_swagger_ui }}.", - "wiki": "wiki", - "openapi_spec": "specyfikacja ETAPI OpenAPI", - "swagger_ui": "ETAPI Swagger UI", "create_token": "Utwórz nowy token ETAPI", "existing_tokens": "Istniejące tokeny", "no_tokens_yet": "Nie ma jeszcze żadnych tokenów. Kliknij przycisk powyżej, aby utworzyć jeden.", diff --git a/apps/client/src/translations/pt/translation.json b/apps/client/src/translations/pt/translation.json index f386f61e8..5497ad817 100644 --- a/apps/client/src/translations/pt/translation.json +++ b/apps/client/src/translations/pt/translation.json @@ -1422,10 +1422,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI é uma API REST usada para aceder a instância do Trilium programaticamente, sem interface gráfica.", - "see_more": "Veja mais pormenores no {{- link_to_wiki}}, na {{- link_to_openapi_spec}} ou na {{- link_to_swagger_ui}}.", - "wiki": "wiki", - "openapi_spec": "Especificação OpenAPI do ETAPI", - "swagger_ui": "ETAPI Swagger UI", "create_token": "Criar token ETAPI", "existing_tokens": "Tokens existentes", "no_tokens_yet": "Ainda não existem tokens. Clique no botão acima para criar um.", diff --git a/apps/client/src/translations/pt_br/translation.json b/apps/client/src/translations/pt_br/translation.json index 08d891356..0d1676832 100644 --- a/apps/client/src/translations/pt_br/translation.json +++ b/apps/client/src/translations/pt_br/translation.json @@ -1932,10 +1932,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI é uma API REST usada para acessar a instância do Trilium programaticamente, sem interface gráfica.", - "see_more": "Veja mais detalhes no {{- link_to_wiki}}, na {{- link_to_openapi_spec}} ou na {{- link_to_swagger_ui}}.", - "wiki": "wiki", - "openapi_spec": "Especificação OpenAPI do ETAPI", - "swagger_ui": "ETAPI Swagger UI", "create_token": "Criar novo token ETAPI", "existing_tokens": "Tokens existentes", "no_tokens_yet": "Ainda não existem tokens. Clique no botão acima para criar um.", diff --git a/apps/client/src/translations/ro/translation.json b/apps/client/src/translations/ro/translation.json index c683aba59..dd8947003 100644 --- a/apps/client/src/translations/ro/translation.json +++ b/apps/client/src/translations/ro/translation.json @@ -507,17 +507,13 @@ "new_token_message": "Introduceți denumirea noului token", "new_token_title": "Token ETAPI nou", "no_tokens_yet": "Nu există încă token-uri. Clic pe butonul de deasupra pentru a crea una.", - "openapi_spec": "Specificația OpenAPI pentru ETAPI", - "swagger_ui": "UI-ul Swagger pentru ETAPI", "rename_token": "Redenumește token-ul", "rename_token_message": "Introduceți denumirea noului token", "rename_token_title": "Redenumire token", - "see_more": "Vedeți mai multe detalii în {{- link_to_wiki}} și în {{- link_to_openapi_spec}} sau în {{- link_to_swagger_ui }}.", "title": "ETAPI", "token_created_message": "Copiați token-ul creat în clipboard. Trilium stochează token-ul ca hash așadar această valoare poate fi văzută doar acum.", "token_created_title": "Token ETAPI creat", - "token_name": "Denumire token", - "wiki": "wiki" + "token_name": "Denumire token" }, "execute_script": { "example_1": "De exemplu, pentru a adăuga un șir de caractere la titlul unei notițe, se poate folosi acest mic script:", diff --git a/apps/client/src/translations/ru/translation.json b/apps/client/src/translations/ru/translation.json index c1e62e327..adc2bab50 100644 --- a/apps/client/src/translations/ru/translation.json +++ b/apps/client/src/translations/ru/translation.json @@ -1440,7 +1440,6 @@ }, "etapi": { "title": "ETAPI", - "wiki": "вики", "created": "Создано", "actions": "Действия", "existing_tokens": "Существующие токены", @@ -1448,10 +1447,7 @@ "default_token_name": "новый токен", "rename_token_title": "Переименовать токен", "description": "ETAPI — это REST API, используемый для программного доступа к экземпляру Trilium без пользовательского интерфейса.", - "see_more": "Более подробную информацию смотрите в {{- link_to_wiki}} и {{- link_to_openapi_spec}} или {{- link_to_swagger_ui }}.", "create_token": "Создать новый токен ETAPI", - "openapi_spec": "Спецификация ETAPI OpenAPI", - "swagger_ui": "Пользовательский интерфейс ETAPI Swagger", "new_token_title": "Новый токен ETAPI", "token_created_title": "Создан токен ETAPI", "rename_token": "Переименовать этот токен", diff --git a/apps/client/src/translations/tw/translation.json b/apps/client/src/translations/tw/translation.json index e31228844..2ba0f9afd 100644 --- a/apps/client/src/translations/tw/translation.json +++ b/apps/client/src/translations/tw/translation.json @@ -1281,8 +1281,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI 是一個 REST API,用於以編程方式訪問 Trilium 實例,而無需 UI。", - "wiki": "維基", - "openapi_spec": "ETAPI OpenAPI 規範", "create_token": "新增 ETAPI 令牌", "existing_tokens": "現有令牌", "no_tokens_yet": "目前還沒有令牌。點擊上面的按鈕新增一個。", @@ -1299,9 +1297,7 @@ "delete_token": "刪除 / 停用此令牌", "rename_token_title": "重新命名令牌", "rename_token_message": "請輸入新的令牌名稱", - "delete_token_confirmation": "您確定要刪除 ETAPI 令牌 \"{{name}}\" 嗎?", - "see_more": "有關更多詳細資訊,請參閱 {{- link_to_wiki}} 和 {{- link_to_openapi_spec}} 或 {{- link_to_swagger_ui}}。", - "swagger_ui": "ETAPI Swagger UI" + "delete_token_confirmation": "您確定要刪除 ETAPI 令牌 \"{{name}}\" 嗎?" }, "options_widget": { "options_status": "選項狀態", diff --git a/apps/client/src/translations/uk/translation.json b/apps/client/src/translations/uk/translation.json index 9c2a1eca1..ebddac41b 100644 --- a/apps/client/src/translations/uk/translation.json +++ b/apps/client/src/translations/uk/translation.json @@ -1402,10 +1402,6 @@ "etapi": { "title": "ETAPI", "description": "ETAPI — це REST API, який використовується для програмного доступу до екземпляра Trilium без інтерфейсу користувача.", - "see_more": "Див. докладнішу інформацію у {{- link_to_wiki}} та {{- link_to_openapi_spec}} або {{- link_to_swagger_ui }}.", - "wiki": "вікі", - "openapi_spec": "ETAPI OpenAPI spec", - "swagger_ui": "ETAPI Swagger UI", "create_token": "Створити новий токен ETAPI", "existing_tokens": "Існуючі токени", "no_tokens_yet": "Токенів поки що немає. Натисніть кнопку вище, щоб створити його.", From 4c5b2a7c7524ab21dfd0b5c392ff1b92e7a778b3 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:39:44 +0000 Subject: [PATCH 060/136] Initial plan From 3b02eb8851875e306bd6326f9817a03609939679 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:47:17 +0000 Subject: [PATCH 061/136] Initial plan From 3e0d1bfa4444248d336226fec4862fcc6df466c6 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:47:57 +0000 Subject: [PATCH 062/136] Initial plan From 4fc434a52e518f73d57db75af8b60c8004d4a69f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:52:02 +0000 Subject: [PATCH 063/136] Implement multi-branch prefix editing functionality - Add setPrefixBatch API endpoint to handle batch prefix updates - Update branch_prefix dialog to support multiple branches - Remove noSelectedNotes constraint from edit branch prefix menu - Add translations for multi-branch prefix editing Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- apps/client/src/menus/tree_context_menu.ts | 2 +- .../src/translations/en/translation.json | 5 +- .../src/widgets/dialogs/branch_prefix.tsx | 97 ++++++++++++++----- apps/server/src/routes/api/branches.ts | 26 ++++- apps/server/src/routes/routes.ts | 1 + .../ckeditor5-admonition/sample/ckeditor.d.ts | 7 ++ .../ckeditor5-admonition/sample/ckeditor.js | 81 ++++++++++++++++ .../sample/ckeditor.js.map | 1 + .../src/admonition.js.map | 1 + .../src/admonitionautoformat.js.map | 1 + .../src/admonitioncommand.js.map | 1 + .../src/admonitionediting.js.map | 1 + .../src/admonitionui.js.map | 1 + .../src/augmentation.js.map | 1 + .../ckeditor5-admonition/src/index.js.map | 1 + .../ckeditor5-footnotes/sample/ckeditor.d.ts | 7 ++ .../ckeditor5-footnotes/sample/ckeditor.js | 81 ++++++++++++++++ .../sample/ckeditor.js.map | 1 + .../src/augmentation.js.map | 1 + .../ckeditor5-footnotes/src/constants.js.map | 1 + .../footnote-editing/auto-formatting.js.map | 1 + .../src/footnote-editing/converters.js.map | 1 + .../footnote-editing/footnote-editing.js.map | 1 + .../src/footnote-editing/schema.js.map | 1 + .../src/footnote-ui.js.map | 1 + .../ckeditor5-footnotes/src/footnotes.js.map | 1 + packages/ckeditor5-footnotes/src/index.js.map | 1 + .../src/insert-footnote-command.js.map | 1 + packages/ckeditor5-footnotes/src/utils.js.map | 1 + .../sample/ckeditor.d.ts | 7 ++ .../sample/ckeditor.js | 81 ++++++++++++++++ .../sample/ckeditor.js.map | 1 + .../src/augmentation.js.map | 1 + .../src/index.js.map | 1 + .../ckeditor5-keyboard-marker/src/kbd.js.map | 1 + .../src/kbdediting.js.map | 1 + .../src/kbdui.js.map | 1 + packages/ckeditor5-math/sample/ckeditor.d.ts | 7 ++ packages/ckeditor5-math/sample/ckeditor.js | 81 ++++++++++++++++ .../ckeditor5-math/sample/ckeditor.js.map | 1 + .../ckeditor5-math/src/augmentation.js.map | 1 + .../ckeditor5-math/src/autoformatmath.js.map | 1 + packages/ckeditor5-math/src/automath.js.map | 1 + packages/ckeditor5-math/src/index.js.map | 1 + packages/ckeditor5-math/src/math.js.map | 1 + .../ckeditor5-math/src/mathcommand.js.map | 1 + .../ckeditor5-math/src/mathediting.js.map | 1 + packages/ckeditor5-math/src/mathui.js.map | 1 + .../src/typings-external.js.map | 1 + .../ckeditor5-math/src/ui/mainformview.js.map | 1 + .../ckeditor5-math/src/ui/mathview.js.map | 1 + packages/ckeditor5-math/src/utils.js.map | 1 + .../ckeditor5-mermaid/sample/ckeditor.d.ts | 7 ++ packages/ckeditor5-mermaid/sample/ckeditor.js | 81 ++++++++++++++++ .../ckeditor5-mermaid/sample/ckeditor.js.map | 1 + .../ckeditor5-mermaid/src/augmentation.js.map | 1 + .../src/commands/insertMermaidCommand.js.map | 1 + .../src/commands/mermaidPreviewCommand.js.map | 1 + .../commands/mermaidSourceViewCommand.js.map | 1 + .../commands/mermaidSplitViewCommand.js.map | 1 + packages/ckeditor5-mermaid/src/index.js.map | 1 + packages/ckeditor5-mermaid/src/mermaid.js.map | 1 + .../src/mermaidediting.js.map | 1 + .../src/mermaidtoolbar.js.map | 1 + .../ckeditor5-mermaid/src/mermaidui.js.map | 1 + packages/ckeditor5-mermaid/src/utils.js.map | 1 + .../src/scripts/common/debounce.d.ts | 2 + .../src/scripts/common/debounce.d.ts.map | 1 + .../src/scripts/common/parents.d.ts | 2 + .../src/scripts/common/parents.d.ts.map | 1 + .../src/scripts/common/parsehtml.d.ts | 2 + .../src/scripts/common/parsehtml.d.ts.map | 1 + packages/share-theme/src/scripts/index.d.ts | 3 + .../share-theme/src/scripts/index.d.ts.map | 1 + .../share-theme/src/scripts/modules/api.d.ts | 11 +++ .../src/scripts/modules/api.d.ts.map | 1 + .../src/scripts/modules/expanders.d.ts | 2 + .../src/scripts/modules/expanders.d.ts.map | 1 + .../share-theme/src/scripts/modules/math.d.ts | 3 + .../src/scripts/modules/math.d.ts.map | 1 + .../src/scripts/modules/mermaid.d.ts | 2 + .../src/scripts/modules/mermaid.d.ts.map | 1 + .../src/scripts/modules/mobile.d.ts | 2 + .../src/scripts/modules/mobile.d.ts.map | 1 + .../src/scripts/modules/search.d.ts | 2 + .../src/scripts/modules/search.d.ts.map | 1 + .../src/scripts/modules/theme.d.ts | 8 ++ .../src/scripts/modules/theme.d.ts.map | 1 + .../share-theme/src/scripts/modules/toc.d.ts | 12 +++ .../src/scripts/modules/toc.d.ts.map | 1 + packages/share-theme/src/scripts/test.d.ts | 2 + .../share-theme/src/scripts/test.d.ts.map | 1 + 92 files changed, 663 insertions(+), 25 deletions(-) create mode 100644 packages/ckeditor5-admonition/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-admonition/sample/ckeditor.js create mode 100644 packages/ckeditor5-admonition/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-admonition/src/admonition.js.map create mode 100644 packages/ckeditor5-admonition/src/admonitionautoformat.js.map create mode 100644 packages/ckeditor5-admonition/src/admonitioncommand.js.map create mode 100644 packages/ckeditor5-admonition/src/admonitionediting.js.map create mode 100644 packages/ckeditor5-admonition/src/admonitionui.js.map create mode 100644 packages/ckeditor5-admonition/src/augmentation.js.map create mode 100644 packages/ckeditor5-admonition/src/index.js.map create mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.js create mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-footnotes/src/augmentation.js.map create mode 100644 packages/ckeditor5-footnotes/src/constants.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-ui.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnotes.js.map create mode 100644 packages/ckeditor5-footnotes/src/index.js.map create mode 100644 packages/ckeditor5-footnotes/src/insert-footnote-command.js.map create mode 100644 packages/ckeditor5-footnotes/src/utils.js.map create mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.js create mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/augmentation.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/index.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/kbd.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/kbdediting.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/kbdui.js.map create mode 100644 packages/ckeditor5-math/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-math/sample/ckeditor.js create mode 100644 packages/ckeditor5-math/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-math/src/augmentation.js.map create mode 100644 packages/ckeditor5-math/src/autoformatmath.js.map create mode 100644 packages/ckeditor5-math/src/automath.js.map create mode 100644 packages/ckeditor5-math/src/index.js.map create mode 100644 packages/ckeditor5-math/src/math.js.map create mode 100644 packages/ckeditor5-math/src/mathcommand.js.map create mode 100644 packages/ckeditor5-math/src/mathediting.js.map create mode 100644 packages/ckeditor5-math/src/mathui.js.map create mode 100644 packages/ckeditor5-math/src/typings-external.js.map create mode 100644 packages/ckeditor5-math/src/ui/mainformview.js.map create mode 100644 packages/ckeditor5-math/src/ui/mathview.js.map create mode 100644 packages/ckeditor5-math/src/utils.js.map create mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.js create mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-mermaid/src/augmentation.js.map create mode 100644 packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map create mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map create mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map create mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map create mode 100644 packages/ckeditor5-mermaid/src/index.js.map create mode 100644 packages/ckeditor5-mermaid/src/mermaid.js.map create mode 100644 packages/ckeditor5-mermaid/src/mermaidediting.js.map create mode 100644 packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map create mode 100644 packages/ckeditor5-mermaid/src/mermaidui.js.map create mode 100644 packages/ckeditor5-mermaid/src/utils.js.map create mode 100644 packages/share-theme/src/scripts/common/debounce.d.ts create mode 100644 packages/share-theme/src/scripts/common/debounce.d.ts.map create mode 100644 packages/share-theme/src/scripts/common/parents.d.ts create mode 100644 packages/share-theme/src/scripts/common/parents.d.ts.map create mode 100644 packages/share-theme/src/scripts/common/parsehtml.d.ts create mode 100644 packages/share-theme/src/scripts/common/parsehtml.d.ts.map create mode 100644 packages/share-theme/src/scripts/index.d.ts create mode 100644 packages/share-theme/src/scripts/index.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/api.d.ts create mode 100644 packages/share-theme/src/scripts/modules/api.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/expanders.d.ts create mode 100644 packages/share-theme/src/scripts/modules/expanders.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/math.d.ts create mode 100644 packages/share-theme/src/scripts/modules/math.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/mermaid.d.ts create mode 100644 packages/share-theme/src/scripts/modules/mermaid.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/mobile.d.ts create mode 100644 packages/share-theme/src/scripts/modules/mobile.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/search.d.ts create mode 100644 packages/share-theme/src/scripts/modules/search.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/theme.d.ts create mode 100644 packages/share-theme/src/scripts/modules/theme.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/toc.d.ts create mode 100644 packages/share-theme/src/scripts/modules/toc.d.ts.map create mode 100644 packages/share-theme/src/scripts/test.d.ts create mode 100644 packages/share-theme/src/scripts/test.d.ts.map diff --git a/apps/client/src/menus/tree_context_menu.ts b/apps/client/src/menus/tree_context_menu.ts index 6504b49eb..7384573d8 100644 --- a/apps/client/src/menus/tree_context_menu.ts +++ b/apps/client/src/menus/tree_context_menu.ts @@ -137,7 +137,7 @@ export default class TreeContextMenu implements SelectMenuItemEventListener(); + const [ branches, setBranches ] = useState([]); const [ prefix, setPrefix ] = useState(""); const branchInput = useRef(null); - useTriliumEvent("editBranchPrefix", async () => { - const notePath = appContext.tabManager.getActiveContextNotePath(); - if (!notePath) { + useTriliumEvent("editBranchPrefix", async (data?: ContextMenuCommandData) => { + let branchIds: string[] = []; + + if (data?.selectedOrActiveBranchIds && data.selectedOrActiveBranchIds.length > 0) { + // Multi-select mode from tree context menu + branchIds = data.selectedOrActiveBranchIds.filter((branchId) => !branchId.startsWith("virt-")); + } else { + // Single branch mode from keyboard shortcut or when no selection + const notePath = appContext.tabManager.getActiveContextNotePath(); + if (!notePath) { + return; + } + + const { noteId, parentNoteId } = tree.getNoteIdAndParentIdFromUrl(notePath); + + if (!noteId || !parentNoteId) { + return; + } + + const branchId = await froca.getBranchId(parentNoteId, noteId); + if (!branchId) { + return; + } + const parentNote = await froca.getNote(parentNoteId); + if (!parentNote || parentNote.type === "search") { + return; + } + + branchIds = [branchId]; + } + + if (branchIds.length === 0) { return; } - const { noteId, parentNoteId } = tree.getNoteIdAndParentIdFromUrl(notePath); + const newBranches = branchIds + .map(id => froca.getBranch(id)) + .filter((branch): branch is FBranch => branch !== null); - if (!noteId || !parentNoteId) { + if (newBranches.length === 0) { return; } - const newBranchId = await froca.getBranchId(parentNoteId, noteId); - if (!newBranchId) { - return; - } - const parentNote = await froca.getNote(parentNoteId); - if (!parentNote || parentNote.type === "search") { - return; - } - - const newBranch = froca.getBranch(newBranchId); - setBranch(newBranch); - setPrefix(newBranch?.prefix ?? ""); + setBranches(newBranches); + // Use the prefix of the first branch as the initial value + setPrefix(newBranches[0]?.prefix ?? ""); setShown(true); }); async function onSubmit() { - if (!branch) { + if (branches.length === 0) { return; } - savePrefix(branch.branchId, prefix); + if (branches.length === 1) { + await savePrefix(branches[0].branchId, prefix); + } else { + await savePrefixBatch(branches.map(b => b.branchId), prefix); + } setShown(false); } + const isSingleBranch = branches.length === 1; + const titleKey = isSingleBranch ? "branch_prefix.edit_branch_prefix" : "branch_prefix.edit_branch_prefix_multiple"; + return ( branchInput.current?.focus()} onHidden={() => setShown(false)} @@ -69,9 +99,27 @@ export default function BranchPrefixDialog() {
setPrefix((e.target as HTMLInputElement).value)} /> -
- {branch && branch.getNoteFromCache().title}
+ {isSingleBranch && branches[0] && ( +
- {branches[0].getNoteFromCache().title}
+ )}
+ {!isSingleBranch && ( +
+ {t("branch_prefix.affected_branches", { count: branches.length })} +
    + {branches.map((branch) => { + const note = branch.getNoteFromCache(); + return ( +
  • + {branch.prefix && {branch.prefix} - } + {note.title} +
  • + ); + })} +
+
+ )}
); } @@ -80,3 +128,8 @@ async function savePrefix(branchId: string, prefix: string) { await server.put(`branches/${branchId}/set-prefix`, { prefix: prefix }); toast.showMessage(t("branch_prefix.branch_prefix_saved")); } + +async function savePrefixBatch(branchIds: string[], prefix: string) { + await server.put("branches/set-prefix-batch", { branchIds, prefix }); + toast.showMessage(t("branch_prefix.branch_prefix_saved_multiple", { count: branchIds.length })); +} diff --git a/apps/server/src/routes/api/branches.ts b/apps/server/src/routes/api/branches.ts index 810deaba7..86699f5ba 100644 --- a/apps/server/src/routes/api/branches.ts +++ b/apps/server/src/routes/api/branches.ts @@ -270,6 +270,29 @@ function setPrefix(req: Request) { branch.save(); } +function setPrefixBatch(req: Request) { + const { branchIds, prefix } = req.body; + + if (!Array.isArray(branchIds)) { + throw new ValidationError("branchIds must be an array"); + } + + const normalizedPrefix = utils.isEmptyOrWhitespace(prefix) ? null : prefix; + + for (const branchId of branchIds) { + const branch = becca.getBranch(branchId); + if (branch) { + branch.prefix = normalizedPrefix; + branch.save(); + } + } + + return { + success: true, + count: branchIds.length + }; +} + export default { moveBranchToParent, moveBranchBeforeNote, @@ -277,5 +300,6 @@ export default { setExpanded, setExpandedForSubtree, deleteBranch, - setPrefix + setPrefix, + setPrefixBatch }; diff --git a/apps/server/src/routes/routes.ts b/apps/server/src/routes/routes.ts index 9074789f2..78a1380b7 100644 --- a/apps/server/src/routes/routes.ts +++ b/apps/server/src/routes/routes.ts @@ -154,6 +154,7 @@ function register(app: express.Application) { apiRoute(PUT, "/api/branches/:branchId/expanded-subtree/:expanded", branchesApiRoute.setExpandedForSubtree); apiRoute(DEL, "/api/branches/:branchId", branchesApiRoute.deleteBranch); apiRoute(PUT, "/api/branches/:branchId/set-prefix", branchesApiRoute.setPrefix); + apiRoute(PUT, "/api/branches/set-prefix-batch", branchesApiRoute.setPrefixBatch); apiRoute(GET, "/api/notes/:noteId/attachments", attachmentsApiRoute.getAttachments); apiRoute(PST, "/api/notes/:noteId/attachments", attachmentsApiRoute.saveAttachment); diff --git a/packages/ckeditor5-admonition/sample/ckeditor.d.ts b/packages/ckeditor5-admonition/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-admonition/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-admonition/sample/ckeditor.js b/packages/ckeditor5-admonition/sample/ckeditor.js new file mode 100644 index 000000000..d61e2e416 --- /dev/null +++ b/packages/ckeditor5-admonition/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Admonition from '../src/admonition.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Admonition, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'admonition', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-admonition/sample/ckeditor.js.map b/packages/ckeditor5-admonition/sample/ckeditor.js.map new file mode 100644 index 000000000..ca410d012 --- /dev/null +++ b/packages/ckeditor5-admonition/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,UAAU,MAAM,sBAAsB,CAAC;AAE9C,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,UAAU;QACV,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,YAAY;QACZ,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonition.js.map b/packages/ckeditor5-admonition/src/admonition.js.map new file mode 100644 index 000000000..6d951e1d8 --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonition.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonition.js","sourceRoot":"","sources":["admonition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,iBAAiB,EAAE,YAAY,EAAE,oBAAoB,CAAW,CAAC;IAC3E,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionautoformat.js.map b/packages/ckeditor5-admonition/src/admonitionautoformat.js.map new file mode 100644 index 000000000..89440d086 --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonitionautoformat.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonitionautoformat.js","sourceRoot":"","sources":["admonitionautoformat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1E,SAAS,sBAAsB,CAAC,KAAuB;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;IACR,CAAC;IAED,IAAK,gBAAsC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC,CAAC,CAAmB,CAAC;IACnC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,MAAM;IAEvD,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,UAAU,CAAE,CAAC;IACvB,CAAC;IAED,SAAS;QACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,OAAO;QACR,CAAC;QAED,MAAM,QAAQ,GAAI,IAAY,CAAC;QAC/B,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;YAChF,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAE3C,IAAI,IAAI,EAAE,CAAC;gBACV,4DAA4D;gBAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACP,qFAAqF;gBACrF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAClC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;gBACrE,CAAC;YACF,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitioncommand.js.map b/packages/ckeditor5-admonition/src/admonitioncommand.js.map new file mode 100644 index 000000000..c92080a67 --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonitioncommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonitioncommand.js","sourceRoot":"","sources":["admonitioncommand.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionediting.js.map b/packages/ckeditor5-admonition/src/admonitionediting.js.map new file mode 100644 index 000000000..ac02c16ad --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonitionediting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonitionediting.js","sourceRoot":"","sources":["admonitionediting.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAmD,MAAM,WAAW,CAAC;AACnG,OAAO,iBAAiB,EAAE,EAAkB,gBAAgB,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAEjJ;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,MAAM;IACpD;;OAEG;IACI,MAAM,KAAK,UAAU;QAC3B,OAAO,mBAA4B,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,KAAK,EAAE,MAAM,CAAW,CAAC;IACnC,CAAC;IAED;;OAEG;IACI,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAEnC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,YAAY,EAAE,IAAI,iBAAiB,CAAE,MAAM,CAAE,CAAE,CAAC;QAErE,MAAM,CAAC,QAAQ,CAAE,OAAO,EAAE;YACzB,cAAc,EAAE,YAAY;YAC5B,eAAe,EAAE,yBAAyB;SAC1C,CAAE,CAAC;QAEJ,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC;YAChD,IAAI,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,YAAY;aACrB;YACD,KAAK,EAAE,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;gBAClC,IAAI,IAAI,GAAmB,uBAAuB,CAAC;gBACnD,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,aAAa,EAAE,EAAE,CAAC;oBACrD,IAAI,SAAS,KAAK,YAAY,IAAK,gBAAsC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC/F,IAAI,GAAG,SAA2B,CAAC;oBACpC,CAAC;gBACF,CAAC;gBAED,MAAM,UAAU,GAA4B,EAAE,CAAC;gBAC/C,UAAU,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAAC;gBAC7C,OAAO,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAClD,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;aAC/B,gBAAgB,CAAE;YAClB,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,OAAO;SACb,CAAC;aACD,oBAAoB,CAAC;YACrB,KAAK,EAAE,yBAAyB;YAChC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACjB,GAAG,EAAE,OAAO;gBACZ,KAAK,EAAE,CAAE,YAAY,EAAE,KAAe,CAAE;aACxC,CAAC;SACF,CAAC,CAAC;QAEJ,6EAA6E;QAC7E,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAE,MAAM,CAAC,EAAE;YACjD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAE1D,KAAM,MAAM,KAAK,IAAI,OAAO,EAAG,CAAC;gBAC/B,IAAK,KAAK,CAAC,IAAI,IAAI,QAAQ,EAAG,CAAC;oBAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAEzC,IAAK,CAAC,OAAO,EAAG,CAAC;wBAChB,6BAA6B;wBAC7B,SAAS;oBACV,CAAC;oBAED,IAAK,OAAO,CAAC,EAAE,CAAE,SAAS,EAAE,OAAO,CAAE,IAAI,OAAO,CAAC,OAAO,EAAG,CAAC;wBAC3D,oCAAoC;wBACpC,MAAM,CAAC,MAAM,CAAE,OAAO,CAAE,CAAC;wBAEzB,OAAO,IAAI,CAAC;oBACb,CAAC;yBAAM,IAAK,OAAO,CAAC,EAAE,CAAE,SAAS,EAAE,OAAO,CAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAE,EAAG,CAAC;wBAChG,iFAAiF;wBACjF,MAAM,CAAC,MAAM,CAAE,OAAO,CAAE,CAAC;wBAEzB,OAAO,IAAI,CAAC;oBACb,CAAC;yBAAM,IAAK,OAAO,CAAC,EAAE,CAAE,SAAS,CAAE,EAAG,CAAC;wBACtC,wEAAwE;wBACxE,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAE,OAAO,CAAE,CAAC;wBAE9C,KAAM,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAG,CAAC;4BACxC,IACC,KAAK,CAAC,EAAE,CAAE,SAAS,EAAE,OAAO,CAAE;gCAC9B,CAAC,MAAM,CAAC,UAAU,CAAE,MAAM,CAAC,oBAAoB,CAAE,KAAK,CAAE,EAAE,KAAK,CAAE,EAChE,CAAC;gCACF,MAAM,CAAC,MAAM,CAAE,KAAK,CAAE,CAAC;gCAEvB,OAAO,IAAI,CAAC;4BACb,CAAC;wBACF,CAAC;oBACF,CAAC;gBACF,CAAC;qBAAM,IAAK,KAAK,CAAC,IAAI,IAAI,QAAQ,EAAG,CAAC;oBACrC,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAErC,IAAK,MAAM,CAAC,EAAE,CAAE,SAAS,EAAE,OAAO,CAAE,IAAI,MAAM,CAAC,OAAO,EAAG,CAAC;wBACzD,0EAA0E;wBAC1E,MAAM,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;wBAExB,OAAO,IAAI,CAAC;oBACb,CAAC;gBACF,CAAC;YACF,CAAC;YAED,OAAO,KAAK,CAAC;QACd,CAAC,CAAE,CAAC;QAEJ,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAClD,MAAM,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,YAAY,CAAE,CAAC;QAC9D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACxB,OAAO;QACR,CAAC;QAED,wCAAwC;QACxC,mGAAmG;QACnG,IAAI,CAAC,QAAQ,CAA0B,YAAY,EAAE,OAAO,EAAE,CAAE,GAAG,EAAE,IAAI,EAAG,EAAE;YAC7E,IAAK,CAAC,SAAS,CAAC,WAAW,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAG,CAAC;gBAC1D,OAAO;YACR,CAAC;YAED,MAAM,cAAc,GAAG,SAAS,CAAC,eAAe,EAAG,CAAC,MAAM,CAAC;YAE3D,IAAK,cAAc,CAAC,OAAO,EAAG,CAAC;gBAC9B,MAAM,CAAC,OAAO,CAAE,YAAY,CAAE,CAAC;gBAC/B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAE3C,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,GAAG,CAAC,IAAI,EAAE,CAAC;YACZ,CAAC;QACF,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAE,CAAC;QAE1B,4CAA4C;QAC5C,6GAA6G;QAC7G,IAAI,CAAC,QAAQ,CAA2B,YAAY,EAAE,QAAQ,EAAE,CAAE,GAAG,EAAE,IAAI,EAAG,EAAE;YAC/E,IAAK,IAAI,CAAC,SAAS,IAAI,UAAU,IAAI,CAAC,SAAS,CAAC,WAAW,IAAI,CAAC,iBAAkB,CAAC,KAAK,EAAG,CAAC;gBAC3F,OAAO;YACR,CAAC;YAED,MAAM,cAAc,GAAG,SAAS,CAAC,eAAe,EAAG,CAAC,MAAM,CAAC;YAE3D,IAAK,cAAc,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,eAAe,EAAG,CAAC;gBACjE,MAAM,CAAC,OAAO,CAAE,YAAY,CAAE,CAAC;gBAC/B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAE3C,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,GAAG,CAAC,IAAI,EAAE,CAAC;YACZ,CAAC;QACF,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAE,CAAC;IAC3B,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionui.js.map b/packages/ckeditor5-admonition/src/admonitionui.js.map new file mode 100644 index 000000000..4ac94e179 --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonitionui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonitionui.js","sourceRoot":"","sources":["admonitionui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/augmentation.js.map b/packages/ckeditor5-admonition/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-admonition/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/index.js.map b/packages/ckeditor5-admonition/src/index.js.map new file mode 100644 index 000000000..ebdd4b71d --- /dev/null +++ b/packages/ckeditor5-admonition/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,mCAAmC,CAAC;AAC/D,OAAO,mBAAmB,CAAC;AAC3B,OAAO,yBAAyB,CAAC;AAEjC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG5E,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,cAAc;CACd,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.d.ts b/packages/ckeditor5-footnotes/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-footnotes/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.js b/packages/ckeditor5-footnotes/sample/ckeditor.js new file mode 100644 index 000000000..77a18d9fd --- /dev/null +++ b/packages/ckeditor5-footnotes/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Footnotes from '../src/footnotes.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Footnotes, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'footnotes', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.js.map b/packages/ckeditor5-footnotes/sample/ckeditor.js.map new file mode 100644 index 000000000..6f02908e9 --- /dev/null +++ b/packages/ckeditor5-footnotes/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAE5C,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,SAAS;QACT,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,WAAW;QACX,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/augmentation.js.map b/packages/ckeditor5-footnotes/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/constants.js.map b/packages/ckeditor5-footnotes/src/constants.js.map new file mode 100644 index 000000000..06bd57032 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/constants.js.map @@ -0,0 +1 @@ +{"version":3,"file":"constants.js","sourceRoot":"","sources":["constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC;AACjD,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAEnD,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,YAAY,EAAE,cAAc;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;CACpC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG;IACtB,eAAe,EAAE,kBAAkB;IACnC,YAAY,EAAE,eAAe;IAC7B,iBAAiB,EAAE,oBAAoB;IACvC,eAAe,EAAE,kBAAkB;IACnC,gBAAgB,EAAE,oBAAoB;IACtC,SAAS,EAAE,WAAW,EAAE,6DAA6D;IACrF,MAAM,EAAE,QAAQ;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,cAAc,EAAE,gBAAgB;CAChC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACzB,eAAe,EAAE,uBAAuB;IACxC,UAAU,EAAE,kBAAkB;IAC9B,aAAa,EAAE,qBAAqB;IACpC,YAAY,EAAE,oBAAoB;IAClC,iBAAiB,EAAE,yBAAyB;IAC5C,eAAe,EAAE,uBAAuB;IACxC,gBAAgB,EAAE,yBAAyB;IAC3C,oBAAoB,EAAE,8BAA8B;CACpD,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map new file mode 100644 index 000000000..e5a24d9f6 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auto-formatting.js","sourceRoot":"","sources":["auto-formatting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map new file mode 100644 index 000000000..8d92168fe --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map @@ -0,0 +1 @@ +{"version":3,"file":"converters.js","sourceRoot":"","sources":["converters.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map new file mode 100644 index 000000000..45a94eb8a --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map @@ -0,0 +1 @@ +{"version":3,"file":"footnote-editing.js","sourceRoot":"","sources":["footnote-editing.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,qBAAqB,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,UAAU,EAAS,YAAY,EAAE,MAAM,EAAoB,sCAAsC,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAEnJ,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,MAAM;IAE3C,MAAM,KAAK,UAAU;QAC3B,OAAO,kBAA2B,CAAC;IACpC,CAAC;IAEM,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,MAAM,EAAE,UAAU,CAAW,CAAC;IACxC,CAAC;IAED;;KAEI;IACJ,IAAW,WAAW;QACrB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACzD,IAAK,CAAC,WAAW,EAAG,CAAC;YACpB,MAAM,IAAI,KAAK,CAAE,sCAAsC,CAAE,CAAC;QAC3D,CAAC;QACD,OAAO,WAAW,CAAC;IACpB,CAAC;IAEM,IAAI;QACV,YAAY,CAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAE,CAAC;QACzC,gBAAgB,CAAE,IAAI,CAAC,MAAM,CAAE,CAAC;QAEhC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,QAAQ,CAAC,cAAc,EAAE,IAAI,qBAAqB,CAAE,IAAI,CAAC,MAAM,CAAE,CAAE,CAAC;QAE9F,yBAAyB,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAE,CAAC;QAE3D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAC5B,aAAa,EACb,CAAE,SAAS,EAAE,KAAK,EAAG,EAAE;YACtB,MAAM,WAAW,GAAQ,SAAS,CAAC,MAAM,CAAC;YAC1C,MAAM,SAAS,GAAG,CAAE,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,CAAE,CAAC;YACzD,uFAAuF;YACvF,IAAK,SAAS,CAAC,IAAI,CAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,iBAAiB,CAAE,EAAG,CAAC;gBAChH,IAAI,CAAC,eAAe,CAAE,KAAK,CAAE,CAAC;YAC/B,CAAC;YACD,wGAAwG;YACxG,SAAS,CAAC,OAAO,CAAE,QAAQ,CAAC,EAAE;gBAC7B,IAAK,QAAQ,CAAC,IAAI,KAAK,WAAW,IAAI,QAAQ,CAAC,YAAY,KAAK,UAAU,CAAC,aAAa,EAAG,CAAC;oBAC3F,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,QAAQ,CAAC;oBACzD,MAAM,QAAQ,GAAG,CAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAE,CAAC,IAAI,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,CAAE,CAAC;oBAC9G,MAAM,UAAU,GAAG,QAAQ,YAAY,YAAY,IAAI,QAAQ,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAC;oBACtG,IAAK,CAAC,UAAU,EAAG,CAAC;wBACnB,OAAO;oBACR,CAAC;oBACD,IAAI,CAAC,uBAAuB,CAAE,KAAK,EAAE,GAAI,UAAW,EAAE,EAAE,gBAAgB,CAAE,CAAC;gBAC5E,CAAC;YACF,CAAC,CAAE,CAAC;QACL,CAAC,EACD,EAAE,QAAQ,EAAE,MAAM,EAAE,CACpB,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,mEAAmE;QACnE,2BAA2B;QAC3B,8HAA8H;QAC9H,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAC5B,qBAAqB,EACrB,sCAAsC,CAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CACxE,WAAW,CAAC,YAAY,CAAE,UAAU,CAAC,iBAAiB,CAAE,CACxD,CACD,CAAC;IACH,CAAC;IAED;;;;;KAKI;IACI,aAAa;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,QAAQ,CACZ,YAAY,EACZ,QAAQ,EACR,CAAE,GAAG,EAAE,IAAI,EAAG,EAAE;YACf,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YAClC,MAAM,cAAc,GAAG,GAAG,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;YAC1D,MAAM,eAAe,GAAG,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;YACxD,MAAM,iBAAiB,GAAG,GAAG,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;YAC3D,IAAK,CAAC,eAAe,IAAI,CAAC,iBAAiB,EAAG,CAAC;gBAC9C,MAAM,IAAI,KAAK,CAAE,qEAAqE,CAAE,CAAC;YAC1F,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAE,WAAW,CAAC,EAAE;gBACvC,kEAAkE;gBAClE,IAAK,cAAc,IAAI,cAAc,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAE,EAAG,CAAC;oBAClF,IAAI,CAAC,iBAAiB,CAAE,WAAW,CAAE,CAAC;gBACvC,CAAC;gBAED,MAAM,gBAAgB,GAAG,cAAc,IAAI,cAAc,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,CAAC;gBAEjG,MAAM,eAAe,GAAG,gBAAgB,CAAC,CAAC;oBACzC,cAAc,CAAC,CAAC;oBAChB,eAAe,CAAC,YAAY,CAAE,QAAQ,CAAC,YAAY,CAAE,CAAC;gBACvD,IAAK,CAAC,eAAe,EAAG,CAAC;oBACxB,OAAO;gBACR,CAAC;gBAED,MAAM,YAAY,GAAG,eAAe,CAAC,YAAY,CAAE,WAAW,CAAE,CAAC;gBACjE,MAAM,cAAc,GAAG,iBAAiB,CAAC,YAAY,CAAE,WAAW,CAAE,CAAC;gBACrE,MAAM,sBAAsB,GAAG,eAAe,CAAC,YAAY,CAAE,QAAQ,CAAC,eAAe,CAAE,CAAC;gBACxF,IAAK,CAAC,sBAAsB,IAAI,CAAC,cAAc,IAAI,CAAC,YAAY,EAAG,CAAC;oBACnE,OAAO;gBACR,CAAC;gBAED,MAAM,eAAe,GAAG,cAAc,CAAC,SAAS,KAAK,CAAC,IAAI,sBAAsB,CAAC,UAAU,KAAK,CAAC,CAAC;gBAElG,IAAK,gBAAgB,IAAI,eAAe,EAAG,CAAC;oBAC3C,IAAI,CAAC,eAAe,CAAE,WAAW,EAAE,eAAe,CAAE,CAAC;oBACrD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACtB,GAAG,CAAC,IAAI,EAAE,CAAC;gBACZ,CAAC;YACF,CAAC,CAAE,CAAC;QACL,CAAC,EACD,EAAE,QAAQ,EAAE,MAAM,EAAE,CACpB,CAAC;IACH,CAAC;IAED;;;;;;KAMI;IACI,cAAc,CAAE,WAAwB,EAAE,eAA6B;QAC9E,MAAM,QAAQ,GAAG,WAAW,CAAC,aAAa,CAAE,eAAe,CAAE,CAAC;QAC9D,WAAW,CAAC,aAAa,CAAE,WAAW,EAAE,eAAe,CAAE,CAAC;QAC1D,WAAW,CAAC,MAAM,CAAE,QAAQ,CAAE,CAAC;IAChC,CAAC;IAED;;;;;KAKI;IACI,eAAe,CAAE,WAAwB,EAAE,QAAsB;QACxE,kDAAkD;QAClD,qCAAqC;QACrC,IAAK,CAAC,IAAI,CAAC,MAAM,EAAG,CAAC;YACpB,OAAO;QACR,CAAC;QACD,MAAM,eAAe,GAAG,QAAQ,CAAC,YAAY,CAAE,QAAQ,CAAC,eAAe,CAAE,CAAC;QAE1E,IAAK,CAAC,eAAe,EAAG,CAAC;YACxB,WAAW,CAAC,MAAM,CAAE,QAAQ,CAAE,CAAC;YAC/B,OAAO;QACR,CAAC;QACD,MAAM,KAAK,GAAG,eAAe,CAAC,aAAa,CAAE,QAAQ,CAAE,CAAC;QACxD,MAAM,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAC;QAC1D,IAAI,CAAC,iBAAiB,CAAE,WAAW,EAAE,GAAI,EAAG,EAAE,CAAE,CAAC;QAEjD,WAAW,CAAC,MAAM,CAAE,QAAQ,CAAE,CAAC;QAC/B,sDAAsD;QACtD,IAAK,eAAe,CAAC,UAAU,KAAK,CAAC,EAAG,CAAC;YACxC,WAAW,CAAC,MAAM,CAAE,eAAe,CAAE,CAAC;YACtC,IAAI,CAAC,iBAAiB,CAAE,WAAW,CAAE,CAAC;QACvC,CAAC;aAAM,CAAC;YACP,IAAK,KAAK,IAAI,IAAI,EAAG,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAE,kBAAkB,CAAE,CAAC;YACvC,CAAC;YACD,mFAAmF;YACnF,mFAAmF;YACnF,sFAAsF;YACtF,iBAAiB;YACjB,MAAM,gBAAgB,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAE,KAAK,CAAE,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAE,CAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,CAAE,GAAG,CAAC,CAAE,CAAC;YAC1H,IAAK,CAAC,CAAE,gBAAgB,YAAY,YAAY,CAAE,EAAG,CAAC;gBACrD,OAAO;YACR,CAAC;YAED,MAAM,oBAAoB,GAAG,qBAAqB,CAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,CAC5F,OAAO,CAAC,EAAE,CAAE,SAAS,EAAE,WAAW,CAAE,CACpC,CAAC,GAAG,EAAE,CAAC;YAER,IAAK,oBAAoB,EAAG,CAAC;gBAC5B,WAAW,CAAC,YAAY,CAAE,oBAAoB,EAAE,KAAK,CAAE,CAAC;YACzD,CAAC;QACF,CAAC;QACD,IAAK,KAAK,IAAI,IAAI,EAAG,CAAC;YACrB,MAAM,IAAI,KAAK,CAAE,kBAAkB,CAAE,CAAC;QACvC,CAAC;QACD,gCAAgC;QAChC,MAAM,mBAAmB,GAAG,CAAE,GAAG,eAAe,CAAC,WAAW,EAAE,CAAE,CAAC,KAAK,CAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,CAAE,CAAC;QACrF,KAAM,MAAM,CAAE,CAAC,EAAE,KAAK,CAAE,IAAI,mBAAmB,CAAC,OAAO,EAAE,EAAG,CAAC;YAC5D,WAAW,CAAC,YAAY,CAAE,UAAU,CAAC,aAAa,EAAE,GAAI,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,GAAG,CAAC,GAAG,CAAE,EAAE,EAAE,KAAK,CAAE,CAAC;QACxF,CAAC;IACF,CAAC;IAED;;;;KAII;IACI,iBAAiB,CAAE,WAAwB,EAAE,aAAiC,SAAS;QAC9F,MAAM,UAAU,GAAe,EAAE,CAAC;QAClC,IAAK,CAAC,IAAI,CAAC,WAAW,EAAG,CAAC;YACzB,MAAM,IAAI,KAAK,CAAE,+BAA+B,CAAE,CAAC;QACpD,CAAC;QACD,MAAM,kBAAkB,GAAG,qBAAqB,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CACpF,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CAAE,CAC7C,CAAC;QACF,kBAAkB,CAAC,OAAO,CAAE,iBAAiB,CAAC,EAAE;YAC/C,MAAM,EAAE,GAAG,iBAAiB,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAC;YACnE,IAAK,CAAC,UAAU,IAAI,EAAE,KAAK,UAAU,EAAG,CAAC;gBACxC,UAAU,CAAC,IAAI,CAAE,iBAAiB,CAAE,CAAC;YACtC,CAAC;QACF,CAAC,CAAE,CAAC;QACJ,KAAM,MAAM,IAAI,IAAI,UAAU,EAAG,CAAC;YACjC,WAAW,CAAC,MAAM,CAAE,IAAI,CAAE,CAAC;QAC5B,CAAC;IACF,CAAC;IAED;;;;;KAKI;IACI,uBAAuB,CAAE,KAAY,EAAE,UAAkB,EAAE,gBAAwB;QAC1F,MAAM,kBAAkB,GAAG,qBAAqB,CAC/C,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CAAE,IAAI,CAAC,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,KAAK,UAAU,CAC5G,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAE,KAAK,EAAE,MAAM,CAAC,EAAE;YAChD,kBAAkB,CAAC,OAAO,CAAE,iBAAiB,CAAC,EAAE;gBAC/C,MAAM,CAAC,YAAY,CAAE,UAAU,CAAC,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,CAAE,CAAC;YACtF,CAAC,CAAE,CAAC;QACL,CAAC,CAAE,CAAC;IACL,CAAC;IAED;;;;KAII;IACI,eAAe,CAAE,KAAY;QACpC,MAAM,kBAAkB,GAAG,qBAAqB,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CACpF,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CAAE,CAC7C,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAE,kBAAkB,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAE,CAAE,CAAC;QACpG,MAAM,gBAAgB,GAAG,CAAE,GAAG,SAAS,CAAE,CAAC,GAAG,CAAE,EAAE,CAAC,EAAE,CACnD,iBAAiB,CAChB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,IAAI,CAAC,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,KAAK,EAAE,CAC/F,CACD,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAE,KAAK,EAAE,MAAM,CAAC,EAAE;;YAChD,MAAM,eAAe,GAAG,iBAAiB,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAC7E,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAE,CAC3C,CAAC;YACF,IAAK,CAAC,eAAe,EAAG,CAAC;gBACxB,OAAO;YACR,CAAC;YAED;;;;SAIM;YACN,KAAM,MAAM,QAAQ,IAAI,gBAAgB,CAAC,OAAO,EAAE,EAAG,CAAC;gBACrD,IAAK,QAAQ,EAAG,CAAC;oBAChB,MAAM,CAAC,IAAI,CAAE,MAAM,CAAC,aAAa,CAAE,QAAQ,CAAE,EAAE,eAAe,EAAE,CAAC,CAAE,CAAC;gBACrE,CAAC;YACF,CAAC;YAED;;SAEM;YACN,KAAM,MAAM,QAAQ,IAAI,qBAAqB,CAAE,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,EAAE,CAChF,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,CACxC,EAAG,CAAC;gBACJ,MAAM,KAAK,GAAG,GAAI,CAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,aAAa,CAAE,QAAQ,CAAE,mCAAI,CAAC,CAAC,CAAE,GAAG,CAAE,EAAE,CAAC;gBAC9E,IAAK,QAAQ,EAAG,CAAC;oBAChB,MAAM,CAAC,YAAY,CAAE,UAAU,CAAC,aAAa,EAAE,KAAK,EAAE,QAAQ,CAAE,CAAC;gBAClE,CAAC;gBACD,MAAM,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAC;gBAE1D,QAAQ;gBACR,gGAAgG;gBAChG,gGAAgG;gBAChG,+EAA+E;gBAC/E,MAAM;gBACN,IAAK,EAAE,EAAG,CAAC;oBACV,IAAI,CAAC,uBAAuB,CAAE,KAAK,EAAE,GAAI,EAAG,EAAE,EAAE,GAAI,KAAM,EAAE,CAAE,CAAC;gBAChE,CAAC;YACF,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map new file mode 100644 index 000000000..e10b42239 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map @@ -0,0 +1 @@ +{"version":3,"file":"schema.js","sourceRoot":"","sources":["schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAE,MAAmB,EAAS,EAAE;IAC3D;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,EAAE;QAC1C,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,OAAO;QAChB,aAAa,EAAE,QAAQ,CAAC,YAAY;QACpC,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,CAAE;KAC/C,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,YAAY,EAAE;QACvC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAE;KAChG,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,EAAE;QAC1C,OAAO,EAAE,QAAQ,CAAC,YAAY;QAC9B,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,CAAE;KAC/C,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,iBAAiB,EAAE;QAC5C,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,CAAE,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAE;KAClG,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,gBAAgB,EAAE;QAC3C,OAAO,EAAE,QAAQ,CAAC,YAAY;QAC9B,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,CAAE,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,UAAU,CAAE;KACvE,CAAE,CAAC;IAEJ,MAAM,CAAC,aAAa,CAAE,CAAE,OAAO,EAAE,eAAe,EAAG,EAAE;QACpD,IAAK,OAAO,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,CAAE,IAAI,eAAe,CAAC,IAAI,KAAK,QAAQ,CAAC,eAAe,EAAG,CAAC;YACzG,OAAO,KAAK,CAAC;QACd,CAAC;QACD,IAAK,OAAO,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,CAAE,IAAI,eAAe,CAAC,IAAI,KAAK,UAAU,EAAG,CAAC;YAC3F,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC,CAAE,CAAC;AACL,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-ui.js.map b/packages/ckeditor5-footnotes/src/footnote-ui.js.map new file mode 100644 index 000000000..756c97e42 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-ui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"footnote-ui.js","sourceRoot":"","sources":["footnote-ui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnotes.js.map b/packages/ckeditor5-footnotes/src/footnotes.js.map new file mode 100644 index 000000000..8f266e255 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnotes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"footnotes.js","sourceRoot":"","sources":["footnotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAE1C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,MAAM;IACrC,MAAM,KAAK,UAAU;QAC3B,OAAO,WAAoB,CAAC;IAC7B,CAAC;IAEM,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,eAAe,EAAE,UAAU,CAAW,CAAC;IACjD,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/index.js.map b/packages/ckeditor5-footnotes/src/index.js.map new file mode 100644 index 000000000..cfaafa124 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,0CAA0C,CAAC;AAC1E,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,kBAAkB;CAClB,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map b/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map new file mode 100644 index 000000000..441d6a4e4 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map @@ -0,0 +1 @@ +{"version":3,"file":"insert-footnote-command.js","sourceRoot":"","sources":["insert-footnote-command.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/utils.js.map b/packages/ckeditor5-footnotes/src/utils.js.map new file mode 100644 index 000000000..d80b38c11 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts b/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js new file mode 100644 index 000000000..850bb57e8 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Kbd from '../src/kbd.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Kbd, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'keyboardMarker', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map new file mode 100644 index 000000000..4b6fa9283 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,GAAG,MAAM,eAAe,CAAC;AAEhC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,GAAG;QACH,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,gBAAgB;QAChB,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/augmentation.js.map b/packages/ckeditor5-keyboard-marker/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/index.js.map b/packages/ckeditor5-keyboard-marker/src/index.js.map new file mode 100644 index 000000000..8493287a6 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,OAAO;CACP,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbd.js.map b/packages/ckeditor5-keyboard-marker/src/kbd.js.map new file mode 100644 index 000000000..3dc6dcb3e --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/kbd.js.map @@ -0,0 +1 @@ +{"version":3,"file":"kbd.js","sourceRoot":"","sources":["kbd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,MAAM;IAEtC,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,UAAU,EAAE,KAAK,CAAE,CAAC;IAC9B,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,KAAc,CAAC;IACvB,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map b/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map new file mode 100644 index 000000000..d92aebc98 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"kbdediting.js","sourceRoot":"","sources":["kbdediting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAErD,MAAM,GAAG,GAAG,KAAK,CAAC;AAElB;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,qCAAqC;QACrC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAE,OAAO,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,CAAE,CAAC;QAChE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAE,GAAG,EAAE;YAChD,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;SACjB,CAAE,CAAC;QAEJ,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAE;YACrC,KAAK,EAAE,GAAG;YACV,IAAI,EAAE,GAAG;SACT,CAAE,CAAC;QAEJ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,GAAG,EAAE,IAAI,gBAAgB,CAAE,MAAM,EAAE,GAAG,CAAE,CAAE,CAAC;QAChE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAE,YAAY,EAAE,GAAG,CAAE,CAAC;IAC5C,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbdui.js.map b/packages/ckeditor5-keyboard-marker/src/kbdui.js.map new file mode 100644 index 000000000..36e50266b --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/kbdui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"kbdui.js","sourceRoot":"","sources":["kbdui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,OAAO,MAAM,4BAA4B,CAAC;AAEjD,MAAM,GAAG,GAAG,KAAK,CAAC;AAElB;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,MAAM;IAEjC,MAAM,KAAK,UAAU;QAC3B,OAAO,OAAgB,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QAEnB,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAE,GAAG,EAAE,MAAM,CAAC,EAAE;YAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,GAAG,CAAsB,CAAC;YAC/D,MAAM,IAAI,GAAG,IAAI,UAAU,CAAE,MAAM,CAAE,CAAC;YAEtC,IAAI,CAAC,GAAG,CAAE;gBACT,KAAK,EAAE,CAAC,CAAE,mBAAmB,CAAE;gBAC/B,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,YAAY;gBACvB,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,IAAI;aAClB,CAAE,CAAC;YAEJ,IAAI,CAAC,IAAI,CAAE,MAAM,EAAE,WAAW,CAAE,CAAC,EAAE,CAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAE,CAAC;YAErE,mBAAmB;YACnB,IAAI,CAAC,QAAQ,CAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE;gBACpC,MAAM,CAAC,OAAO,CAAE,GAAG,CAAE,CAAC;gBACtB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAE,CAAC;YAEJ,OAAO,IAAI,CAAC;QACb,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/sample/ckeditor.d.ts b/packages/ckeditor5-math/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-math/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-math/sample/ckeditor.js b/packages/ckeditor5-math/sample/ckeditor.js new file mode 100644 index 000000000..370a359aa --- /dev/null +++ b/packages/ckeditor5-math/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Math from '../src/math.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Math, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'math', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-math/sample/ckeditor.js.map b/packages/ckeditor5-math/sample/ckeditor.js.map new file mode 100644 index 000000000..253baa75e --- /dev/null +++ b/packages/ckeditor5-math/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,IAAI;QACJ,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,MAAM;QACN,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/augmentation.js.map b/packages/ckeditor5-math/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-math/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/autoformatmath.js.map b/packages/ckeditor5-math/src/autoformatmath.js.map new file mode 100644 index 000000000..7fa8b54a2 --- /dev/null +++ b/packages/ckeditor5-math/src/autoformatmath.js.map @@ -0,0 +1 @@ +{"version":3,"file":"autoformatmath.js","sourceRoot":"","sources":["autoformatmath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACvE,4FAA4F;AAC5F,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAC1C,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,IAAI,EAAE,YAAY,CAAW,CAAC;IACxC,CAAC;IAED;;OAEG;IACI,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,IAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,MAAM,CAAE,EAAG,CAAC;YACrC,UAAU,CAAE,iCAAiC,EAAE,MAAM,CAAE,CAAC;QACzD,CAAC;IACF,CAAC;IAEM,SAAS;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,MAAM,CAAE,CAAC;QAE9C,IAAK,OAAO,YAAY,WAAW,EAAG,CAAC;YACtC,MAAM,QAAQ,GAAG,GAAG,EAAE;gBACrB,IAAK,CAAC,OAAO,CAAC,SAAS,EAAG,CAAC;oBAC1B,OAAO,KAAK,CAAC;gBACd,CAAC;gBAED,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;gBAEvB,mCAAmC;gBACnC,MAAM,CAAC,UAAU,CAChB,GAAG,EAAE;oBACJ,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,QAAQ,CAAE,CAAC;oBACtD,IAAK,cAAc,YAAY,MAAM,EAAG,CAAC;wBACxC,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC1B,CAAC;gBACF,CAAC,EACD,EAAE,CACF,CAAC;YACH,CAAC,CAAC;YAEF,wHAAwH;YACxH,sBAAsB,CAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAE,CAAC;YAC3D,wHAAwH;YACxH,sBAAsB,CAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAE,CAAC;QAC5D,CAAC;IACF,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,gBAAyB,CAAC;IAClC,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/automath.js.map b/packages/ckeditor5-math/src/automath.js.map new file mode 100644 index 000000000..80183ef09 --- /dev/null +++ b/packages/ckeditor5-math/src/automath.js.map @@ -0,0 +1 @@ +{"version":3,"file":"automath.js","sourceRoot":"","sources":["automath.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/index.js.map b/packages/ckeditor5-math/src/index.js.map new file mode 100644 index 000000000..aaf6b7ac6 --- /dev/null +++ b/packages/ckeditor5-math/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,QAAQ;CACR,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/math.js.map b/packages/ckeditor5-math/src/math.js.map new file mode 100644 index 000000000..a7a614dc4 --- /dev/null +++ b/packages/ckeditor5-math/src/math.js.map @@ -0,0 +1 @@ +{"version":3,"file":"math.js","sourceRoot":"","sources":["math.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,MAAM;IAChC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAW,CAAC;IAC3D,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,MAAe,CAAC;IACxB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathcommand.js.map b/packages/ckeditor5-math/src/mathcommand.js.map new file mode 100644 index 000000000..1d80830c3 --- /dev/null +++ b/packages/ckeditor5-math/src/mathcommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mathcommand.js","sourceRoot":"","sources":["mathcommand.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathediting.js.map b/packages/ckeditor5-math/src/mathediting.js.map new file mode 100644 index 000000000..dbc082614 --- /dev/null +++ b/packages/ckeditor5-math/src/mathediting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mathediting.js","sourceRoot":"","sources":["mathediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathui.js.map b/packages/ckeditor5-math/src/mathui.js.map new file mode 100644 index 000000000..7ba56ce3a --- /dev/null +++ b/packages/ckeditor5-math/src/mathui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mathui.js","sourceRoot":"","sources":["mathui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/typings-external.js.map b/packages/ckeditor5-math/src/typings-external.js.map new file mode 100644 index 000000000..3f121d309 --- /dev/null +++ b/packages/ckeditor5-math/src/typings-external.js.map @@ -0,0 +1 @@ +{"version":3,"file":"typings-external.js","sourceRoot":"","sources":["typings-external.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/ui/mainformview.js.map b/packages/ckeditor5-math/src/ui/mainformview.js.map new file mode 100644 index 000000000..f1a361307 --- /dev/null +++ b/packages/ckeditor5-math/src/ui/mainformview.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mainformview.js","sourceRoot":"","sources":["mainformview.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/ui/mathview.js.map b/packages/ckeditor5-math/src/ui/mathview.js.map new file mode 100644 index 000000000..b63bd4e19 --- /dev/null +++ b/packages/ckeditor5-math/src/ui/mathview.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mathview.js","sourceRoot":"","sources":["mathview.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,IAAI;IAYzC,YACC,MAOY,EACZ,QAA6C,EAC7C,MAAc,EACd,UAAkB,EAClB,gBAA+B,EAC/B,kBAAgC;QAEhC,KAAK,CAAE,MAAM,CAAE,CAAC;QAEhB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAEzC,IAAI,CAAC,GAAG,CAAE,OAAO,EAAE,EAAE,CAAE,CAAC;QACxB,IAAI,CAAC,GAAG,CAAE,SAAS,EAAE,KAAK,CAAE,CAAC;QAE7B,IAAI,CAAC,EAAE,CAAE,QAAQ,EAAE,GAAG,EAAE;YACvB,IAAK,IAAI,CAAC,UAAU,EAAG,CAAC;gBACvB,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,CAAC;QACF,CAAC,CAAE,CAAC;QAEJ,IAAI,CAAC,WAAW,CAAE;YACjB,GAAG,EAAE,KAAK;YACV,UAAU,EAAE;gBACX,KAAK,EAAE,CAAE,IAAI,EAAE,iBAAiB,EAAE,uBAAuB,CAAE;aAC3D;SACD,CAAE,CAAC;IACL,CAAC;IAEM,UAAU;QAChB,IAAK,IAAI,CAAC,OAAO,EAAG,CAAC;YACpB,KAAK,cAAc,CAClB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,EACJ,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,kBAAkB,CACvB,CAAC;QACH,CAAC;IACF,CAAC;IAEe,MAAM;QACrB,KAAK,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/utils.js.map b/packages/ckeditor5-math/src/utils.js.map new file mode 100644 index 000000000..cb543f421 --- /dev/null +++ b/packages/ckeditor5-math/src/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG5D,MAAM,UAAU,0BAA0B,CACzC,SAAiC;IAEjC,MAAM,eAAe,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;IAEvD,IACC,eAAe;QACf,CAAE,eAAe,CAAC,EAAE,CAAE,SAAS,EAAE,gBAAgB,CAAE;YAClD,eAAe,CAAC,EAAE,CAAE,SAAS,EAAE,iBAAiB,CAAE,CAAE,EACpD,CAAC;QACF,OAAO,eAAe,CAAC;IACxB,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED,iCAAiC;AACjC,MAAM,UAAU,iBAAiB,CAAE,OAAgB;IAClD,OAAO,CACN,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,IAAI,QAAQ,IAAI,SAAS,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,OAAO,IAAI,QAAQ;QAC3G,OAAO,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAE,CAAC,MAAM,KAAK,CAAC;QACzC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAE,CAAE,CAAC,CAAE,KAAK,GAAG,CACzC,CAAC;AACH,CAAC;AAED,iCAAiC;AACjC,MAAM,UAAU,iBAAiB,CAAE,OAAgB;IAClD,OAAO,CACN,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,IAAI,QAAQ,IAAI,KAAK,IAAI,OAAO,CAAE,CAAC;AACtE,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,aAAa,CAAE,IAAY;IAC1C,OAAO,IAAI,CAAC,KAAK,CAAE,6BAA6B,CAAE,CAAC;AACpD,CAAC;AAED,wBAAwB;AACxB,MAAM,UAAU,gBAAgB,CAAE,IAAY;;IAC7C,OAAO,MAAA,IAAI,CAAC,KAAK,CAAE,wBAAwB,CAAE,0CAAE,MAAM,CAAC;AACvD,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,iBAAiB,CAAE,QAAgB;IAIlD,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAE3B,0CAA0C;IAC1C,MAAM,mBAAmB,GACxB,QAAQ,CAAC,QAAQ,CAAE,KAAK,CAAE,IAAI,QAAQ,CAAC,QAAQ,CAAE,KAAK,CAAE,CAAC;IAC1D,MAAM,oBAAoB,GACzB,QAAQ,CAAC,QAAQ,CAAE,KAAK,CAAE,IAAI,QAAQ,CAAC,QAAQ,CAAE,KAAK,CAAE,CAAC;IAC1D,IAAK,mBAAmB,IAAI,oBAAoB,EAAG,CAAC;QACnD,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAE,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,IAAI,EAAE,CAAC;IAChE,CAAC;IAED,OAAO;QACN,QAAQ;QACR,OAAO,EAAE,oBAAoB;KAC7B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,QAAgB,EAChB,OAAoB,EACpB,SAQe,OAAO,EACtB,QAA8B,EAC9B,OAAO,GAAG,KAAK,EACf,OAAO,GAAG,KAAK,EACf,UAAU,GAAG,EAAE,EACf,mBAAkC,EAAE,EACpC,qBAAmC,EAAE;;IAErC,IAAK,MAAM,IAAI,SAAS,EAAG,CAAC;QAC3B,IAAK,iBAAiB,CAAE,OAAO,CAAE,EAAG,CAAC;YACpC,gBAAgB,CACf,OAAO,EACP,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,EAAE,CAAC,EAAE;gBACJ,cAAc,CAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE;oBAC3C,IAAK,OAAO,EAAG,CAAC;wBACf,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;oBACjC,CAAC;gBACF,CAAC,CAAE,CAAC;YACL,CAAC,CACD,CAAC;QACH,CAAC;aAAM,CAAC;YACP,gBAAgB,CACf,OAAO,EACP,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,EAAE,CAAC,EAAE;gBACJ,gGAAgG;gBAChG,MAAM,CAAC,UAAU,CAAE,GAAG,EAAE;oBACvB,cAAc,CAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAE,CAAC;oBAExC,iCAAiC;oBACjC,IAAK,OAAO,IAAI,iBAAiB,CAAE,OAAO,CAAE,EAAG,CAAC;wBAC/C,mCAAmC;wBACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAE,GAAG,EAAE;4BACvB,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;wBACjC,CAAC,CAAE,CAAC;oBACL,CAAC;gBACF,CAAC,CAAE,CAAC;YACL,CAAC,CACD,CAAC;QACH,CAAC;QACF,uEAAuE;IACvE,CAAC;SAAM,IAAK,MAAM,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAG,CAAC;QAC/D,gBAAgB,CACf,OAAO,EACP,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,EAAE,CAAC,EAAE;YACJ,IAAK,KAAK,EAAG,CAAC;gBACb,KAAK,CAAC,MAAM,CAAE,QAAQ,EAAE,EAAE,EAAE;oBAC3B,YAAY,EAAE,KAAK;oBACnB,WAAW,EAAE,OAAO;oBACpB,GAAG,kBAAkB;iBACrB,CAAE,CAAC;YACL,CAAC;YACD,IAAK,OAAO,EAAG,CAAC;gBACf,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;YACjC,CAAC;QACF,CAAC,CACD,CAAC;IACH,CAAC;SAAM,IAAK,OAAO,MAAM,KAAK,UAAU,EAAG,CAAC;QAC3C,MAAM,CAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAE,CAAC;IACtC,CAAC;SAAM,CAAC;QACP,IAAK,QAAQ,IAAI,IAAI,EAAG,CAAC;YACxB,IAAI,CAAC;gBACJ,MAAA,MAAM,CAAC,uBAAuB,oCAA9B,MAAM,CAAC,uBAAuB,GAAK,QAAQ,EAAE,EAAC;gBAC9C,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC;gBAC7B,MAAM,MAAM,CAAC,uBAAuB,CAAC;gBACrC,MAAM,cAAc,CACnB,QAAQ,EACR,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,EACP,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,kBAAkB,CAClB,CAAC;YACH,CAAC;YAAC,OAAQ,GAAG,EAAG,CAAC;gBAChB,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC;gBAC7B,OAAO,CAAC,KAAK,CACZ,4DAA6D,MAAM,CAAE,GAAG,CAAG,EAAE,CAC7E,CAAC;YACH,CAAC;QACF,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC7B,OAAO,CAAC,IAAI,CACX,8EAA+E,MAAM,CAAE,MAAM,CAAG,YAAY,CAC5G,CAAC;QACH,CAAC;IACF,CAAC;AACF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAE,MAAc;IAIrD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IACjC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC;IAE3D,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;IACrE,IAAK,eAAe,EAAG,CAAC;QACvB,OAAO;YACN,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAE,eAAe,CAAE;YACtD,SAAS,EAAE;gBACV,gBAAgB,CAAC,eAAe;gBAChC,gBAAgB,CAAC,mBAAmB;gBACpC,gBAAgB,CAAC,mBAAmB;aACpC;SACD,CAAC;IACH,CAAC;SAAM,CAAC;QACP,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnC,MAAM,UAAU,GAAG,YAAY,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;QAC1D,IAAK,CAAC,UAAU,EAAG,CAAC;YACnB;;;sBAGI;YACJ,MAAM,IAAI,aAAa,CAAE,oBAAoB,CAAE,CAAC;QACjD,CAAC;QACD,OAAO;YACN,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,cAAc,CACvC,UAAU,CACV;YACD,SAAS,EAAE;gBACV,gBAAgB,CAAC,eAAe;gBAChC,gBAAgB,CAAC,mBAAmB;gBACpC,gBAAgB,CAAC,mBAAmB;aACpC;SACD,CAAC;IACH,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB,CACxB,OAAoB,EACpB,OAAgB,EAChB,UAAkB,EAClB,gBAA+B,EAC/B,EAAsC;IAEtC,IAAK,OAAO,EAAG,CAAC;QACf,oBAAoB,CACnB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,SAAS,CAAC,EAAE;YACX,EAAE,CAAE,SAAS,CAAE,CAAC;QACjB,CAAC,CACD,CAAC;IACH,CAAC;SAAM,CAAC;QACP,EAAE,CAAE,OAAO,CAAE,CAAC;IACf,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CAAE,QAAgB,EAAE,OAAoB,EAAE,OAAgB,EAAE,EAAc;IAChG,IAAI,eAAe,GAA6F,SAAS,CAAC;IAC1H,IAAK,CAAC,iBAAiB,CAAE,OAAO,CAAE,EAAG,CAAC;QACrC,OAAO;IACR,CAAC;IACD,IAAK,OAAO,CAAC,gBAAgB,EAAG,CAAC;QAChC,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAC5C,CAAC;SAAM,IAAK,OAAO,CAAC,cAAc,EAAG,CAAC;QACrC,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAC1C,CAAC;IAED,IAAK,eAAe,IAAI,IAAI,EAAG,CAAC;QAC/B,KAAK,eAAe,CAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAE,CAAC,IAAI,CAAE,CAAE,IAAa,EAAG,EAAE;YACvE,IAAK,OAAO,CAAC,UAAU,EAAG,CAAC;gBAC1B,OAAO,CAAC,WAAW,CAAE,OAAO,CAAC,UAAU,CAAE,CAAC;YAC3C,CAAC;YACD,OAAO,CAAC,WAAW,CAAE,IAAI,CAAE,CAAC;YAC5B,EAAE,EAAE,CAAC;QACN,CAAC,CAAE,CAAC;IACL,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CAAE,QAAgB,EAAE,OAAoB,EAAE,OAAiB;IACjF,IAAK,iBAAiB,CAAE,OAAO,CAAE,EAAG,CAAC;QACpC,IAAK,OAAO,EAAG,CAAC;YACf,OAAO,CAAC,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,CAAC;QAC9C,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,CAAC;QAC9C,CAAC;QACD,2BAA2B;QAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;IACtD,CAAC;AACF,CAAC;AAED,SAAS,oBAAoB,CAC5B,OAAoB,EACpB,UAAkB,EAClB,gBAA+B,EAC/B,MAA0C;IAE1C,MAAM,SAAS,GAAG,iBAAiB,CAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAE,CAAC;IAC7E,MAAM,CAAE,SAAS,CAAE,CAAC;AACrB,CAAC;AAED,SAAS,iBAAiB,CACzB,OAAoB,EACpB,UAAkB,EAClB,gBAA+B;IAE/B,IAAI,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAE,UAAU,CAAE,CAAC;IACtD,sBAAsB;IACtB,IAAK,CAAC,SAAS,EAAG,CAAC;QAClB,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAE,KAAK,CAAE,CAAC;QAC5C,SAAS,CAAC,YAAY,CAAE,IAAI,EAAE,UAAU,CAAE,CAAC;QAC3C,SAAS,CAAC,SAAS,CAAC,GAAG,CAAE,GAAG,gBAAgB,CAAE,CAAC;QAC/C,SAAS,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;QACtC,OAAO,CAAC,WAAW,CAAE,SAAS,CAAE,CAAC;IAClC,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.d.ts b/packages/ckeditor5-mermaid/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-mermaid/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.js b/packages/ckeditor5-mermaid/sample/ckeditor.js new file mode 100644 index 000000000..92fe6af36 --- /dev/null +++ b/packages/ckeditor5-mermaid/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Mermaid from '../src/mermaid.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Mermaid, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'mermaid', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.js.map b/packages/ckeditor5-mermaid/sample/ckeditor.js.map new file mode 100644 index 000000000..93d6202ab --- /dev/null +++ b/packages/ckeditor5-mermaid/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,OAAO,MAAM,mBAAmB,CAAC;AAExC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,OAAO;QACP,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,SAAS;QACT,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/augmentation.js.map b/packages/ckeditor5-mermaid/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map b/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map new file mode 100644 index 000000000..c826455dd --- /dev/null +++ b/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"insertMermaidCommand.js","sourceRoot":"","sources":["insertMermaidCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,mBAAmB,GAAG;;QAEpB,CAAC;AAET;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,OAAO;IAE/C,OAAO;QACf,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAE/D,IAAK,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,EAAG,CAAC;YAC7D,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,CAAC;IACF,CAAC;IAEQ,OAAO;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,WAAW,CAAC;QAEhB,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,WAAW,GAAG,MAAM,CAAC,aAAa,CAAE,SAAS,EAAE;gBAC9C,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE,mBAAmB;aAC3B,CAAE,CAAC;YAEJ,KAAK,CAAC,aAAa,CAAE,WAAW,CAAE,CAAC;QACpC,CAAC,CAAE,CAAC;QAEJ,OAAO,WAAW,CAAC;IACpB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map new file mode 100644 index 000000000..af6477508 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidPreviewCommand.js","sourceRoot":"","sources":["mermaidPreviewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,OAAO;IAEhD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,SAAS,CAAE,CAAC;IAC7C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,IAAI,WAAW,EAAE,CAAC;YACjB,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;gBACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,SAAS,EAAG,CAAC;oBAC/D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,SAAS,EAAE,WAAW,CAAE,CAAC;gBAC9D,CAAC;YACF,CAAC,CAAE,CAAC;QACL,CAAC;IACF,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map new file mode 100644 index 000000000..40b7b1ea2 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidSourceViewCommand.js","sourceRoot":"","sources":["mermaidSourceViewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,OAAO;IAEnD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,QAAQ,CAAE,CAAC;IAC5C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,QAAQ,EAAG,CAAC;gBAC9D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,CAAE,CAAC;YAC7D,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map new file mode 100644 index 000000000..cea071e90 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidSplitViewCommand.js","sourceRoot":"","sources":["mermaidSplitViewCommand.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,OAAO;IAElD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,OAAO,CAAE,CAAC;IAC3C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,OAAO,EAAG,CAAC;gBAC7D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAE,CAAC;YAC5D,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/index.js.map b/packages/ckeditor5-mermaid/src/index.js.map new file mode 100644 index 000000000..b0b1a8b82 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAChE,OAAO,eAAe,MAAM,uCAAuC,CAAC;AACpE,OAAO,aAAa,MAAM,qCAAqC,CAAC;AAChE,OAAO,cAAc,MAAM,sCAAsC,CAAC;AAClE,OAAO,sBAAsB,CAAC;AAE9B,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,QAAQ;IACR,iBAAiB;IACjB,eAAe;IACf,aAAa;IACb,cAAc;CACd,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaid.js.map b/packages/ckeditor5-mermaid/src/mermaid.js.map new file mode 100644 index 000000000..95cac22e5 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/mermaid.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaid.js","sourceRoot":"","sources":["mermaid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,MAAM;IAE1C,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,cAAc,EAAE,cAAc,EAAE,SAAS,CAAE,CAAC;IACtD,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,SAAkB,CAAC;IAC3B,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidediting.js.map b/packages/ckeditor5-mermaid/src/mermaidediting.js.map new file mode 100644 index 000000000..61e3f2adc --- /dev/null +++ b/packages/ckeditor5-mermaid/src/mermaidediting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidediting.js","sourceRoot":"","sources":["mermaidediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map b/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map new file mode 100644 index 000000000..0aa81301d --- /dev/null +++ b/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidtoolbar.js","sourceRoot":"","sources":["mermaidtoolbar.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAsC,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAGhG,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAEjD,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,uBAAuB,CAAE,CAAC;IACpC,CAAC;IAED,MAAM,KAAK,UAAU;QACpB,OAAO,gBAAyB,CAAC;IAClC,CAAC;IAED,SAAS;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QAEnB,MAAM,uBAAuB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,uBAAuB,CAAE,CAAC;QAC9E,MAAM,mBAAmB,GAAG,CAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,EAAE,aAAa,CAAE,CAAC;QAE9G,IAAK,mBAAmB,EAAG,CAAC;YAC3B,uBAAuB,CAAC,QAAQ,CAAE,gBAAgB,EAAE;gBACnD,SAAS,EAAE,CAAC,CAAE,iBAAiB,CAAE;gBACjC,KAAK,EAAE,mBAAmB;gBAC1B,iBAAiB,EAAE,SAAS,CAAC,EAAE,CAAC,kBAAkB,CAAE,SAAS,CAAE;aAC/D,CAAE,CAAC;QACL,CAAC;IACF,CAAC;CACD;AAED,SAAS,kBAAkB,CAAE,SAAgC;IAC5D,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,EAA4B,CAAC;IAE7E,IAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAE,qBAAqB,CAAE,EAAG,CAAC;QACpE,OAAO,WAAW,CAAC;IACpB,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidui.js.map b/packages/ckeditor5-mermaid/src/mermaidui.js.map new file mode 100644 index 000000000..217972c2f --- /dev/null +++ b/packages/ckeditor5-mermaid/src/mermaidui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidui.js","sourceRoot":"","sources":["mermaidui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/utils.js.map b/packages/ckeditor5-mermaid/src/utils.js.map new file mode 100644 index 000000000..633a5826c --- /dev/null +++ b/packages/ckeditor5-mermaid/src/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAE,MAAc,EAAE,WAAmB;;IAC7D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;IAClD,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,EAAE,KAAI,MAAA,SAAS,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAC;IAE1F,IAAK,WAAW,IAAI,WAAW,CAAC,EAAE,CAAE,SAAS,EAAE,SAAS,CAAE,IAAI,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,WAAW,EAAG,CAAC;QAC1H,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/debounce.d.ts b/packages/share-theme/src/scripts/common/debounce.d.ts new file mode 100644 index 000000000..0f211accc --- /dev/null +++ b/packages/share-theme/src/scripts/common/debounce.d.ts @@ -0,0 +1,2 @@ +export default function debounce unknown>(executor: T, delay: number): (...args: Parameters) => void; +//# sourceMappingURL=debounce.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/debounce.d.ts.map b/packages/share-theme/src/scripts/common/debounce.d.ts.map new file mode 100644 index 000000000..b93906d0e --- /dev/null +++ b/packages/share-theme/src/scripts/common/debounce.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["debounce.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,IAElF,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI,CAQhD"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parents.d.ts b/packages/share-theme/src/scripts/common/parents.d.ts new file mode 100644 index 000000000..71e3141fb --- /dev/null +++ b/packages/share-theme/src/scripts/common/parents.d.ts @@ -0,0 +1,2 @@ +export default function parents(el: T, selector: string): HTMLElement[]; +//# sourceMappingURL=parents.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parents.d.ts.map b/packages/share-theme/src/scripts/common/parents.d.ts.map new file mode 100644 index 000000000..6de9cf805 --- /dev/null +++ b/packages/share-theme/src/scripts/common/parents.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"parents.d.ts","sourceRoot":"","sources":["parents.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,iBAM7E"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parsehtml.d.ts b/packages/share-theme/src/scripts/common/parsehtml.d.ts new file mode 100644 index 000000000..14388138c --- /dev/null +++ b/packages/share-theme/src/scripts/common/parsehtml.d.ts @@ -0,0 +1,2 @@ +export default function parseHTML(html: string, fragment?: boolean): Node | NodeListOf; +//# sourceMappingURL=parsehtml.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parsehtml.d.ts.map b/packages/share-theme/src/scripts/common/parsehtml.d.ts.map new file mode 100644 index 000000000..666bc507a --- /dev/null +++ b/packages/share-theme/src/scripts/common/parsehtml.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"parsehtml.d.ts","sourceRoot":"","sources":["parsehtml.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,UAAQ,gCAM/D"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/index.d.ts b/packages/share-theme/src/scripts/index.d.ts new file mode 100644 index 000000000..e8e54e326 --- /dev/null +++ b/packages/share-theme/src/scripts/index.d.ts @@ -0,0 +1,3 @@ +import "highlight.js/styles/default.css"; +import "@triliumnext/ckeditor5/src/theme/ck-content.css"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/index.d.ts.map b/packages/share-theme/src/scripts/index.d.ts.map new file mode 100644 index 000000000..251337575 --- /dev/null +++ b/packages/share-theme/src/scripts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAQA,OAAO,iCAAiC,CAAC;AACzC,OAAO,iDAAiD,CAAC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/api.d.ts b/packages/share-theme/src/scripts/modules/api.d.ts new file mode 100644 index 000000000..5f21d8839 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/api.d.ts @@ -0,0 +1,11 @@ +/** + * Fetch note with given ID from backend + * + * @param noteId of the given note to be fetched. If false, fetches current note. + */ +declare function fetchNote(noteId?: string | null): Promise; +declare const _default: { + fetchNote: typeof fetchNote; +}; +export default _default; +//# sourceMappingURL=api.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/api.d.ts.map b/packages/share-theme/src/scripts/modules/api.d.ts.map new file mode 100644 index 000000000..2867b765b --- /dev/null +++ b/packages/share-theme/src/scripts/modules/api.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,iBAAe,SAAS,CAAC,MAAM,GAAE,MAAM,GAAG,IAAW,gBAQpD;;;;AAED,wBAEE"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/expanders.d.ts b/packages/share-theme/src/scripts/modules/expanders.d.ts new file mode 100644 index 000000000..b3b2fee98 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/expanders.d.ts @@ -0,0 +1,2 @@ +export default function setupExpanders(): void; +//# sourceMappingURL=expanders.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/expanders.d.ts.map b/packages/share-theme/src/scripts/modules/expanders.d.ts.map new file mode 100644 index 000000000..725e08f8c --- /dev/null +++ b/packages/share-theme/src/scripts/modules/expanders.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"expanders.d.ts","sourceRoot":"","sources":["expanders.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,OAAO,UAAU,cAAc,SAkBrC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/math.d.ts b/packages/share-theme/src/scripts/modules/math.d.ts new file mode 100644 index 000000000..0efafccd5 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/math.d.ts @@ -0,0 +1,3 @@ +import "katex/dist/katex.min.css"; +export default function setupMath(): Promise; +//# sourceMappingURL=math.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/math.d.ts.map b/packages/share-theme/src/scripts/modules/math.d.ts.map new file mode 100644 index 000000000..07dc005cf --- /dev/null +++ b/packages/share-theme/src/scripts/modules/math.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["math.ts"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,CAAC;AAElC,wBAA8B,SAAS,kBAatC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mermaid.d.ts b/packages/share-theme/src/scripts/modules/mermaid.d.ts new file mode 100644 index 000000000..5f8cdb13c --- /dev/null +++ b/packages/share-theme/src/scripts/modules/mermaid.d.ts @@ -0,0 +1,2 @@ +export default function setupMermaid(): Promise; +//# sourceMappingURL=mermaid.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mermaid.d.ts.map b/packages/share-theme/src/scripts/modules/mermaid.d.ts.map new file mode 100644 index 000000000..58a556c4a --- /dev/null +++ b/packages/share-theme/src/scripts/modules/mermaid.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaid.d.ts","sourceRoot":"","sources":["mermaid.ts"],"names":[],"mappings":"AAAA,wBAA8B,YAAY,kBAqBzC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mobile.d.ts b/packages/share-theme/src/scripts/modules/mobile.d.ts new file mode 100644 index 000000000..284da2404 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/mobile.d.ts @@ -0,0 +1,2 @@ +export default function setupMobileMenu(): void; +//# sourceMappingURL=mobile.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mobile.d.ts.map b/packages/share-theme/src/scripts/modules/mobile.d.ts.map new file mode 100644 index 000000000..caf6de3c8 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/mobile.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"mobile.d.ts","sourceRoot":"","sources":["mobile.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,eAAe,SAqBtC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/search.d.ts b/packages/share-theme/src/scripts/modules/search.d.ts new file mode 100644 index 000000000..737734b84 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/search.d.ts @@ -0,0 +1,2 @@ +export default function setupSearch(): void; +//# sourceMappingURL=search.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/search.d.ts.map b/packages/share-theme/src/scripts/modules/search.d.ts.map new file mode 100644 index 000000000..78491705d --- /dev/null +++ b/packages/share-theme/src/scripts/modules/search.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["search.ts"],"names":[],"mappings":"AA0BA,MAAM,CAAC,OAAO,UAAU,WAAW,SAqClC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/theme.d.ts b/packages/share-theme/src/scripts/modules/theme.d.ts new file mode 100644 index 000000000..f357f8ddd --- /dev/null +++ b/packages/share-theme/src/scripts/modules/theme.d.ts @@ -0,0 +1,8 @@ +/** + * Note: + * + * - Setting of the .theme-dark or .theme-light is done in the share template's to avoid a flash. + * - Setting of the value of the checkbox is also done in the template, near the definition of the input box. + */ +export default function setupThemeSelector(): void; +//# sourceMappingURL=theme.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/theme.d.ts.map b/packages/share-theme/src/scripts/modules/theme.d.ts.map new file mode 100644 index 000000000..560bad1fa --- /dev/null +++ b/packages/share-theme/src/scripts/modules/theme.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["theme.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,MAAM,CAAC,OAAO,UAAU,kBAAkB,SAOzC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/toc.d.ts b/packages/share-theme/src/scripts/modules/toc.d.ts new file mode 100644 index 000000000..e6e80805c --- /dev/null +++ b/packages/share-theme/src/scripts/modules/toc.d.ts @@ -0,0 +1,12 @@ +/** + * The ToC is now generated in the page template so + * it even exists for users without client-side js + * and that means it loads with the page so it avoids + * all potential reshuffling or layout recalculations. + * + * So, all this function needs to do is make the links + * perform smooth animation, and adjust the "active" + * entry as the user scrolls. + */ +export default function setupToC(): void; +//# sourceMappingURL=toc.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/toc.d.ts.map b/packages/share-theme/src/scripts/modules/toc.d.ts.map new file mode 100644 index 000000000..1d2a8b0ce --- /dev/null +++ b/packages/share-theme/src/scripts/modules/toc.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"toc.d.ts","sourceRoot":"","sources":["toc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,SAoC/B"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/test.d.ts b/packages/share-theme/src/scripts/test.d.ts new file mode 100644 index 000000000..9bcc4712a --- /dev/null +++ b/packages/share-theme/src/scripts/test.d.ts @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=test.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/test.d.ts.map b/packages/share-theme/src/scripts/test.d.ts.map new file mode 100644 index 000000000..ffac09233 --- /dev/null +++ b/packages/share-theme/src/scripts/test.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"test.d.ts","sourceRoot":"","sources":["test.ts"],"names":[],"mappings":""} \ No newline at end of file From 25ac9e2aa109afd11eadf5af8aa98de12b249932 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:54:40 +0000 Subject: [PATCH 064/136] Fix spelling, grammar, and broken links in documentation Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- docs/User Guide/User Guide/AI.md | 2 +- .../Advanced Usage/Custom Request Handler.md | 8 +++---- .../Basic Concepts and Features/Notes.md | 2 +- docs/User Guide/User Guide/Note Types.md | 2 +- docs/User Guide/User Guide/Troubleshooting.md | 4 ++-- docs/index.md | 22 +++++++++---------- 6 files changed, 20 insertions(+), 20 deletions(-) diff --git a/docs/User Guide/User Guide/AI.md b/docs/User Guide/User Guide/AI.md index d17f454c3..57302d77d 100644 --- a/docs/User Guide/User Guide/AI.md +++ b/docs/User Guide/User Guide/AI.md @@ -21,7 +21,7 @@ You will then need to set up the AI “provider” that you wish to use to creat In the following example, we're going to use our self-hosted Ollama instance to create the embeddings for our Notes. You can see additional documentation about installing your own Ollama locally in Installing Ollama. -To see what embedding models Ollama has available, you can check out [this search](https://ollama.com/search?c=embedding)on their website, and then `pull` whichever one you want to try out. As of 4/15/25, my personal favorite is `mxbai-embed-large`. +To see what embedding models Ollama has available, you can check out [this search](https://ollama.com/search?c=embedding) on their website, and then `pull` whichever one you want to try out. A popular choice is `mxbai-embed-large`. First, we'll need to select the Ollama provider from the tabs of providers, then we will enter in the Base URL for our Ollama. Since our Ollama is running on our local machine, our Base URL is `http://localhost:11434`. We will then hit the “refresh” button to have it fetch our models: diff --git a/docs/User Guide/User Guide/Advanced Usage/Custom Request Handler.md b/docs/User Guide/User Guide/Advanced Usage/Custom Request Handler.md index 52991f136..6d2c1e734 100644 --- a/docs/User Guide/User Guide/Advanced Usage/Custom Request Handler.md +++ b/docs/User Guide/User Guide/Advanced Usage/Custom Request Handler.md @@ -14,7 +14,7 @@ const {secret, title, content} = req.body; if (req.method == 'POST' && secret === 'secret-password') { // notes must be saved somewhere in the tree hierarchy specified by a parent note. // This is defined by a relation from this code note to the "target" parent note - // alternetively you can just use constant noteId for simplicity (get that from "Note Info" dialog of the desired parent note) + // alternatively you can just use constant noteId for simplicity (get that from "Note Info" dialog of the desired parent note) const targetParentNoteId = api.currentNote.getRelationValue('targetNote'); const {note} = api.createTextNote(targetParentNoteId, title, content); @@ -37,7 +37,7 @@ This script note has also following two attributes: Let's test this by using an HTTP client to send a request: ``` -POST http://my.trilium.org/custom/create-note +POST http://your-trilium-server/custom/create-note Content-Type: application/json { @@ -70,7 +70,7 @@ For more information, see [Custom Resource Providers](Custom%20Resource%20Provi REST request paths often contain parameters in the URL, e.g.: ``` -http://my.trilium.org/custom/notes/123 +http://your-trilium-server/custom/notes/123 ``` The last part is dynamic so the matching of the URL must also be dynamic - for this reason the matching is done with regular expressions. Following `customRequestHandler` value would match it: @@ -85,4 +85,4 @@ Additionally, this also defines a matching group with the use of parenthesis whi const noteId = api.pathParams[0]; ``` -Often you also need query params (as in e.g. `http://my.trilium.org/custom/notes?noteId=123`), you can get those with standard express `req.query.noteId`. \ No newline at end of file +Often you also need query params (as in e.g. `http://your-trilium-server/custom/notes?noteId=123`), you can get those with standard express `req.query.noteId`. \ No newline at end of file diff --git a/docs/User Guide/User Guide/Basic Concepts and Features/Notes.md b/docs/User Guide/User Guide/Basic Concepts and Features/Notes.md index 8cb069e53..d461a3506 100644 --- a/docs/User Guide/User Guide/Basic Concepts and Features/Notes.md +++ b/docs/User Guide/User Guide/Basic Concepts and Features/Notes.md @@ -25,7 +25,7 @@ When you delete a note in Trilium, it is actually only marked for deletion (soft Within (by default) 7 days, it is possible to undelete these soft-deleted notes - open the Recent Changes dialog, and you will see a list of all modified notes including the deleted ones. Notes available for undeletion have a link to do so. This is kind of "trash can" functionality known from e.g. Windows. -Clicking an undelete will recover the note, it's content and attributes - note should be just as before being deleted. This action will also undelete note's children which have been deleted in the same action. +Clicking an undelete will recover the note, its content and attributes - note should be just as before being deleted. This action will also undelete note's children which have been deleted in the same action. To be able to undelete a note, it is necessary that deleted note's parent must be undeleted (otherwise there's no place where we can undelete it to). This might become a problem when you delete more notes in succession - the solution is then undelete in the reverse order of your deletion. diff --git a/docs/User Guide/User Guide/Note Types.md b/docs/User Guide/User Guide/Note Types.md index 2e0540dcf..27958b4ab 100644 --- a/docs/User Guide/User Guide/Note Types.md +++ b/docs/User Guide/User Guide/Note Types.md @@ -1,5 +1,5 @@ # Note Types -One core features of Trilium is that it supports multiple types of notes, depending on the need. +One of the core features of Trilium is that it supports multiple types of notes, depending on the need. ## Creating a new note with a different type via the note tree diff --git a/docs/User Guide/User Guide/Troubleshooting.md b/docs/User Guide/User Guide/Troubleshooting.md index f439d1185..b97b459ed 100644 --- a/docs/User Guide/User Guide/Troubleshooting.md +++ b/docs/User Guide/User Guide/Troubleshooting.md @@ -1,5 +1,5 @@ # Troubleshooting -As Trilium is currently in beta, encountering bugs is to be expected. +While Trilium is actively maintained and stable, encountering bugs is possible. ## General Quick Fix @@ -21,7 +21,7 @@ TRILIUM_START_NOTE_ID=root ./trilium ## Broken Script Prevents Application Startup -If a custom script causes Triliumto crash, and it is set as a startup script or in an active [custom widget](Scripting/Custom%20Widgets.md), start Triliumin "safe mode" to prevent any custom scripts from executing: +If a custom script causes Trilium to crash, and it is set as a startup script or in an active [custom widget](Scripting/Custom%20Widgets.md), start Trilium in "safe mode" to prevent any custom scripts from executing: ``` TRILIUM_SAFE_MODE=true ./trilium diff --git a/docs/index.md b/docs/index.md index 5bf104216..33bbff30d 100644 --- a/docs/index.md +++ b/docs/index.md @@ -21,27 +21,27 @@ Trilium Notes is a powerful, feature-rich note-taking application designed for b
-- :material-rocket-launch-outline: **[Quick Start Guide](User%20Guide/quick-start.md)** +- :material-rocket-launch-outline: **[Quick Start Guide](User%20Guide/User%20Guide/Quick%20Start.md)** Get up and running with Trilium in minutes -- :material-download: **[Installation](User%20Guide/installation.md)** +- :material-download: **[Desktop Installation](User%20Guide/User%20Guide/Installation%20%26%20Setup/Desktop%20Installation.md)** - Download and install Trilium on your platform + Download and install Trilium on your desktop -- :material-docker: **[Docker Setup](User%20Guide/docker.md)** +- :material-server: **[Server Installation](User%20Guide/User%20Guide/Installation%20%26%20Setup/Server%20Installation.md)** - Deploy Trilium using Docker containers + Deploy Trilium as a server -- :material-book-open-variant: **[User Guide](User%20Guide/index.md)** +- :material-book-open-variant: **[User Guide](User%20Guide/User%20Guide.md)** Comprehensive guide to all features -- :material-code-braces: **[Script API](Script%20API/index.md)** +- :material-code-braces: **[Script API](Script%20API/index.html)** Automate and extend Trilium with scripting -- :material-wrench: **[Developer Guide](Developer%20Guide/index.md)** +- :material-wrench: **[Developer Guide](Developer%20Guide/Developer%20Guide/Environment%20Setup.md)** Contributing and development documentation @@ -80,14 +80,14 @@ Trilium Notes is a powerful, feature-rich note-taking application designed for b ## Getting Help -- **[FAQ](support/faq.md)** - Frequently asked questions -- **[Troubleshooting](support/troubleshooting.md)** - Common issues and solutions +- **[FAQ](User%20Guide/User%20Guide/FAQ.md)** - Frequently asked questions +- **[Troubleshooting](User%20Guide/User%20Guide/Troubleshooting.md)** - Common issues and solutions - **[Community Forum](https://github.com/triliumnext/trilium/discussions)** - Ask questions and share tips - **[Issue Tracker](https://github.com/triliumnext/trilium/issues)** - Report bugs and request features ## Contributing -Trilium is open-source and welcomes contributions! Check out our [Contributing Guide](Developer%20Guide/contributing.md) to get started. +Trilium is open-source and welcomes contributions! Check out our [GitHub repository](https://github.com/triliumnext/trilium) to get started. ## License From 7cdd8ffbe2f8a39c367647507b86098fae60e9ff Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:56:46 +0000 Subject: [PATCH 065/136] Add gitignore for build artifacts and verify tests pass Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- .gitignore | 4 ++++ packages/ckeditor5-admonition/sample/ckeditor.js.map | 1 - packages/ckeditor5-admonition/src/admonition.js.map | 1 - packages/ckeditor5-admonition/src/admonitionautoformat.js.map | 1 - packages/ckeditor5-admonition/src/admonitioncommand.js.map | 1 - packages/ckeditor5-admonition/src/admonitionediting.js.map | 1 - packages/ckeditor5-admonition/src/admonitionui.js.map | 1 - packages/ckeditor5-admonition/src/augmentation.js.map | 1 - packages/ckeditor5-admonition/src/index.js.map | 1 - packages/ckeditor5-footnotes/sample/ckeditor.js.map | 1 - packages/ckeditor5-footnotes/src/augmentation.js.map | 1 - packages/ckeditor5-footnotes/src/constants.js.map | 1 - packages/ckeditor5-footnotes/src/footnote-ui.js.map | 1 - packages/ckeditor5-footnotes/src/footnotes.js.map | 1 - packages/ckeditor5-footnotes/src/index.js.map | 1 - .../ckeditor5-footnotes/src/insert-footnote-command.js.map | 1 - packages/ckeditor5-footnotes/src/utils.js.map | 1 - packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map | 1 - packages/ckeditor5-keyboard-marker/src/augmentation.js.map | 1 - packages/ckeditor5-keyboard-marker/src/index.js.map | 1 - packages/ckeditor5-keyboard-marker/src/kbd.js.map | 1 - packages/ckeditor5-keyboard-marker/src/kbdediting.js.map | 1 - packages/ckeditor5-keyboard-marker/src/kbdui.js.map | 1 - packages/ckeditor5-math/sample/ckeditor.js.map | 1 - packages/ckeditor5-math/src/augmentation.js.map | 1 - packages/ckeditor5-math/src/autoformatmath.js.map | 1 - packages/ckeditor5-math/src/automath.js.map | 1 - packages/ckeditor5-math/src/index.js.map | 1 - packages/ckeditor5-math/src/math.js.map | 1 - packages/ckeditor5-math/src/mathcommand.js.map | 1 - packages/ckeditor5-math/src/mathediting.js.map | 1 - packages/ckeditor5-math/src/mathui.js.map | 1 - packages/ckeditor5-math/src/typings-external.js.map | 1 - packages/ckeditor5-math/src/utils.js.map | 1 - packages/ckeditor5-mermaid/sample/ckeditor.js.map | 1 - packages/ckeditor5-mermaid/src/augmentation.js.map | 1 - packages/ckeditor5-mermaid/src/index.js.map | 1 - packages/ckeditor5-mermaid/src/mermaid.js.map | 1 - packages/ckeditor5-mermaid/src/mermaidediting.js.map | 1 - packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map | 1 - packages/ckeditor5-mermaid/src/mermaidui.js.map | 1 - packages/ckeditor5-mermaid/src/utils.js.map | 1 - 42 files changed, 4 insertions(+), 41 deletions(-) delete mode 100644 packages/ckeditor5-admonition/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonition.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonitionautoformat.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonitioncommand.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonitionediting.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonitionui.js.map delete mode 100644 packages/ckeditor5-admonition/src/augmentation.js.map delete mode 100644 packages/ckeditor5-admonition/src/index.js.map delete mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-footnotes/src/augmentation.js.map delete mode 100644 packages/ckeditor5-footnotes/src/constants.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-ui.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnotes.js.map delete mode 100644 packages/ckeditor5-footnotes/src/index.js.map delete mode 100644 packages/ckeditor5-footnotes/src/insert-footnote-command.js.map delete mode 100644 packages/ckeditor5-footnotes/src/utils.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/augmentation.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/index.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/kbd.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/kbdediting.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/kbdui.js.map delete mode 100644 packages/ckeditor5-math/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-math/src/augmentation.js.map delete mode 100644 packages/ckeditor5-math/src/autoformatmath.js.map delete mode 100644 packages/ckeditor5-math/src/automath.js.map delete mode 100644 packages/ckeditor5-math/src/index.js.map delete mode 100644 packages/ckeditor5-math/src/math.js.map delete mode 100644 packages/ckeditor5-math/src/mathcommand.js.map delete mode 100644 packages/ckeditor5-math/src/mathediting.js.map delete mode 100644 packages/ckeditor5-math/src/mathui.js.map delete mode 100644 packages/ckeditor5-math/src/typings-external.js.map delete mode 100644 packages/ckeditor5-math/src/utils.js.map delete mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-mermaid/src/augmentation.js.map delete mode 100644 packages/ckeditor5-mermaid/src/index.js.map delete mode 100644 packages/ckeditor5-mermaid/src/mermaid.js.map delete mode 100644 packages/ckeditor5-mermaid/src/mermaidediting.js.map delete mode 100644 packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map delete mode 100644 packages/ckeditor5-mermaid/src/mermaidui.js.map delete mode 100644 packages/ckeditor5-mermaid/src/utils.js.map diff --git a/.gitignore b/.gitignore index b2c4e3c46..81eb71234 100644 --- a/.gitignore +++ b/.gitignore @@ -49,3 +49,7 @@ upload # docs site/ + +# TypeScript and JavaScript maps +*.js.map +*.d.ts.map diff --git a/packages/ckeditor5-admonition/sample/ckeditor.js.map b/packages/ckeditor5-admonition/sample/ckeditor.js.map deleted file mode 100644 index ca410d012..000000000 --- a/packages/ckeditor5-admonition/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,UAAU,MAAM,sBAAsB,CAAC;AAE9C,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,UAAU;QACV,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,YAAY;QACZ,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonition.js.map b/packages/ckeditor5-admonition/src/admonition.js.map deleted file mode 100644 index 6d951e1d8..000000000 --- a/packages/ckeditor5-admonition/src/admonition.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonition.js","sourceRoot":"","sources":["admonition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,iBAAiB,EAAE,YAAY,EAAE,oBAAoB,CAAW,CAAC;IAC3E,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionautoformat.js.map b/packages/ckeditor5-admonition/src/admonitionautoformat.js.map deleted file mode 100644 index 89440d086..000000000 --- a/packages/ckeditor5-admonition/src/admonitionautoformat.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonitionautoformat.js","sourceRoot":"","sources":["admonitionautoformat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1E,SAAS,sBAAsB,CAAC,KAAuB;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;IACR,CAAC;IAED,IAAK,gBAAsC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC,CAAC,CAAmB,CAAC;IACnC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,MAAM;IAEvD,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,UAAU,CAAE,CAAC;IACvB,CAAC;IAED,SAAS;QACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,OAAO;QACR,CAAC;QAED,MAAM,QAAQ,GAAI,IAAY,CAAC;QAC/B,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;YAChF,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAE3C,IAAI,IAAI,EAAE,CAAC;gBACV,4DAA4D;gBAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACP,qFAAqF;gBACrF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAClC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;gBACrE,CAAC;YACF,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitioncommand.js.map b/packages/ckeditor5-admonition/src/admonitioncommand.js.map deleted file mode 100644 index c92080a67..000000000 --- a/packages/ckeditor5-admonition/src/admonitioncommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonitioncommand.js","sourceRoot":"","sources":["admonitioncommand.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionediting.js.map b/packages/ckeditor5-admonition/src/admonitionediting.js.map deleted file mode 100644 index ac02c16ad..000000000 --- a/packages/ckeditor5-admonition/src/admonitionediting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonitionediting.js","sourceRoot":"","sources":["admonitionediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionui.js.map b/packages/ckeditor5-admonition/src/admonitionui.js.map deleted file mode 100644 index 4ac94e179..000000000 --- a/packages/ckeditor5-admonition/src/admonitionui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonitionui.js","sourceRoot":"","sources":["admonitionui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/augmentation.js.map b/packages/ckeditor5-admonition/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-admonition/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/index.js.map b/packages/ckeditor5-admonition/src/index.js.map deleted file mode 100644 index ebdd4b71d..000000000 --- a/packages/ckeditor5-admonition/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,mCAAmC,CAAC;AAC/D,OAAO,mBAAmB,CAAC;AAC3B,OAAO,yBAAyB,CAAC;AAEjC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG5E,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,cAAc;CACd,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.js.map b/packages/ckeditor5-footnotes/sample/ckeditor.js.map deleted file mode 100644 index 6f02908e9..000000000 --- a/packages/ckeditor5-footnotes/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAE5C,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,SAAS;QACT,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,WAAW;QACX,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/augmentation.js.map b/packages/ckeditor5-footnotes/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-footnotes/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/constants.js.map b/packages/ckeditor5-footnotes/src/constants.js.map deleted file mode 100644 index 06bd57032..000000000 --- a/packages/ckeditor5-footnotes/src/constants.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"constants.js","sourceRoot":"","sources":["constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC;AACjD,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAEnD,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,YAAY,EAAE,cAAc;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;CACpC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG;IACtB,eAAe,EAAE,kBAAkB;IACnC,YAAY,EAAE,eAAe;IAC7B,iBAAiB,EAAE,oBAAoB;IACvC,eAAe,EAAE,kBAAkB;IACnC,gBAAgB,EAAE,oBAAoB;IACtC,SAAS,EAAE,WAAW,EAAE,6DAA6D;IACrF,MAAM,EAAE,QAAQ;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,cAAc,EAAE,gBAAgB;CAChC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACzB,eAAe,EAAE,uBAAuB;IACxC,UAAU,EAAE,kBAAkB;IAC9B,aAAa,EAAE,qBAAqB;IACpC,YAAY,EAAE,oBAAoB;IAClC,iBAAiB,EAAE,yBAAyB;IAC5C,eAAe,EAAE,uBAAuB;IACxC,gBAAgB,EAAE,yBAAyB;IAC3C,oBAAoB,EAAE,8BAA8B;CACpD,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-ui.js.map b/packages/ckeditor5-footnotes/src/footnote-ui.js.map deleted file mode 100644 index 756c97e42..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-ui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"footnote-ui.js","sourceRoot":"","sources":["footnote-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAmC,UAAU,EAAE,MAAM,WAAW,CAAC;AAE/I,OAAO,EACN,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,sBAAsB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,kBAAkB,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;IAEM,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC;QAE3B,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE;YAChE,MAAM,YAAY,GAAG,cAAc,CAAE,MAAM,EAAE,eAAe,CAAE,CAAC;YAC/D,MAAM,eAAe,GAAG,YAAY,CAAC,UAAU,CAAC;YAEhD,gDAAgD;YAChD,sFAAsF;YACtF,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,QAAQ,CAAC,cAAc,CAAE,CAAC;YAC/D,IAAK,CAAC,OAAO,EAAG,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAE,oBAAoB,CAAE,CAAC;YACzC,CAAC;YAED,eAAe,CAAC,GAAG,CAAE;gBACpB,KAAK,EAAE,SAAS,CAAE,UAAU,CAAE;gBAC9B,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,IAAI;aAClB,CAAE,CAAC;YACJ,eAAe,CAAC,IAAI,CAAE,MAAM,CAAE,CAAC,EAAE,CAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAE,CAAC;YACxE,eAAe,CAAC,EAAE,CAAE,SAAS,EAAE,GAAG,EAAE;gBACnC,MAAM,CAAC,OAAO,CAAE,QAAQ,CAAC,cAAc,EAAE;oBACxC,aAAa,EAAE,CAAC;iBAChB,CAAE,CAAC;gBACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAE,CAAC;YAEJ,YAAY,CAAC,KAAK,GAAG,wBAAwB,CAAC;YAC9C,YAAY,CAAC,IAAI,CAAE,WAAW,CAAE,CAAC,EAAE,CAAE,OAAO,CAAE,CAAC;YAC/C,YAAY,CAAC,EAAE,CACd,eAAe,EACf,CAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAG,EAAE;;gBACjC,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,0CAAE,KAAK,CAAC,KAAK,EAAE,CAAC;gBACtC,IAAK,QAAQ,EAAG,CAAC;oBAChB,iBAAiB,CAChB,YAAY,EACZ,IAAI,CAAC,2BAA2B,EAAS,CACzC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACP,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,0CAAE,KAAK,CAAC,KAAK,EAAE,CAAC;oBACtC,MAAM,WAAW,GAAG,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,0CAAE,OAAO,CAAC;oBACpD,IAAK,WAAW,IAAI,WAAW,CAAC,UAAU,EAAG,CAAC;wBAC7C,WAAW,CAAC,UAAU,CAAC,WAAW,CAAE,WAAW,CAAE,CAAC;oBACnD,CAAC;gBACF,CAAC;YACF,CAAC,CACD,CAAC;YACF,oEAAoE;YACpE,IAAI,CAAC,QAAQ,CAAE,YAAY,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE;gBAC7C,MAAM,CAAC,OAAO,CAAE,QAAQ,CAAC,cAAc,EAAE;oBACxC,aAAa,EAAI,GAAG,CAAC,MAAe,CAAC,YAAY;iBACjD,CAAE,CAAC;gBACJ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAE,CAAC;YAEJ,OAAO,YAAY,CAAC;QACrB,CAAC,CAAE,CAAC;IACL,CAAC;IAEM,2BAA2B;QACjC,MAAM,eAAe,GAAG,IAAI,UAAU,EAA8B,CAAC;QACrE,MAAM,UAAU,GAA+B;YAC9C,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,IAAI,SAAS,CAAE;gBACrB,YAAY,EAAE,CAAC;gBACf,KAAK,EAAE,cAAc;gBACrB,QAAQ,EAAE,IAAI;aACd,CAAE;SACH,CAAC;QACF,eAAe,CAAC,GAAG,CAAE,UAAU,CAAE,CAAC;QAElC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACzD,IAAK,CAAC,WAAW,EAAG,CAAC;YACpB,MAAM,IAAI,KAAK,CAAE,+BAA+B,CAAE,CAAC;QACpD,CAAC;QAED,MAAM,eAAe,GAAG,iBAAiB,CACxC,IAAI,CAAC,MAAM,EACX,WAAW,EACX,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAE,CAC5D,CAAC;QAEF,IAAK,eAAe,EAAG,CAAC;YACvB,MAAM,aAAa,GAAG,qBAAqB,CAC1C,IAAI,CAAC,MAAM,EACX,WAAW,EACX,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,CACzD,CAAC;YACF,aAAa,CAAC,OAAO,CAAE,QAAQ,CAAC,EAAE;gBACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAE,UAAU,CAAC,aAAa,CAAE,CAAC;gBAChE,MAAM,UAAU,GAA+B;oBAC9C,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,IAAI,SAAS,CAAE;wBACrB,YAAY,EAAE,KAAK;wBACnB,KAAK,EAAE,mBAAoB,KAAM,EAAE;wBACnC,QAAQ,EAAE,IAAI;qBACd,CAAE;iBACH,CAAC;gBAEF,eAAe,CAAC,GAAG,CAAE,UAAU,CAAE,CAAC;YACnC,CAAC,CAAE,CAAC;QACL,CAAC;QAED,OAAO,eAAe,CAAC;IACxB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnotes.js.map b/packages/ckeditor5-footnotes/src/footnotes.js.map deleted file mode 100644 index 8f266e255..000000000 --- a/packages/ckeditor5-footnotes/src/footnotes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"footnotes.js","sourceRoot":"","sources":["footnotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAE1C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,MAAM;IACrC,MAAM,KAAK,UAAU;QAC3B,OAAO,WAAoB,CAAC;IAC7B,CAAC;IAEM,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,eAAe,EAAE,UAAU,CAAW,CAAC;IACjD,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/index.js.map b/packages/ckeditor5-footnotes/src/index.js.map deleted file mode 100644 index cfaafa124..000000000 --- a/packages/ckeditor5-footnotes/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,0CAA0C,CAAC;AAC1E,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,kBAAkB;CAClB,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map b/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map deleted file mode 100644 index 441d6a4e4..000000000 --- a/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"insert-footnote-command.js","sourceRoot":"","sources":["insert-footnote-command.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/utils.js.map b/packages/ckeditor5-footnotes/src/utils.js.map deleted file mode 100644 index d80b38c11..000000000 --- a/packages/ckeditor5-footnotes/src/utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map deleted file mode 100644 index 4b6fa9283..000000000 --- a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,GAAG,MAAM,eAAe,CAAC;AAEhC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,GAAG;QACH,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,gBAAgB;QAChB,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/augmentation.js.map b/packages/ckeditor5-keyboard-marker/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-keyboard-marker/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/index.js.map b/packages/ckeditor5-keyboard-marker/src/index.js.map deleted file mode 100644 index 8493287a6..000000000 --- a/packages/ckeditor5-keyboard-marker/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,OAAO;CACP,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbd.js.map b/packages/ckeditor5-keyboard-marker/src/kbd.js.map deleted file mode 100644 index 3dc6dcb3e..000000000 --- a/packages/ckeditor5-keyboard-marker/src/kbd.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"kbd.js","sourceRoot":"","sources":["kbd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,MAAM;IAEtC,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,UAAU,EAAE,KAAK,CAAE,CAAC;IAC9B,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,KAAc,CAAC;IACvB,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map b/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map deleted file mode 100644 index d92aebc98..000000000 --- a/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"kbdediting.js","sourceRoot":"","sources":["kbdediting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAErD,MAAM,GAAG,GAAG,KAAK,CAAC;AAElB;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,qCAAqC;QACrC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAE,OAAO,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,CAAE,CAAC;QAChE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAE,GAAG,EAAE;YAChD,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;SACjB,CAAE,CAAC;QAEJ,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAE;YACrC,KAAK,EAAE,GAAG;YACV,IAAI,EAAE,GAAG;SACT,CAAE,CAAC;QAEJ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,GAAG,EAAE,IAAI,gBAAgB,CAAE,MAAM,EAAE,GAAG,CAAE,CAAE,CAAC;QAChE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAE,YAAY,EAAE,GAAG,CAAE,CAAC;IAC5C,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbdui.js.map b/packages/ckeditor5-keyboard-marker/src/kbdui.js.map deleted file mode 100644 index 36e50266b..000000000 --- a/packages/ckeditor5-keyboard-marker/src/kbdui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"kbdui.js","sourceRoot":"","sources":["kbdui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,OAAO,MAAM,4BAA4B,CAAC;AAEjD,MAAM,GAAG,GAAG,KAAK,CAAC;AAElB;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,MAAM;IAEjC,MAAM,KAAK,UAAU;QAC3B,OAAO,OAAgB,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QAEnB,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAE,GAAG,EAAE,MAAM,CAAC,EAAE;YAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,GAAG,CAAsB,CAAC;YAC/D,MAAM,IAAI,GAAG,IAAI,UAAU,CAAE,MAAM,CAAE,CAAC;YAEtC,IAAI,CAAC,GAAG,CAAE;gBACT,KAAK,EAAE,CAAC,CAAE,mBAAmB,CAAE;gBAC/B,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,YAAY;gBACvB,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,IAAI;aAClB,CAAE,CAAC;YAEJ,IAAI,CAAC,IAAI,CAAE,MAAM,EAAE,WAAW,CAAE,CAAC,EAAE,CAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAE,CAAC;YAErE,mBAAmB;YACnB,IAAI,CAAC,QAAQ,CAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE;gBACpC,MAAM,CAAC,OAAO,CAAE,GAAG,CAAE,CAAC;gBACtB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAE,CAAC;YAEJ,OAAO,IAAI,CAAC;QACb,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/sample/ckeditor.js.map b/packages/ckeditor5-math/sample/ckeditor.js.map deleted file mode 100644 index 253baa75e..000000000 --- a/packages/ckeditor5-math/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,IAAI;QACJ,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,MAAM;QACN,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/augmentation.js.map b/packages/ckeditor5-math/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-math/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/autoformatmath.js.map b/packages/ckeditor5-math/src/autoformatmath.js.map deleted file mode 100644 index 7fa8b54a2..000000000 --- a/packages/ckeditor5-math/src/autoformatmath.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"autoformatmath.js","sourceRoot":"","sources":["autoformatmath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACvE,4FAA4F;AAC5F,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAC1C,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,IAAI,EAAE,YAAY,CAAW,CAAC;IACxC,CAAC;IAED;;OAEG;IACI,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,IAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,MAAM,CAAE,EAAG,CAAC;YACrC,UAAU,CAAE,iCAAiC,EAAE,MAAM,CAAE,CAAC;QACzD,CAAC;IACF,CAAC;IAEM,SAAS;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,MAAM,CAAE,CAAC;QAE9C,IAAK,OAAO,YAAY,WAAW,EAAG,CAAC;YACtC,MAAM,QAAQ,GAAG,GAAG,EAAE;gBACrB,IAAK,CAAC,OAAO,CAAC,SAAS,EAAG,CAAC;oBAC1B,OAAO,KAAK,CAAC;gBACd,CAAC;gBAED,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;gBAEvB,mCAAmC;gBACnC,MAAM,CAAC,UAAU,CAChB,GAAG,EAAE;oBACJ,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,QAAQ,CAAE,CAAC;oBACtD,IAAK,cAAc,YAAY,MAAM,EAAG,CAAC;wBACxC,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC1B,CAAC;gBACF,CAAC,EACD,EAAE,CACF,CAAC;YACH,CAAC,CAAC;YAEF,wHAAwH;YACxH,sBAAsB,CAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAE,CAAC;YAC3D,wHAAwH;YACxH,sBAAsB,CAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAE,CAAC;QAC5D,CAAC;IACF,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,gBAAyB,CAAC;IAClC,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/automath.js.map b/packages/ckeditor5-math/src/automath.js.map deleted file mode 100644 index 80183ef09..000000000 --- a/packages/ckeditor5-math/src/automath.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"automath.js","sourceRoot":"","sources":["automath.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/index.js.map b/packages/ckeditor5-math/src/index.js.map deleted file mode 100644 index aaf6b7ac6..000000000 --- a/packages/ckeditor5-math/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,QAAQ;CACR,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/math.js.map b/packages/ckeditor5-math/src/math.js.map deleted file mode 100644 index a7a614dc4..000000000 --- a/packages/ckeditor5-math/src/math.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"math.js","sourceRoot":"","sources":["math.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,MAAM;IAChC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAW,CAAC;IAC3D,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,MAAe,CAAC;IACxB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathcommand.js.map b/packages/ckeditor5-math/src/mathcommand.js.map deleted file mode 100644 index 1d80830c3..000000000 --- a/packages/ckeditor5-math/src/mathcommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mathcommand.js","sourceRoot":"","sources":["mathcommand.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathediting.js.map b/packages/ckeditor5-math/src/mathediting.js.map deleted file mode 100644 index dbc082614..000000000 --- a/packages/ckeditor5-math/src/mathediting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mathediting.js","sourceRoot":"","sources":["mathediting.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAe,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,sCAAsC,EAA8C,aAAa,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC1K,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/D,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,MAAM;IACvC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,MAAM,CAAW,CAAC;IAC5B,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,aAAsB,CAAC;IAC/B,CAAC;IAED,YAAa,MAAc;QAC1B,KAAK,CAAE,MAAM,CAAE,CAAC;QAChB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAE,MAAM,EAAE;YAC7B,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,UAAU;YACrB,eAAe,EAAE,KAAK;YACtB,aAAa,EAAE,IAAI;YACnB,gBAAgB,EAAE,EAAE;YACpB,cAAc,EAAE,EAAE;YAClB,kBAAkB,EAAE,EAAE;SACtB,CAAE,CAAC;IACL,CAAC;IAEM,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QAChD,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACxE,MAAM,aAAa,GAAG,4CAA4C,CAAC;QACnE,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;YAC3C,0FAA0F;YAC1F,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAChE,0BAA0B,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,CAC9E,CAAC;YACF,OAAO,cAAc,CAAC,aAAa,CAAC,CAAC;QACtC,CAAC,CAAC;QAEF,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,MAAM,EAAE,IAAI,WAAW,CAAE,MAAM,CAAE,CAAE,CAAC;QAEzD,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CACvB,qBAAqB,EACrB,sCAAsC,CACrC,MAAM,CAAC,KAAK,EACZ,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAE,MAAM,CAAE,CAC7C,CACD,CAAC;IACH,CAAC;IAEO,aAAa;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QACxC,MAAM,CAAC,QAAQ,CAAE,gBAAgB,EAAE;YAClC,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,IAAI;YACd,eAAe,EAAE,CAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,qBAAqB,CAAE;SAClG,CAAE,CAAC;QAEJ,MAAM,CAAC,QAAQ,CAAE,iBAAiB,EAAE;YACnC,cAAc,EAAE,cAAc;YAC9B,eAAe,EAAE,CAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,CAAE;SAC3E,CAAE,CAAC;IACL,CAAC;IAEO,iBAAiB;QACxB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;QAC1C,oEAAoE;QACpE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAE,MAAM,CAAG,CAAC;QAErD,gBAAgB;QAChB,UAAU;aACR,GAAG,CAAE,QAAQ,CAAE;YAChB,gFAAgF;aAC/E,gBAAgB,CAAE;YAClB,IAAI,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACX,IAAI,EAAE,UAAU;iBAChB;aACD;YACD,KAAK,EAAE,CAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAG,EAAE;gBACpC,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAE,CAAC,CAAE,CAAC;gBACxC,IAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,CAAE,OAAO,CAAE,EAAG,CAAC;oBAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACnC,OAAO,MAAM,CAAC,aAAa,CAAE,gBAAgB,EAAE;wBAC9C,QAAQ;wBACR,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;4BACjC,UAAU,CAAC,UAAU,CAAC,CAAC;4BACvB,QAAQ;wBACT,OAAO,EAAE,KAAK;qBACd,CAAE,CAAC;gBACL,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC;SACD,CAAE;YACH,+FAA+F;aAC9F,gBAAgB,CAAE;YAClB,IAAI,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACX,IAAI,EAAE,wBAAwB;iBAC9B;aACD;YACD,KAAK,EAAE,CAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAG,EAAE;gBACpC,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAE,CAAC,CAAE,CAAC;gBACxC,IAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,CAAE,OAAO,CAAE,EAAG,CAAC;oBAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACnC,OAAO,MAAM,CAAC,aAAa,CAAE,iBAAiB,EAAE;wBAC/C,QAAQ;wBACR,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;4BACjC,UAAU,CAAC,UAAU,CAAC,CAAC;4BACvB,QAAQ;wBACT,OAAO,EAAE,IAAI;qBACb,CAAE,CAAC;gBACL,CAAC;gBACD,OAAO,IAAI,CAAC;YACb,CAAC;SACD,CAAE;YACH,+EAA+E;aAC9E,gBAAgB,CAAE;YAClB,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,oEAAoE;gBACpE,OAAO,EAAE,CAAE,UAAU,CAAC,SAAU,CAAE;aAClC;YACD,KAAK,EAAE,CAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAG,EAAE;gBACpC,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAE,CAAC,CAAE,CAAC;gBACxC,IAAK,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,EAAE,CAAE,OAAO,CAAE,EAAG,CAAC;oBAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;oBACvE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAE,iBAAiB,CAAE,QAAQ,CAAE,EAAE;wBAC5D,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;4BACjC,UAAU,CAAC,UAAU,CAAC,CAAC;4BACvB,MAAM;qBACP,CAAE,CAAC;oBAEJ,OAAO,MAAM,CAAC,aAAa,CAC1B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,EACrD,MAAM,CACN,CAAC;gBACH,CAAC;gBAED,OAAO,IAAI,CAAC;YACb,CAAC;SACD,CAAE;YACH,qFAAqF;aACpF,gBAAgB,CAAE;YAClB,IAAI,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,CAAE,YAAY,CAAE;aACzB;YACD,KAAK,EAAE,CAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAG,EAAE;gBACpC,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAE,YAAY,CAAE,CAAC;gBAC1D,IAAK,QAAQ,IAAI,IAAI,EAAG,CAAC;oBACxB;;;sBAGE;oBACF,MAAM,IAAI,aAAa,CAAE,kBAAkB,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAE,CAAC;gBACvE,CAAC;gBACD,OAAO,MAAM,CAAC,aAAa,CAAE,gBAAgB,EAAE;oBAC9C,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;oBACzB,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;wBACjC,UAAU,CAAC,UAAU,CAAC,CAAC;wBACvB,QAAQ;oBACT,OAAO,EAAE,KAAK;iBACd,CAAE,CAAC;YACL,CAAC;SACD,CAAE,CAAC;QAEL,0BAA0B;QAC1B,UAAU;aACR,GAAG,CAAE,iBAAiB,CAAE;aACxB,gBAAgB,CAAE;YAClB,KAAK,EAAE,gBAAgB;YACvB,IAAI,EAAE,CAAE,SAAS,EAAE,EAAE,MAAM,EAAE,EAAG,EAAE;gBACjC,MAAM,aAAa,GAAG,wBAAwB,CAC7C,SAAS,EACT,MAAM,CACN,CAAC;gBACF,OAAO,QAAQ,CAAE,aAAa,EAAE,MAAM,CAAE,CAAC;YAC1C,CAAC;SACD,CAAE;aACF,gBAAgB,CAAE;YAClB,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,CAAE,SAAS,EAAE,EAAE,MAAM,EAAE,EAAG,EAAE;gBACjC,MAAM,aAAa,GAAG,wBAAwB,CAC7C,SAAS,EACT,MAAM,CACN,CAAC;gBACF,OAAO,QAAQ,CAAE,aAAa,EAAE,MAAM,CAAE,CAAC;YAC1C,CAAC;SACD,CAAE,CAAC;QAEL,gBAAgB;QAChB,UAAU;aACR,GAAG,CAAE,cAAc,CAAE;aACrB,gBAAgB,CAAE;YAClB,KAAK,EAAE,gBAAgB;YACvB,IAAI,EAAE,iBAAiB;SACvB,CAAE;aACF,gBAAgB,CAAE;YAClB,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,iBAAiB;SACvB,CAAE,CAAC;QAEL,yBAAyB;QACzB,SAAS,wBAAwB,CAChC,SAAuB,EACvB,MAA0B;YAE1B,MAAM,QAAQ,GAAG,MAAM,CAAE,SAAS,CAAC,YAAY,CAAE,UAAU,CAAE,CAAE,CAAC;YAChE,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC,YAAY,CAAE,SAAS,CAAE,CAAC;YAEtD,MAAM,MAAM,GACX,qBAAqB;gBACrB,CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAE,CAAC;YAC7C,MAAM,OAAO,GACZ,cAAc;gBACd,CAAE,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,oBAAoB,CAAE,CAAC;YAE5D,MAAM,WAAW,GAAG,MAAM,CAAC,sBAAsB,CAChD,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EACxB;gBACC,KAAK,EAAE,MAAM;gBACb,KAAK,EAAE,OAAO;aACd,CACD,CAAC;YAEF,MAAM,SAAS,GAAG,MAAM,CAAC,eAAe,CACvC,KAAK,EACL,IAAI,EACJ,UAAU,WAAW;gBACpB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAE,WAAW,CAAE,CAAC;gBAEpD,KAAK,cAAc,CAClB,QAAQ,EACR,UAAU,EACV,UAAU,CAAC,MAAM,EACjB,UAAU,CAAC,QAAQ,EACnB,OAAO,EACP,KAAK,EACL,gBAAiB,GAAG,EAAG,EAAE,EACzB,UAAU,CAAC,gBAAgB,EAC3B,UAAU,CAAC,kBAAkB,CAC7B,CAAC;gBAEF,OAAO,UAAU,CAAC;YACnB,CAAC,CACD,CAAC;YAEF,MAAM,CAAC,MAAM,CAAE,MAAM,CAAC,gBAAgB,CAAE,WAAW,EAAE,CAAC,CAAE,EAAE,SAAS,CAAE,CAAC;YAEtE,OAAO,WAAW,CAAC;QACpB,CAAC;QAED,uBAAuB;QACvB,SAAS,iBAAiB,CACzB,SAAuB,EACvB,EAAE,MAAM,EAAkC;YAE1C,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAE,UAAU,CAAE,CAAC;YACtD,IAAK,OAAO,QAAQ,IAAI,QAAQ,EAAG,CAAC;gBACnC;;;kBAGE;gBACF,MAAM,IAAI,aAAa,CAAE,kBAAkB,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,CAAE,CAAC;YACvE,CAAC;YAED,MAAM,IAAI,GAAG,SAAS,CAAC,YAAY,CAAE,MAAM,CAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,SAAS,CAAC,YAAY,CAAE,SAAS,CAAE,CAAC;YAEpD,IAAK,IAAI,KAAK,MAAM,EAAG,CAAC;gBACvB,MAAM,WAAW,GAAG,MAAM,CAAC,sBAAsB,CAAE,MAAM,EAAE;oBAC1D,KAAK,EAAE,UAAU,CAAC,SAAS;iBAC3B,CAAE,CAAC;gBAEJ,IAAK,OAAO,EAAG,CAAC;oBACf,MAAM,CAAC,MAAM,CACZ,MAAM,CAAC,gBAAgB,CAAE,WAAW,EAAE,CAAC,CAAE,EACzC,MAAM,CAAC,UAAU,CAAE,KAAK,GAAG,QAAQ,GAAG,KAAK,CAAE,CAC7C,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACP,MAAM,CAAC,MAAM,CACZ,MAAM,CAAC,gBAAgB,CAAE,WAAW,EAAE,CAAC,CAAE,EACzC,MAAM,CAAC,UAAU,CAAE,KAAK,GAAG,QAAQ,GAAG,KAAK,CAAE,CAC7C,CAAC;gBACH,CAAC;gBAED,OAAO,WAAW,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACP,MAAM,WAAW,GAAG,MAAM,CAAC,sBAAsB,CAAE,QAAQ,EAAE;oBAC5D,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,UAAU;iBACrD,CAAE,CAAC;gBAEJ,MAAM,CAAC,MAAM,CACZ,MAAM,CAAC,gBAAgB,CAAE,WAAW,EAAE,CAAC,CAAE,EACzC,MAAM,CAAC,UAAU,CAAE,QAAQ,CAAE,CAC7B,CAAC;gBAEF,OAAO,WAAW,CAAC;YACpB,CAAC;QACF,CAAC;IACF,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathui.js.map b/packages/ckeditor5-math/src/mathui.js.map deleted file mode 100644 index 7ba56ce3a..000000000 --- a/packages/ckeditor5-math/src/mathui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mathui.js","sourceRoot":"","sources":["mathui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/typings-external.js.map b/packages/ckeditor5-math/src/typings-external.js.map deleted file mode 100644 index 3f121d309..000000000 --- a/packages/ckeditor5-math/src/typings-external.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"typings-external.js","sourceRoot":"","sources":["typings-external.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/utils.js.map b/packages/ckeditor5-math/src/utils.js.map deleted file mode 100644 index cb543f421..000000000 --- a/packages/ckeditor5-math/src/utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.js.map b/packages/ckeditor5-mermaid/sample/ckeditor.js.map deleted file mode 100644 index 93d6202ab..000000000 --- a/packages/ckeditor5-mermaid/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,OAAO,MAAM,mBAAmB,CAAC;AAExC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,OAAO;QACP,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,SAAS;QACT,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/augmentation.js.map b/packages/ckeditor5-mermaid/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-mermaid/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/index.js.map b/packages/ckeditor5-mermaid/src/index.js.map deleted file mode 100644 index b0b1a8b82..000000000 --- a/packages/ckeditor5-mermaid/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAChE,OAAO,eAAe,MAAM,uCAAuC,CAAC;AACpE,OAAO,aAAa,MAAM,qCAAqC,CAAC;AAChE,OAAO,cAAc,MAAM,sCAAsC,CAAC;AAClE,OAAO,sBAAsB,CAAC;AAE9B,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,QAAQ;IACR,iBAAiB;IACjB,eAAe;IACf,aAAa;IACb,cAAc;CACd,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaid.js.map b/packages/ckeditor5-mermaid/src/mermaid.js.map deleted file mode 100644 index 95cac22e5..000000000 --- a/packages/ckeditor5-mermaid/src/mermaid.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaid.js","sourceRoot":"","sources":["mermaid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,MAAM;IAE1C,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,cAAc,EAAE,cAAc,EAAE,SAAS,CAAE,CAAC;IACtD,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,SAAkB,CAAC;IAC3B,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidediting.js.map b/packages/ckeditor5-mermaid/src/mermaidediting.js.map deleted file mode 100644 index 61e3f2adc..000000000 --- a/packages/ckeditor5-mermaid/src/mermaidediting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidediting.js","sourceRoot":"","sources":["mermaidediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map b/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map deleted file mode 100644 index 0aa81301d..000000000 --- a/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidtoolbar.js","sourceRoot":"","sources":["mermaidtoolbar.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAsC,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAGhG,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAEjD,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,uBAAuB,CAAE,CAAC;IACpC,CAAC;IAED,MAAM,KAAK,UAAU;QACpB,OAAO,gBAAyB,CAAC;IAClC,CAAC;IAED,SAAS;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QAEnB,MAAM,uBAAuB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,uBAAuB,CAAE,CAAC;QAC9E,MAAM,mBAAmB,GAAG,CAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,EAAE,aAAa,CAAE,CAAC;QAE9G,IAAK,mBAAmB,EAAG,CAAC;YAC3B,uBAAuB,CAAC,QAAQ,CAAE,gBAAgB,EAAE;gBACnD,SAAS,EAAE,CAAC,CAAE,iBAAiB,CAAE;gBACjC,KAAK,EAAE,mBAAmB;gBAC1B,iBAAiB,EAAE,SAAS,CAAC,EAAE,CAAC,kBAAkB,CAAE,SAAS,CAAE;aAC/D,CAAE,CAAC;QACL,CAAC;IACF,CAAC;CACD;AAED,SAAS,kBAAkB,CAAE,SAAgC;IAC5D,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,EAA4B,CAAC;IAE7E,IAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAE,qBAAqB,CAAE,EAAG,CAAC;QACpE,OAAO,WAAW,CAAC;IACpB,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidui.js.map b/packages/ckeditor5-mermaid/src/mermaidui.js.map deleted file mode 100644 index 217972c2f..000000000 --- a/packages/ckeditor5-mermaid/src/mermaidui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidui.js","sourceRoot":"","sources":["mermaidui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/utils.js.map b/packages/ckeditor5-mermaid/src/utils.js.map deleted file mode 100644 index 633a5826c..000000000 --- a/packages/ckeditor5-mermaid/src/utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAE,MAAc,EAAE,WAAmB;;IAC7D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;IAClD,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,EAAE,KAAI,MAAA,SAAS,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAC;IAE1F,IAAK,WAAW,IAAI,WAAW,CAAC,EAAE,CAAE,SAAS,EAAE,SAAS,CAAE,IAAI,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,WAAW,EAAG,CAAC;QAC1H,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"} \ No newline at end of file From daec11b9810a9fc08b381e3b3e6cb6136e2f807f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:57:26 +0000 Subject: [PATCH 066/136] Fix additional grammar and clarity issues in documentation Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- docs/User Guide/User Guide/Collections.md | 2 +- .../User Guide/Installation & Setup/Desktop Installation.md | 2 +- docs/User Guide/User Guide/Scripting.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/User Guide/User Guide/Collections.md b/docs/User Guide/User Guide/Collections.md index b97b4d952..b80bc49d8 100644 --- a/docs/User Guide/User Guide/Collections.md +++ b/docs/User Guide/User Guide/Collections.md @@ -1,5 +1,5 @@ # Collections -Collections are a unique type of notes that don't have a content, but instead display its child notes in various presentation methods. +Collections are a unique type of notes that don't have content, but instead display their child notes in various presentation methods. ## Main collections diff --git a/docs/User Guide/User Guide/Installation & Setup/Desktop Installation.md b/docs/User Guide/User Guide/Installation & Setup/Desktop Installation.md index c96a1e1cd..c8eb58ee5 100644 --- a/docs/User Guide/User Guide/Installation & Setup/Desktop Installation.md +++ b/docs/User Guide/User Guide/Installation & Setup/Desktop Installation.md @@ -16,4 +16,4 @@ Trilium offers various startup scripts to customize your experience: ## Synchronization -For Trilium desktp users who wish to synchronize their data with a server instance, refer to the Synchronization guide for detailed instructions. \ No newline at end of file +For Trilium desktop users who wish to synchronize their data with a server instance, refer to the Synchronization guide for detailed instructions. \ No newline at end of file diff --git a/docs/User Guide/User Guide/Scripting.md b/docs/User Guide/User Guide/Scripting.md index f5724f8a3..16146aef2 100644 --- a/docs/User Guide/User Guide/Scripting.md +++ b/docs/User Guide/User Guide/Scripting.md @@ -1,7 +1,7 @@ # Scripting Trilium supports creating Code notes, i.e. notes which allow you to store some programming code and highlight it. Special case is JavaScript code notes which can also be executed inside Trilium which can in conjunction with Script API provide extra functionality. -## Scripting +## Architecture Overview To go further I must explain basic architecture of Trilium - in its essence it is a classic web application - it has these two main components: From 01deab9c795da1697d9095387694025828c591e1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:57:43 +0000 Subject: [PATCH 067/136] Initial plan From b1729ad7ec86a20b9a626b9386eed235adb3ccfb Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:59:22 +0000 Subject: [PATCH 068/136] Fix additional clarity and grammar issues Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- .../User Guide/Basic Concepts and Features/Navigation/Search.md | 2 +- .../User Guide/Installation & Setup/Server Installation.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/User Guide/User Guide/Basic Concepts and Features/Navigation/Search.md b/docs/User Guide/User Guide/Basic Concepts and Features/Navigation/Search.md index 70dd3632a..36aebff51 100644 --- a/docs/User Guide/User Guide/Basic Concepts and Features/Navigation/Search.md +++ b/docs/User Guide/User Guide/Basic Concepts and Features/Navigation/Search.md @@ -13,7 +13,7 @@ Note search enables you to find notes by searching for text in the title, conten To search for notes, click on the magnifying glass icon on the toolbar or press the keyboard [shortcut](../Keyboard%20Shortcuts.md). 1. Set the text to search for in the _Search string_ field. - 1. Apart from searching for words ad-literam, there is also the possibility to search for attributes or properties of notes. + 1. Apart from searching for words literally, there is also the possibility to search for attributes or properties of notes. 2. See the examples below for more information. 2. To limit the search to a note and its sub-children, set a note in _Ancestor_. 1. This value is also pre-filled if the search is triggered from a [hoisted note](Note%20Hoisting.md) or a [workspace](Workspaces.md). diff --git a/docs/User Guide/User Guide/Installation & Setup/Server Installation.md b/docs/User Guide/User Guide/Installation & Setup/Server Installation.md index eb0054c91..ceae67f84 100644 --- a/docs/User Guide/User Guide/Installation & Setup/Server Installation.md +++ b/docs/User Guide/User Guide/Installation & Setup/Server Installation.md @@ -32,7 +32,7 @@ export TRILIUM_DATA_DIR=/home/myuser/data/my-trilium-data ### Disabling / Modifying the Upload Limit -If you're running into the 250MB limit imposed on the server by default, and you'd like to increase the upload limit, you can set the `TRILIUM_NO_UPLOAD_LIMIT` environment variable to `true` disable it completely: +If you're running into the 250MB limit imposed on the server by default, and you'd like to increase the upload limit, you can set the `TRILIUM_NO_UPLOAD_LIMIT` environment variable to `true` to disable it completely: ``` export TRILIUM_NO_UPLOAD_LIMIT=true From 154492e454392cd642919ff89c067dbe0debc7aa Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 21:59:29 +0000 Subject: [PATCH 069/136] Add comprehensive technical and architectural documentation Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- docs/ARCHITECTURE.md | 1016 +++++++++++++++++++++++++++++++ docs/DATABASE.md | 736 ++++++++++++++++++++++ docs/README.md | 22 +- docs/SCRIPTING.md | 734 ++++++++++++++++++++++ docs/SECURITY_ARCHITECTURE.md | 834 +++++++++++++++++++++++++ docs/SYNCHRONIZATION.md | 583 ++++++++++++++++++ docs/TECHNICAL_DOCUMENTATION.md | 423 +++++++++++++ 7 files changed, 4347 insertions(+), 1 deletion(-) create mode 100644 docs/ARCHITECTURE.md create mode 100644 docs/DATABASE.md create mode 100644 docs/SCRIPTING.md create mode 100644 docs/SECURITY_ARCHITECTURE.md create mode 100644 docs/SYNCHRONIZATION.md create mode 100644 docs/TECHNICAL_DOCUMENTATION.md diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md new file mode 100644 index 000000000..44d4f99fd --- /dev/null +++ b/docs/ARCHITECTURE.md @@ -0,0 +1,1016 @@ +# Trilium Notes - Technical Architecture Documentation + +> **Version:** 0.99.3 +> **Last Updated:** November 2025 +> **Maintainer:** TriliumNext Team + +## Table of Contents + +1. [Introduction](#introduction) +2. [High-Level Architecture](#high-level-architecture) +3. [Monorepo Structure](#monorepo-structure) +4. [Core Architecture Patterns](#core-architecture-patterns) +5. [Data Layer](#data-layer) +6. [Caching System](#caching-system) +7. [Frontend Architecture](#frontend-architecture) +8. [Backend Architecture](#backend-architecture) +9. [API Architecture](#api-architecture) +10. [Build System](#build-system) +11. [Testing Strategy](#testing-strategy) +12. [Security Architecture](#security-architecture) +13. [Related Documentation](#related-documentation) + +--- + +## Introduction + +Trilium Notes is a hierarchical note-taking application built as a TypeScript monorepo. It supports multiple deployment modes (desktop, server, mobile web) and features advanced capabilities including synchronization, scripting, encryption, and rich content editing. + +### Key Characteristics + +- **Monorepo Architecture**: Uses pnpm workspaces for dependency management +- **Multi-Platform**: Desktop (Electron), Server (Node.js/Express), and Mobile Web +- **TypeScript-First**: Strong typing throughout the codebase +- **Plugin-Based**: Extensible architecture for note types and UI components +- **Offline-First**: Full functionality without network connectivity +- **Synchronization-Ready**: Built-in sync protocol for multi-device usage + +### Technology Stack + +- **Runtime**: Node.js (backend), Browser/Electron (frontend) +- **Language**: TypeScript, JavaScript +- **Database**: SQLite (better-sqlite3) +- **Build Tools**: Vite, ESBuild, pnpm +- **UI Framework**: Custom widget-based system +- **Rich Text**: CKEditor 5 (customized) +- **Code Editing**: CodeMirror 6 +- **Desktop**: Electron +- **Server**: Express.js + +--- + +## High-Level Architecture + +Trilium follows a **client-server architecture** even in desktop mode, where Electron runs both the backend server and frontend client within the same process. + +``` +┌─────────────────────────────────────────────────────────────┐ +│ Frontend │ +│ ┌────────────┐ ┌────────────┐ ┌────────────┐ │ +│ │ Widgets │ │ Froca │ │ UI │ │ +│ │ System │ │ Cache │ │ Services │ │ +│ └────────────┘ └────────────┘ └────────────┘ │ +│ │ │ +│ WebSocket / REST API │ +│ │ │ +└─────────────────────────┼────────────────────────────────────┘ + │ +┌─────────────────────────┼────────────────────────────────────┐ +│ Backend Server │ +│ ┌────────────┐ ┌────────────┐ ┌────────────┐ │ +│ │ Express │ │ Becca │ │ Script │ │ +│ │ Routes │ │ Cache │ │ Engine │ │ +│ └────────────┘ └────────────┘ └────────────┘ │ +│ │ │ +│ ┌────┴─────┐ │ +│ │ SQLite │ │ +│ │ Database │ │ +│ └──────────┘ │ +└─────────────────────────────────────────────────────────────┘ +``` + +### Deployment Modes + +1. **Desktop Application** + - Electron wrapper running both frontend and backend + - Local SQLite database + - Full offline functionality + - Cross-platform (Windows, macOS, Linux) + +2. **Server Installation** + - Node.js server exposing web interface + - Multi-user capable + - Can sync with desktop clients + - Docker deployment supported + +3. **Mobile Web** + - Optimized responsive interface + - Accessed via browser + - Requires server installation + +--- + +## Monorepo Structure + +Trilium uses **pnpm workspaces** to manage its monorepo structure, with apps and packages clearly separated. + +``` +trilium/ +├── apps/ # Runnable applications +│ ├── client/ # Frontend application (shared by server & desktop) +│ ├── server/ # Node.js server with web interface +│ ├── desktop/ # Electron desktop application +│ ├── web-clipper/ # Browser extension for web content capture +│ ├── db-compare/ # Database comparison tool +│ ├── dump-db/ # Database export tool +│ ├── edit-docs/ # Documentation editing tool +│ ├── build-docs/ # Documentation build tool +│ └── website/ # Marketing website +│ +├── packages/ # Shared libraries +│ ├── commons/ # Shared interfaces and utilities +│ ├── ckeditor5/ # Custom rich text editor +│ ├── codemirror/ # Code editor customizations +│ ├── highlightjs/ # Syntax highlighting +│ ├── ckeditor5-admonition/ # CKEditor plugin: admonitions +│ ├── ckeditor5-footnotes/ # CKEditor plugin: footnotes +│ ├── ckeditor5-keyboard-marker/# CKEditor plugin: keyboard shortcuts +│ ├── ckeditor5-math/ # CKEditor plugin: math equations +│ ├── ckeditor5-mermaid/ # CKEditor plugin: diagrams +│ ├── express-partial-content/ # HTTP partial content middleware +│ ├── share-theme/ # Shared note theme +│ ├── splitjs/ # Split pane library +│ └── turndown-plugin-gfm/ # Markdown conversion +│ +├── docs/ # Documentation +├── scripts/ # Build and utility scripts +└── patches/ # Package patches (via pnpm) +``` + +### Package Dependencies + +The monorepo uses workspace protocol (`workspace:*`) for internal dependencies: + +``` +desktop → client → commons +server → client → commons +client → ckeditor5, codemirror, highlightjs +ckeditor5 → ckeditor5-* plugins +``` + +--- + +## Core Architecture Patterns + +### Three-Layer Cache System + +Trilium implements a sophisticated **three-tier caching system** to optimize performance and enable offline functionality: + +#### 1. Becca (Backend Cache) + +Located at: `apps/server/src/becca/` + +```typescript +// Becca caches all entities in memory +class Becca { + notes: Record + branches: Record + attributes: Record + attachments: Record + // ... other entity collections +} +``` + +**Responsibilities:** +- Server-side entity cache +- Maintains complete note tree in memory +- Handles entity relationships and integrity +- Provides fast lookups without database queries +- Manages entity lifecycle (create, update, delete) + +**Key Files:** +- `becca.ts` - Main cache instance +- `becca_loader.ts` - Loads entities from database +- `becca_service.ts` - Cache management operations +- `entities/` - Entity classes (BNote, BBranch, etc.) + +#### 2. Froca (Frontend Cache) + +Located at: `apps/client/src/services/froca.ts` + +```typescript +// Froca is a read-only mirror of backend data +class Froca { + notes: Record + branches: Record + attributes: Record + // ... other entity collections +} +``` + +**Responsibilities:** +- Frontend read-only cache +- Lazy loading of note tree +- Minimizes API calls +- Enables fast UI rendering +- Synchronizes with backend via WebSocket + +**Loading Strategy:** +- Initial load: root notes and immediate children +- Lazy load: notes loaded when accessed +- When note is loaded, all parent and child branches load +- Deleted entities tracked via missing branches + +#### 3. Shaca (Share Cache) + +Located at: `apps/server/src/share/` + +**Responsibilities:** +- Optimized cache for shared/published notes +- Handles public note access without authentication +- Performance-optimized for high-traffic scenarios +- Separate from main Becca to isolate concerns + +### Entity System + +Trilium's data model is based on five core entities: + +``` +┌──────────────────────────────────────────────────────────┐ +│ Note Tree │ +│ │ +│ ┌─────────┐ │ +│ │ Note │ │ +│ │ (BNote) │ │ +│ └────┬────┘ │ +│ │ │ +│ │ linked by │ +│ ▼ │ +│ ┌──────────┐ ┌─────────────┐ │ +│ │ Branch │◄────────│ Attribute │ │ +│ │(BBranch) │ │ (BAttribute)│ │ +│ └──────────┘ └─────────────┘ │ +│ │ │ +│ │ creates │ +│ ▼ │ +│ ┌──────────┐ ┌─────────────┐ │ +│ │ Revision │ │ Attachment │ │ +│ │(BRevision│ │(BAttachment)│ │ +│ └──────────┘ └─────────────┘ │ +│ │ +└──────────────────────────────────────────────────────────┘ +``` + +#### Entity Definitions + +**1. BNote** (`apps/server/src/becca/entities/bnote.ts`) +- Represents a note with title, content, and metadata +- Type can be: text, code, file, image, canvas, mermaid, etc. +- Contains content via blob reference +- Can be protected (encrypted) +- Has creation and modification timestamps + +**2. BBranch** (`apps/server/src/becca/entities/bbranch.ts`) +- Represents parent-child relationship between notes +- Enables note cloning (multiple parents) +- Contains positioning information +- Has optional prefix for customization +- Tracks expansion state in tree + +**3. BAttribute** (`apps/server/src/becca/entities/battribute.ts`) +- Key-value metadata attached to notes +- Two types: labels (tags) and relations (links) +- Can be inheritable to child notes +- Used for search, organization, and scripting +- Supports promoted attributes (displayed prominently) + +**4. BRevision** (`apps/server/src/becca/entities/brevision.ts`) +- Stores historical versions of note content +- Automatic versioning on edits +- Retains title, type, and content +- Enables note history browsing and restoration + +**5. BAttachment** (`apps/server/src/becca/entities/battachment.ts`) +- File attachments linked to notes +- Has owner (note), role, and mime type +- Content stored in blobs +- Can be protected (encrypted) + +**6. BBlob** (`apps/server/src/becca/entities/bblob.ts`) +- Binary large object storage +- Stores actual note content and attachments +- Referenced by notes, revisions, and attachments +- Supports encryption for protected content + +### Widget-Based UI + +The frontend uses a **widget system** for modular, reusable UI components. + +Located at: `apps/client/src/widgets/` + +```typescript +// Widget Hierarchy +BasicWidget +├── NoteContextAwareWidget (responds to note changes) +│ ├── RightPanelWidget (displayed in right sidebar) +│ └── Type-specific widgets +├── Container widgets (tabs, ribbons, etc.) +└── Specialized widgets (search, calendar, etc.) +``` + +**Base Classes:** + +1. **BasicWidget** (`basic_widget.ts`) + - Base class for all UI components + - Lifecycle: construction → rendering → events → destruction + - Handles DOM manipulation + - Event subscription management + - Child widget management + +2. **NoteContextAwareWidget** (`note_context_aware_widget.ts`) + - Extends BasicWidget + - Automatically updates when active note changes + - Accesses current note context + - Used for note-dependent UI + +3. **RightPanelWidget** + - Widgets displayed in right sidebar + - Collapsible sections + - Context-specific tools and information + +**Type-Specific Widgets:** + +Located at: `apps/client/src/widgets/type_widgets/` + +Each note type has a dedicated widget: +- `text_type_widget.ts` - CKEditor integration +- `code_type_widget.ts` - CodeMirror integration +- `file_type_widget.ts` - File preview and download +- `image_type_widget.ts` - Image display and editing +- `canvas_type_widget.ts` - Excalidraw integration +- `mermaid_type_widget.ts` - Diagram rendering +- And more... + +--- + +## Data Layer + +### Database Schema + +Trilium uses **SQLite** as its database engine, managed via `better-sqlite3`. + +Schema location: `apps/server/src/assets/db/schema.sql` + +**Core Tables:** + +```sql +-- Notes: Core content storage +notes ( + noteId, title, isProtected, type, mime, + blobId, isDeleted, dateCreated, dateModified +) + +-- Branches: Tree relationships +branches ( + branchId, noteId, parentNoteId, notePosition, + prefix, isExpanded, isDeleted +) + +-- Attributes: Metadata +attributes ( + attributeId, noteId, type, name, value, + position, isInheritable, isDeleted +) + +-- Revisions: Version history +revisions ( + revisionId, noteId, type, mime, title, + blobId, utcDateLastEdited +) + +-- Attachments: File attachments +attachments ( + attachmentId, ownerId, role, mime, title, + blobId, isProtected, isDeleted +) + +-- Blobs: Binary content +blobs ( + blobId, content, dateModified +) + +-- Options: Application settings +options ( + name, value, isSynced +) + +-- Entity Changes: Sync tracking +entity_changes ( + entityName, entityId, hash, changeId, + isSynced, utcDateChanged +) +``` + +### Data Access Patterns + +**Direct SQL:** +```typescript +// apps/server/src/services/sql.ts +sql.getRows("SELECT * FROM notes WHERE type = ?", ['text']) +sql.execute("UPDATE notes SET title = ? WHERE noteId = ?", [title, noteId]) +``` + +**Through Becca:** +```typescript +// Recommended approach - uses cache +const note = becca.getNote('noteId') +note.title = 'New Title' +note.save() +``` + +**Through Froca (Frontend):** +```typescript +// Read-only access +const note = froca.getNote('noteId') +console.log(note.title) +``` + +### Database Migrations + +Migration system: `apps/server/src/migrations/` + +- Sequential numbered files (e.g., `XXXX_migration_name.sql`) +- Automatic execution on version upgrade +- Schema version tracked in options table +- Both SQL and JavaScript migrations supported + +--- + +## Caching System + +### Cache Initialization + +**Backend (Becca):** +```typescript +// On server startup +await becca_loader.load() // Loads all entities into memory +becca.loaded = true +``` + +**Frontend (Froca):** +```typescript +// On app initialization +await froca.loadInitialTree() // Loads root and visible notes +// Lazy load on demand +const note = await froca.getNote(noteId) // Triggers load if not cached +``` + +### Cache Invalidation + +**Server-Side:** +- Entities automatically update cache on save +- WebSocket broadcasts changes to all clients +- Synchronization updates trigger cache refresh + +**Client-Side:** +- WebSocket listeners update Froca +- Manual reload via `froca.loadSubTree(noteId)` +- Full reload on protected session changes + +### Cache Consistency + +**Entity Change Tracking:** +```typescript +// Every entity modification tracked +entity_changes ( + entityName: 'notes', + entityId: 'note123', + hash: 'abc...', + changeId: 'change456', + utcDateChanged: '2025-11-02...' +) +``` + +**Sync Protocol:** +1. Client requests changes since last sync +2. Server returns entity_changes records +3. Client applies changes to Froca +4. Client sends local changes to server +5. Server updates Becca and database + +--- + +## Frontend Architecture + +### Application Entry Point + +**Desktop:** `apps/client/src/desktop.ts` +**Web:** `apps/client/src/index.ts` + +### Service Layer + +Located at: `apps/client/src/services/` + +Key services: +- `froca.ts` - Frontend cache +- `server.ts` - API communication +- `ws.ts` - WebSocket connection +- `tree_service.ts` - Note tree management +- `note_context.ts` - Active note tracking +- `protected_session.ts` - Encryption key management +- `link.ts` - Note linking and navigation +- `export.ts` - Note export functionality + +### UI Components + +**Main Layout:** +``` +┌──────────────────────────────────────────────────────┐ +│ Title Bar │ +├──────────┬────────────────────────┬──────────────────┤ +│ │ │ │ +│ Note │ Note Detail │ Right Panel │ +│ Tree │ Editor │ (Info, Links) │ +│ │ │ │ +│ │ │ │ +├──────────┴────────────────────────┴──────────────────┤ +│ Status Bar │ +└──────────────────────────────────────────────────────┘ +``` + +**Component Locations:** +- `widgets/containers/` - Layout containers +- `widgets/buttons/` - Toolbar buttons +- `widgets/dialogs/` - Modal dialogs +- `widgets/ribbon_widgets/` - Tab widgets +- `widgets/type_widgets/` - Note type editors + +### Event System + +**Application Events:** +```typescript +// Subscribe to events +appContext.addBeforeUnloadListener(() => { + // Cleanup before page unload +}) + +// Trigger events +appContext.trigger('noteTreeLoaded') +``` + +**Note Context Events:** +```typescript +// NoteContextAwareWidget automatically receives: +- noteSwitched() +- noteChanged() +- refresh() +``` + +### State Management + +Trilium uses **custom state management** rather than Redux/MobX: + +- `note_context.ts` - Active note and context +- `froca.ts` - Entity cache +- Component local state +- URL parameters for shareable state + +--- + +## Backend Architecture + +### Application Entry Point + +Location: `apps/server/src/main.ts` + +**Startup Sequence:** +1. Load configuration +2. Initialize database +3. Run migrations +4. Load Becca cache +5. Start Express server +6. Initialize WebSocket +7. Start scheduled tasks + +### Service Layer + +Located at: `apps/server/src/services/` + +**Core Services:** + +- **Notes Management** + - `notes.ts` - CRUD operations + - `note_contents.ts` - Content handling + - `note_types.ts` - Type-specific logic + - `cloning.ts` - Note cloning/multi-parent + +- **Tree Operations** + - `tree.ts` - Tree structure management + - `branches.ts` - Branch operations + - `consistency_checks.ts` - Tree integrity + +- **Search** + - `search/search.ts` - Main search engine + - `search/expressions/` - Search expression parsing + - `search/services/` - Search utilities + +- **Sync** + - `sync.ts` - Synchronization protocol + - `sync_update.ts` - Update handling + - `sync_mutex.ts` - Concurrency control + +- **Scripting** + - `backend_script_api.ts` - Backend script API + - `script_context.ts` - Script execution context + +- **Import/Export** + - `import/` - Various import formats + - `export/` - Export to different formats + - `zip.ts` - Archive handling + +- **Security** + - `encryption.ts` - Note encryption + - `protected_session.ts` - Session management + - `password.ts` - Password handling + +### Route Structure + +Located at: `apps/server/src/routes/` + +``` +routes/ +├── index.ts # Route registration +├── api/ # REST API endpoints +│ ├── notes.ts +│ ├── branches.ts +│ ├── attributes.ts +│ ├── search.ts +│ ├── login.ts +│ └── ... +└── custom/ # Special endpoints + ├── setup.ts + ├── share.ts + └── ... +``` + +**API Endpoint Pattern:** +```typescript +router.get('/api/notes/:noteId', (req, res) => { + const noteId = req.params.noteId + const note = becca.getNote(noteId) + res.json(note.getPojoWithContent()) +}) +``` + +### Middleware + +Key middleware components: +- `auth.ts` - Authentication +- `csrf.ts` - CSRF protection +- `request_context.ts` - Request-scoped data +- `error_handling.ts` - Error responses + +--- + +## API Architecture + +### Internal API + +**REST Endpoints** (`/api/*`) + +Used by the frontend for all operations: + +**Note Operations:** +- `GET /api/notes/:noteId` - Get note +- `POST /api/notes/:noteId/content` - Update content +- `PUT /api/notes/:noteId` - Update metadata +- `DELETE /api/notes/:noteId` - Delete note + +**Tree Operations:** +- `GET /api/tree` - Get note tree +- `POST /api/branches` - Create branch +- `PUT /api/branches/:branchId` - Update branch +- `DELETE /api/branches/:branchId` - Delete branch + +**Search:** +- `GET /api/search?query=...` - Search notes +- `GET /api/search-note/:noteId` - Execute search note + +### ETAPI (External API) + +Located at: `apps/server/src/etapi/` + +**Purpose:** Third-party integrations and automation + +**Authentication:** Token-based (ETAPI tokens) + +**OpenAPI Spec:** Auto-generated + +**Key Endpoints:** +- `/etapi/notes` - Note CRUD +- `/etapi/branches` - Branch management +- `/etapi/attributes` - Attribute operations +- `/etapi/attachments` - Attachment handling + +**Example:** +```bash +curl -H "Authorization: YOUR_TOKEN" \ + https://trilium.example.com/etapi/notes/noteId +``` + +### WebSocket API + +Located at: `apps/server/src/services/ws.ts` + +**Purpose:** Real-time updates and synchronization + +**Protocol:** WebSocket (Socket.IO-like custom protocol) + +**Message Types:** +- `sync` - Synchronization request +- `entity-change` - Entity update notification +- `refresh-tree` - Tree structure changed +- `open-note` - Open note in UI + +**Client Subscribe:** +```typescript +ws.subscribe('entity-change', (data) => { + froca.processEntityChange(data) +}) +``` + +--- + +## Build System + +### Package Manager: pnpm + +**Why pnpm:** +- Fast, disk-efficient +- Strict dependency isolation +- Native monorepo support via workspaces +- Patch package support + +**Workspace Configuration:** +```yaml +# pnpm-workspace.yaml +packages: + - 'apps/*' + - 'packages/*' +``` + +### Build Tools + +**Vite** (Development & Production) +- Fast HMR for development +- Optimized production builds +- Asset handling +- Plugin ecosystem + +**ESBuild** (TypeScript compilation) +- Fast TypeScript transpilation +- Bundling support +- Minification + +**TypeScript** +- Project references for monorepo +- Strict type checking +- Shared `tsconfig.base.json` + +### Build Scripts + +**Root `package.json` scripts:** +```json +{ + "server:start": "pnpm run --filter server dev", + "server:build": "pnpm run --filter server build", + "client:build": "pnpm run --filter client build", + "desktop:build": "pnpm run --filter desktop build", + "test:all": "pnpm test:parallel && pnpm test:sequential" +} +``` + +### Build Process + +**Development:** +```bash +pnpm install # Install dependencies +pnpm server:start # Start dev server (port 8080) +# or +pnpm desktop:start # Start Electron dev +``` + +**Production (Server):** +```bash +pnpm server:build # Build server + client +node apps/server/dist/main.js +``` + +**Production (Desktop):** +```bash +pnpm desktop:build # Build Electron app +# Creates distributable in apps/desktop/out/make/ +``` + +**Docker:** +```bash +docker build -t trilium . +docker run -p 8080:8080 trilium +``` + +### Asset Pipeline + +**Client Assets:** +- Entry: `apps/client/src/index.html` +- Bundled by Vite +- Output: `apps/client/dist/` + +**Server Static:** +- Serves client assets in production +- Public directory: `apps/server/public/` + +**Desktop:** +- Packages client assets +- Electron main process: `apps/desktop/src/main.ts` +- Electron renderer: loads client app + +--- + +## Testing Strategy + +### Test Organization + +**Parallel Tests** (can run simultaneously): +- Client tests +- Package tests +- E2E tests (isolated databases) + +**Sequential Tests** (shared resources): +- Server tests (shared database) +- CKEditor plugin tests + +### Test Frameworks + +- **Vitest** - Unit and integration tests +- **Playwright** - E2E tests +- **Happy-DOM** - DOM testing environment + +### Running Tests + +```bash +pnpm test:all # All tests +pnpm test:parallel # Fast parallel tests +pnpm test:sequential # Sequential tests only +pnpm coverage # With coverage reports +``` + +### Test Locations + +``` +apps/ +├── server/ +│ └── src/**/*.spec.ts # Server tests +├── client/ +│ └── src/**/*.spec.ts # Client tests +└── server-e2e/ + └── tests/**/*.spec.ts # E2E tests +``` + +### E2E Testing + +**Server E2E:** +- Tests full REST API +- Tests WebSocket functionality +- Tests sync protocol + +**Desktop E2E:** +- Playwright with Electron +- Tests full desktop app +- Screenshot comparison + +--- + +## Security Architecture + +### Encryption System + +**Per-Note Encryption:** +- Notes can be individually protected +- AES-256 encryption +- Password-derived encryption key (PBKDF2) +- Separate protected session management + +**Protected Session:** +- Time-limited access to protected notes +- Automatic timeout +- Re-authentication required +- Frontend: `protected_session.ts` +- Backend: `protected_session.ts` + +### Authentication + +**Password Auth:** +- PBKDF2 key derivation +- Salt per installation +- Hash verification + +**OpenID Connect:** +- External identity provider support +- OAuth 2.0 flow +- Configurable providers + +**TOTP (2FA):** +- Time-based one-time passwords +- QR code setup +- Backup codes + +### Authorization + +**Single-User Model:** +- Desktop: single user (owner) +- Server: single user per installation + +**Share Notes:** +- Public access without authentication +- Separate Shaca cache +- Read-only access + +### CSRF Protection + +**CSRF Tokens:** +- Required for state-changing operations +- Token in header or cookie +- Validation middleware + +### Input Sanitization + +**XSS Prevention:** +- DOMPurify for HTML sanitization +- CKEditor content filtering +- CSP headers + +**SQL Injection:** +- Parameterized queries only +- Better-sqlite3 prepared statements +- No string concatenation in SQL + +### Dependency Security + +**Vulnerability Scanning:** +- Renovate bot for updates +- npm audit integration +- Override vulnerable sub-dependencies + +--- + +## Related Documentation + +### User Documentation +- [User Guide](User%20Guide/User%20Guide/) - End-user features and usage +- [Installation Guide](User%20Guide/User%20Guide/Installation%20&%20Setup/) +- [Basic Concepts](User%20Guide/User%20Guide/Basic%20Concepts%20and%20Features/) + +### Developer Documentation +- [Developer Guide](Developer%20Guide/Developer%20Guide/) - Development setup +- [Environment Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) +- [Project Structure](Developer%20Guide/Developer%20Guide/Project%20Structure.md) +- [Adding Note Types](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Adding%20a%20new%20note%20type/) +- [Database Schema](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Database/) + +### API Documentation +- [Script API](Script%20API/) - User scripting API +- [ETAPI Documentation](https://triliumnext.github.io/Docs/Wiki/etapi) - External API + +### Additional Resources +- [CLAUDE.md](../CLAUDE.md) - AI assistant guidance +- [README.md](../README.md) - Project overview +- [SECURITY.md](../SECURITY.md) - Security policy + +--- + +## Appendices + +### Glossary + +- **Becca**: Backend Cache - server-side entity cache +- **Froca**: Frontend Cache - client-side entity mirror +- **Shaca**: Share Cache - cache for public shared notes +- **ETAPI**: External API for third-party integrations +- **Protected Note**: Encrypted note requiring password +- **Clone**: Note with multiple parent branches +- **Branch**: Parent-child relationship between notes +- **Attribute**: Metadata (label or relation) attached to note +- **Blob**: Binary large object containing note content + +### File Naming Conventions + +- `BEntity` - Backend entity (e.g., BNote, BBranch) +- `FEntity` - Frontend entity (e.g., FNote, FBranch) +- `*_widget.ts` - Widget classes +- `*_service.ts` - Service modules +- `*.spec.ts` - Test files +- `XXXX_*.sql` - Migration files + +### Architecture Decision Records + +For historical context on major architectural decisions, see: +- Migration to TypeScript monorepo +- Adoption of pnpm workspaces +- CKEditor 5 upgrade +- Entity change tracking system + +--- + +**Document Maintainer:** TriliumNext Team +**Last Review:** November 2025 +**Next Review:** When major architectural changes occur diff --git a/docs/DATABASE.md b/docs/DATABASE.md new file mode 100644 index 000000000..d02452f21 --- /dev/null +++ b/docs/DATABASE.md @@ -0,0 +1,736 @@ +# Trilium Database Architecture + +> **Related:** [ARCHITECTURE.md](ARCHITECTURE.md) | [Database Schema](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Database/) + +## Overview + +Trilium uses **SQLite** as its embedded database engine, providing a reliable, file-based storage system that requires no separate database server. The database stores all notes, their relationships, metadata, and configuration. + +## Database File + +**Location:** +- Desktop: `~/.local/share/trilium-data/document.db` (Linux/Mac) or `%APPDATA%/trilium-data/document.db` (Windows) +- Server: Configured via `TRILIUM_DATA_DIR` environment variable +- Docker: Mounted volume at `/home/node/trilium-data/` + +**Characteristics:** +- Single-file database +- Embedded (no server required) +- ACID compliant +- Cross-platform +- Supports up to 281 TB database size +- Efficient for 100k+ notes + +## Database Driver + +**Library:** `better-sqlite3` + +**Why better-sqlite3:** +- Native performance (C++ bindings) +- Synchronous API (simpler code) +- Prepared statements +- Transaction support +- Type safety + +**Usage:** +```typescript +// apps/server/src/services/sql.ts +import Database from 'better-sqlite3' + +const db = new Database('document.db') +const stmt = db.prepare('SELECT * FROM notes WHERE noteId = ?') +const note = stmt.get(noteId) +``` + +## Schema Overview + +Schema location: `apps/server/src/assets/db/schema.sql` + +**Entity Tables:** +- `notes` - Core note data +- `branches` - Tree relationships +- `attributes` - Metadata (labels/relations) +- `revisions` - Version history +- `attachments` - File attachments +- `blobs` - Binary content storage + +**System Tables:** +- `options` - Application configuration +- `entity_changes` - Change tracking for sync +- `recent_notes` - Recently accessed notes +- `etapi_tokens` - API authentication tokens +- `user_data` - User credentials +- `sessions` - Web session storage + +## Entity Tables + +### Notes Table + +```sql +CREATE TABLE notes ( + noteId TEXT NOT NULL PRIMARY KEY, + title TEXT NOT NULL DEFAULT "note", + isProtected INT NOT NULL DEFAULT 0, + type TEXT NOT NULL DEFAULT 'text', + mime TEXT NOT NULL DEFAULT 'text/html', + blobId TEXT DEFAULT NULL, + isDeleted INT NOT NULL DEFAULT 0, + deleteId TEXT DEFAULT NULL, + dateCreated TEXT NOT NULL, + dateModified TEXT NOT NULL, + utcDateCreated TEXT NOT NULL, + utcDateModified TEXT NOT NULL +); + +-- Indexes for performance +CREATE INDEX IDX_notes_title ON notes (title); +CREATE INDEX IDX_notes_type ON notes (type); +CREATE INDEX IDX_notes_dateCreated ON notes (dateCreated); +CREATE INDEX IDX_notes_dateModified ON notes (dateModified); +CREATE INDEX IDX_notes_utcDateModified ON notes (utcDateModified); +CREATE INDEX IDX_notes_blobId ON notes (blobId); +``` + +**Field Descriptions:** + +| Field | Type | Description | +|-------|------|-------------| +| `noteId` | TEXT | Unique identifier (UUID or custom) | +| `title` | TEXT | Note title (displayed in tree) | +| `isProtected` | INT | 1 if encrypted, 0 if not | +| `type` | TEXT | Note type: text, code, file, image, etc. | +| `mime` | TEXT | MIME type: text/html, application/json, etc. | +| `blobId` | TEXT | Reference to content in blobs table | +| `isDeleted` | INT | Soft delete flag | +| `deleteId` | TEXT | Unique delete operation ID | +| `dateCreated` | TEXT | Creation date (local timezone) | +| `dateModified` | TEXT | Last modified (local timezone) | +| `utcDateCreated` | TEXT | Creation date (UTC) | +| `utcDateModified` | TEXT | Last modified (UTC) | + +**Note Types:** +- `text` - Rich text with HTML +- `code` - Source code +- `file` - Binary file +- `image` - Image file +- `search` - Saved search +- `render` - Custom HTML rendering +- `relation-map` - Relationship diagram +- `canvas` - Excalidraw drawing +- `mermaid` - Mermaid diagram +- `book` - Container for documentation +- `web-view` - Embedded web page +- `mindmap` - Mind map +- `geomap` - Geographical map + +### Branches Table + +```sql +CREATE TABLE branches ( + branchId TEXT NOT NULL PRIMARY KEY, + noteId TEXT NOT NULL, + parentNoteId TEXT NOT NULL, + notePosition INTEGER NOT NULL, + prefix TEXT, + isExpanded INTEGER NOT NULL DEFAULT 0, + isDeleted INTEGER NOT NULL DEFAULT 0, + deleteId TEXT DEFAULT NULL, + utcDateModified TEXT NOT NULL +); + +-- Indexes +CREATE INDEX IDX_branches_noteId_parentNoteId ON branches (noteId, parentNoteId); +CREATE INDEX IDX_branches_parentNoteId ON branches (parentNoteId); +``` + +**Field Descriptions:** + +| Field | Type | Description | +|-------|------|-------------| +| `branchId` | TEXT | Unique identifier for this branch | +| `noteId` | TEXT | Child note ID | +| `parentNoteId` | TEXT | Parent note ID | +| `notePosition` | INT | Sort order among siblings | +| `prefix` | TEXT | Optional prefix text (e.g., "Chapter 1:") | +| `isExpanded` | INT | Tree expansion state | +| `isDeleted` | INT | Soft delete flag | +| `deleteId` | TEXT | Delete operation ID | +| `utcDateModified` | TEXT | Last modified (UTC) | + +**Key Concepts:** +- **Cloning:** A note can have multiple branches (multiple parents) +- **Position:** Siblings ordered by `notePosition` +- **Prefix:** Display text before note title in tree +- **Soft Delete:** Allows sync before permanent deletion + +### Attributes Table + +```sql +CREATE TABLE attributes ( + attributeId TEXT NOT NULL PRIMARY KEY, + noteId TEXT NOT NULL, + type TEXT NOT NULL, + name TEXT NOT NULL, + value TEXT DEFAULT '' NOT NULL, + position INT DEFAULT 0 NOT NULL, + utcDateModified TEXT NOT NULL, + isDeleted INT NOT NULL, + deleteId TEXT DEFAULT NULL, + isInheritable INT DEFAULT 0 NULL +); + +-- Indexes +CREATE INDEX IDX_attributes_name_value ON attributes (name, value); +CREATE INDEX IDX_attributes_noteId ON attributes (noteId); +CREATE INDEX IDX_attributes_value ON attributes (value); +``` + +**Field Descriptions:** + +| Field | Type | Description | +|-------|------|-------------| +| `attributeId` | TEXT | Unique identifier | +| `noteId` | TEXT | Note this attribute belongs to | +| `type` | TEXT | 'label' or 'relation' | +| `name` | TEXT | Attribute name | +| `value` | TEXT | Attribute value (text for labels, noteId for relations) | +| `position` | INT | Display order | +| `utcDateModified` | TEXT | Last modified (UTC) | +| `isDeleted` | INT | Soft delete flag | +| `deleteId` | TEXT | Delete operation ID | +| `isInheritable` | INT | Inherited by child notes | + +**Attribute Types:** + +**Labels** (key-value pairs): +```sql +-- Example: #priority=high +INSERT INTO attributes (attributeId, noteId, type, name, value) +VALUES ('attr1', 'note123', 'label', 'priority', 'high') +``` + +**Relations** (links to other notes): +```sql +-- Example: ~author=[[noteId]] +INSERT INTO attributes (attributeId, noteId, type, name, value) +VALUES ('attr2', 'note123', 'relation', 'author', 'author-note-id') +``` + +**Special Attributes:** +- `#run=frontendStartup` - Execute script on frontend load +- `#run=backendStartup` - Execute script on backend load +- `#customWidget` - Custom widget implementation +- `#iconClass` - Custom tree icon +- `#cssClass` - CSS class for note +- `#sorted` - Auto-sort children +- `#hideChildrenOverview` - Don't show child list + +### Revisions Table + +```sql +CREATE TABLE revisions ( + revisionId TEXT NOT NULL PRIMARY KEY, + noteId TEXT NOT NULL, + type TEXT DEFAULT '' NOT NULL, + mime TEXT DEFAULT '' NOT NULL, + title TEXT NOT NULL, + isProtected INT NOT NULL DEFAULT 0, + blobId TEXT DEFAULT NULL, + utcDateLastEdited TEXT NOT NULL, + utcDateCreated TEXT NOT NULL, + utcDateModified TEXT NOT NULL, + dateLastEdited TEXT NOT NULL, + dateCreated TEXT NOT NULL +); + +-- Indexes +CREATE INDEX IDX_revisions_noteId ON revisions (noteId); +CREATE INDEX IDX_revisions_utcDateCreated ON revisions (utcDateCreated); +CREATE INDEX IDX_revisions_utcDateLastEdited ON revisions (utcDateLastEdited); +CREATE INDEX IDX_revisions_blobId ON revisions (blobId); +``` + +**Revision Strategy:** +- Automatic revision created on note modification +- Configurable interval (default: daily max) +- Stores complete note snapshot +- Allows reverting to previous versions +- Can be disabled with `#disableVersioning` + +### Attachments Table + +```sql +CREATE TABLE attachments ( + attachmentId TEXT NOT NULL PRIMARY KEY, + ownerId TEXT NOT NULL, + role TEXT NOT NULL, + mime TEXT NOT NULL, + title TEXT NOT NULL, + isProtected INT NOT NULL DEFAULT 0, + position INT DEFAULT 0 NOT NULL, + blobId TEXT DEFAULT NULL, + dateModified TEXT NOT NULL, + utcDateModified TEXT NOT NULL, + utcDateScheduledForErasureSince TEXT DEFAULT NULL, + isDeleted INT NOT NULL, + deleteId TEXT DEFAULT NULL +); + +-- Indexes +CREATE INDEX IDX_attachments_ownerId_role ON attachments (ownerId, role); +CREATE INDEX IDX_attachments_blobId ON attachments (blobId); +``` + +**Attachment Roles:** +- `file` - Regular file attachment +- `image` - Image file +- `cover-image` - Note cover image +- Custom roles for specific purposes + +### Blobs Table + +```sql +CREATE TABLE blobs ( + blobId TEXT NOT NULL PRIMARY KEY, + content TEXT NULL DEFAULT NULL, + dateModified TEXT NOT NULL, + utcDateModified TEXT NOT NULL +); +``` + +**Blob Usage:** +- Stores actual content (text or binary) +- Referenced by notes, revisions, attachments +- Deduplication via hash-based blobId +- TEXT type stores both text and binary (base64) + +**Content Types:** +- **Text notes:** HTML content +- **Code notes:** Plain text source code +- **Binary notes:** Base64 encoded data +- **Protected notes:** Encrypted content + +## System Tables + +### Options Table + +```sql +CREATE TABLE options ( + name TEXT NOT NULL PRIMARY KEY, + value TEXT NOT NULL, + isSynced INTEGER DEFAULT 0 NOT NULL, + utcDateModified TEXT NOT NULL +); +``` + +**Key Options:** +- `documentId` - Unique installation ID +- `dbVersion` - Schema version +- `syncVersion` - Sync protocol version +- `passwordVerificationHash` - Password verification +- `encryptedDataKey` - Encryption key (encrypted) +- `theme` - UI theme +- Various feature flags and settings + +**Synced Options:** +- `isSynced = 1` - Synced across devices +- `isSynced = 0` - Local to this installation + +### Entity Changes Table + +```sql +CREATE TABLE entity_changes ( + id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, + entityName TEXT NOT NULL, + entityId TEXT NOT NULL, + hash TEXT NOT NULL, + isErased INT NOT NULL, + changeId TEXT NOT NULL, + componentId TEXT NOT NULL, + instanceId TEXT NOT NULL, + isSynced INTEGER NOT NULL, + utcDateChanged TEXT NOT NULL +); + +-- Indexes +CREATE UNIQUE INDEX IDX_entityChanges_entityName_entityId + ON entity_changes (entityName, entityId); +CREATE INDEX IDX_entity_changes_changeId ON entity_changes (changeId); +``` + +**Purpose:** Track all entity modifications for synchronization + +**Entity Types:** +- `notes` +- `branches` +- `attributes` +- `revisions` +- `attachments` +- `options` +- `etapi_tokens` + +### Recent Notes Table + +```sql +CREATE TABLE recent_notes ( + noteId TEXT NOT NULL PRIMARY KEY, + notePath TEXT NOT NULL, + utcDateCreated TEXT NOT NULL +); +``` + +**Purpose:** Track recently accessed notes for quick access + +### Sessions Table + +```sql +CREATE TABLE sessions ( + sid TEXT PRIMARY KEY, + sess TEXT NOT NULL, + expired TEXT NOT NULL +); +``` + +**Purpose:** HTTP session storage for web interface + +### User Data Table + +```sql +CREATE TABLE user_data ( + tmpID INT PRIMARY KEY, + username TEXT, + email TEXT, + userIDEncryptedDataKey TEXT, + userIDVerificationHash TEXT, + salt TEXT, + derivedKey TEXT, + isSetup TEXT DEFAULT "false" +); +``` + +**Purpose:** Store user authentication credentials + +### ETAPI Tokens Table + +```sql +CREATE TABLE etapi_tokens ( + etapiTokenId TEXT PRIMARY KEY NOT NULL, + name TEXT NOT NULL, + tokenHash TEXT NOT NULL, + utcDateCreated TEXT NOT NULL, + utcDateModified TEXT NOT NULL, + isDeleted INT NOT NULL DEFAULT 0 +); +``` + +**Purpose:** API token authentication for external access + +## Data Relationships + +``` + ┌──────────────┐ + │ Notes │ + └───┬──────────┘ + │ + ┌───────────┼───────────┐ + │ │ │ + ▼ ▼ ▼ + ┌────────┐ ┌──────────┐ ┌───────────┐ + │Branches│ │Attributes│ │Attachments│ + └────────┘ └──────────┘ └─────┬─────┘ + │ │ + │ │ + │ ┌──────────┐ │ + └──────▶│ Blobs │◀────────┘ + └──────────┘ + ▲ + │ + ┌────┴─────┐ + │Revisions │ + └──────────┘ +``` + +**Relationships:** +- Notes ↔ Branches (many-to-many via noteId) +- Notes → Attributes (one-to-many) +- Notes → Blobs (one-to-one) +- Notes → Revisions (one-to-many) +- Notes → Attachments (one-to-many) +- Attachments → Blobs (one-to-one) +- Revisions → Blobs (one-to-one) + +## Database Access Patterns + +### Direct SQL Access + +**Location:** `apps/server/src/services/sql.ts` + +```typescript +// Execute query (returns rows) +const notes = sql.getRows('SELECT * FROM notes WHERE type = ?', ['text']) + +// Execute query (returns single row) +const note = sql.getRow('SELECT * FROM notes WHERE noteId = ?', [noteId]) + +// Execute statement (no return) +sql.execute('UPDATE notes SET title = ? WHERE noteId = ?', [title, noteId]) + +// Insert +sql.insert('notes', { + noteId: 'new-note-id', + title: 'New Note', + type: 'text', + // ... +}) + +// Transactions +sql.transactional(() => { + sql.execute('UPDATE ...') + sql.execute('INSERT ...') +}) +``` + +### Entity-Based Access (Recommended) + +**Via Becca Cache:** + +```typescript +// Get entity from cache +const note = becca.getNote(noteId) + +// Modify and save +note.title = 'Updated Title' +note.save() // Writes to database + +// Create new +const newNote = becca.createNote({ + parentNoteId: 'root', + title: 'New Note', + type: 'text', + content: 'Hello World' +}) + +// Delete +note.markAsDeleted() +``` + +## Database Migrations + +**Location:** `apps/server/src/migrations/` + +**Migration Files:** +- Format: `XXXX_migration_name.sql` or `XXXX_migration_name.js` +- Executed in numerical order +- Version tracked in `options.dbVersion` + +**SQL Migration Example:** +```sql +-- 0280_add_new_column.sql +ALTER TABLE notes ADD COLUMN newField TEXT DEFAULT NULL; + +UPDATE options SET value = '280' WHERE name = 'dbVersion'; +``` + +**JavaScript Migration Example:** +```javascript +// 0285_complex_migration.js +module.exports = () => { + const notes = sql.getRows('SELECT * FROM notes WHERE type = ?', ['old-type']) + + for (const note of notes) { + sql.execute('UPDATE notes SET type = ? WHERE noteId = ?', + ['new-type', note.noteId]) + } +} +``` + +**Migration Process:** +1. Server checks `dbVersion` on startup +2. Compares with latest migration number +3. Executes pending migrations in order +4. Updates `dbVersion` after each +5. Restarts if migrations ran + +## Database Maintenance + +### Backup + +**Full Backup:** +```bash +# Copy database file +cp document.db document.db.backup + +# Or use Trilium's backup feature +# Settings → Backup +``` + +**Automatic Backups:** +- Daily backup (configurable) +- Stored in `backup/` directory +- Retention policy (keep last N backups) + +### Vacuum + +**Purpose:** Reclaim unused space, defragment + +```sql +VACUUM; +``` + +**When to vacuum:** +- After deleting many notes +- Database file size larger than expected +- Performance degradation + +### Integrity Check + +```sql +PRAGMA integrity_check; +``` + +**Result:** "ok" or list of errors + +### Consistency Checks + +**Built-in Consistency Checks:** + +Location: `apps/server/src/services/consistency_checks.ts` + +- Orphaned branches +- Missing parent notes +- Circular dependencies +- Invalid entity references +- Blob reference integrity + +**Run Checks:** +```typescript +// Via API +POST /api/consistency-check + +// Or from backend script +api.runConsistencyChecks() +``` + +## Performance Optimization + +### Indexes + +**Existing Indexes:** +- `notes.title` - Fast title searches +- `notes.type` - Filter by type +- `notes.dateCreated/Modified` - Time-based queries +- `branches.noteId_parentNoteId` - Tree navigation +- `attributes.name_value` - Attribute searches + +**Query Optimization:** +```sql +-- Use indexed columns in WHERE clause +SELECT * FROM notes WHERE type = 'text' -- Uses index + +-- Avoid functions on indexed columns +SELECT * FROM notes WHERE LOWER(title) = 'test' -- No index + +-- Better +SELECT * FROM notes WHERE title = 'Test' -- Uses index +``` + +### Connection Settings + +```typescript +// apps/server/src/services/sql.ts +const db = new Database('document.db', { + // Enable WAL mode for better concurrency + verbose: console.log +}) + +db.pragma('journal_mode = WAL') +db.pragma('synchronous = NORMAL') +db.pragma('cache_size = -64000') // 64MB cache +db.pragma('temp_store = MEMORY') +``` + +**WAL Mode Benefits:** +- Better concurrency (readers don't block writers) +- Faster commits +- More robust + +### Query Performance + +**Use EXPLAIN QUERY PLAN:** +```sql +EXPLAIN QUERY PLAN +SELECT * FROM notes +WHERE type = 'text' + AND dateCreated > '2025-01-01' +``` + +**Analyze slow queries:** +- Check index usage +- Avoid SELECT * +- Use prepared statements +- Batch operations in transactions + +## Database Size Management + +**Typical Sizes:** +- 1,000 notes: ~5-10 MB +- 10,000 notes: ~50-100 MB +- 100,000 notes: ~500 MB - 1 GB + +**Size Reduction Strategies:** + +1. **Delete old revisions** +2. **Remove large attachments** +3. **Vacuum database** +4. **Compact blobs** +5. **Archive old notes** + +**Blob Deduplication:** +- Blobs identified by content hash +- Identical content shares one blob +- Automatic deduplication on insert + +## Security Considerations + +### Protected Notes Encryption + +**Encryption Process:** +```typescript +// Encrypt blob content +const encryptedContent = encrypt(content, dataKey) +blob.content = encryptedContent + +// Store encrypted +sql.insert('blobs', { blobId, content: encryptedContent }) +``` + +**Encryption Details:** +- Algorithm: AES-256-CBC +- Key derivation: PBKDF2 (10,000 iterations) +- Per-note encryption +- Master key encrypted with user password + +### SQL Injection Prevention + +**Always use parameterized queries:** +```typescript +// GOOD - Safe from SQL injection +sql.execute('SELECT * FROM notes WHERE title = ?', [userInput]) + +// BAD - Vulnerable to SQL injection +sql.execute(`SELECT * FROM notes WHERE title = '${userInput}'`) +``` + +### Database File Protection + +**File Permissions:** +- Owner read/write only +- No group/other access +- Located in user-specific directory + +--- + +**See Also:** +- [ARCHITECTURE.md](ARCHITECTURE.md) - Overall architecture +- [Database Schema Files](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Database/) +- [Migration Scripts](../apps/server/src/migrations/) diff --git a/docs/README.md b/docs/README.md index be65024ee..ea2fdd378 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,4 +1,17 @@ -# Trilium Notes +# Trilium Notes Documentation + +## 📚 Technical Documentation + +**NEW:** Comprehensive technical and architectural documentation is now available! + +- **[Technical Documentation Index](TECHNICAL_DOCUMENTATION.md)** - Complete index to all technical docs +- **[Architecture Overview](ARCHITECTURE.md)** - System design and core patterns +- **[Database Architecture](DATABASE.md)** - Complete database documentation +- **[Synchronization](SYNCHRONIZATION.md)** - Sync protocol and implementation +- **[Scripting System](SCRIPTING.md)** - User scripting guide and API +- **[Security Architecture](SECURITY_ARCHITECTURE.md)** - Security implementation details + +## 📖 User Documentation Please see the [main documentation](index.md) or visit one of our translated versions: @@ -9,4 +22,11 @@ Please see the [main documentation](index.md) or visit one of our translated ver - [简体中文](README-ZH_CN.md) - [繁體中文](README-ZH_TW.md) +## 🔧 Developer Documentation + +- [Developer Guide](Developer%20Guide/Developer%20Guide/) - Development environment and contribution guide +- [Script API](Script%20API/) - Complete scripting API reference + +## 🔗 Additional Resources + For the full application README, please visit our [GitHub repository](https://github.com/triliumnext/trilium). \ No newline at end of file diff --git a/docs/SCRIPTING.md b/docs/SCRIPTING.md new file mode 100644 index 000000000..49e548c50 --- /dev/null +++ b/docs/SCRIPTING.md @@ -0,0 +1,734 @@ +# Trilium Scripting System + +> **Related:** [ARCHITECTURE.md](ARCHITECTURE.md) | [Script API Documentation](Script%20API/) + +## Overview + +Trilium features a **powerful scripting system** that allows users to extend and customize the application without modifying source code. Scripts are written in JavaScript and can execute both in the **frontend (browser)** and **backend (Node.js)** contexts. + +## Script Types + +### Frontend Scripts + +**Location:** Attached to notes with `#run=frontendStartup` attribute + +**Execution Context:** Browser environment + +**Access:** +- Trilium Frontend API +- Browser APIs (DOM, localStorage, etc.) +- Froca (frontend cache) +- UI widgets +- No direct file system access + +**Lifecycle:** +- `frontendStartup` - Run once when Trilium loads +- `frontendReload` - Run on every note context change + +**Example:** +```javascript +// Attach to note with #run=frontendStartup +const api = window.api + +// Add custom button to toolbar +api.addButtonToToolbar({ + title: 'My Button', + icon: 'star', + action: () => { + api.showMessage('Hello from frontend!') + } +}) +``` + +### Backend Scripts + +**Location:** Attached to notes with `#run=backendStartup` attribute + +**Execution Context:** Node.js server environment + +**Access:** +- Trilium Backend API +- Node.js APIs (fs, http, etc.) +- Becca (backend cache) +- Database (SQL) +- External libraries (via require) + +**Lifecycle:** +- `backendStartup` - Run once when server starts +- Event handlers (custom events) + +**Example:** +```javascript +// Attach to note with #run=backendStartup +const api = require('@triliumnext/api') + +// Listen for note creation +api.dayjs // Example: access dayjs library + +api.onNoteCreated((note) => { + if (note.title.includes('TODO')) { + note.setLabel('priority', 'high') + } +}) +``` + +### Render Scripts + +**Location:** Attached to notes with `#customWidget` or similar attributes + +**Purpose:** Custom note rendering/widgets + +**Example:** +```javascript +// Custom widget for a note +class MyWidget extends api.NoteContextAwareWidget { + doRender() { + this.$widget = $('
') + .text('Custom widget content') + return this.$widget + } +} + +module.exports = MyWidget +``` + +## Script API + +### Frontend API + +**Location:** `apps/client/src/services/frontend_script_api.ts` + +**Global Access:** `window.api` + +**Key Methods:** + +```typescript +// Note Operations +api.getNote(noteId) // Get note object +api.getBranch(branchId) // Get branch object +api.getActiveNote() // Currently displayed note +api.openNote(noteId, activateNote) // Open note in UI + +// UI Operations +api.showMessage(message) // Show toast notification +api.showDialog() // Show modal dialog +api.confirm(message) // Show confirmation dialog +api.prompt(message, defaultValue) // Show input prompt + +// Tree Operations +api.getTree() // Get note tree structure +api.expandTree(noteId) // Expand tree branch +api.collapseTree(noteId) // Collapse tree branch + +// Search +api.searchForNotes(searchQuery) // Search notes +api.searchForNote(searchQuery) // Get single note + +// Navigation +api.openTabWithNote(noteId) // Open note in new tab +api.closeActiveTab() // Close current tab +api.activateNote(noteId) // Switch to note + +// Attributes +api.getAttribute(noteId, type, name) // Get attribute +api.getAttributes(noteId, type, name) // Get all matching attributes + +// Custom Widgets +api.addButtonToToolbar(def) // Add toolbar button +api.addCustomWidget(def) // Add custom widget + +// Events +api.runOnNoteOpened(callback) // Note opened event +api.runOnNoteContentChange(callback) // Content changed event + +// Utilities +api.dayjs // Date/time library +api.formatDate(date) // Format date +api.log(message) // Console log +``` + +### Backend API + +**Location:** `apps/server/src/services/backend_script_api.ts` + +**Access:** `require('@triliumnext/api')` or global `api` + +**Key Methods:** + +```typescript +// Note Operations +api.getNote(noteId) // Get note from Becca +api.getNoteWithContent(noteId) // Get note with content +api.createNote(parentNoteId, title) // Create new note +api.deleteNote(noteId) // Delete note + +// Branch Operations +api.getBranch(branchId) // Get branch +api.createBranch(noteId, parentNoteId) // Create branch (clone) + +// Attribute Operations +api.getAttribute(noteId, type, name) // Get attribute +api.createAttribute(noteId, type, name, value) // Create attribute + +// Database Access +api.sql.getRow(query, params) // Execute SQL query (single row) +api.sql.getRows(query, params) // Execute SQL query (multiple rows) +api.sql.execute(query, params) // Execute SQL statement + +// Events +api.onNoteCreated(callback) // Note created event +api.onNoteUpdated(callback) // Note updated event +api.onNoteDeleted(callback) // Note deleted event +api.onAttributeCreated(callback) // Attribute created event + +// Search +api.searchForNotes(searchQuery) // Search notes + +// Date/Time +api.dayjs // Date/time library +api.now() // Current date/time + +// Logging +api.log(message) // Log message +api.error(message) // Log error + +// External Communication +api.axios // HTTP client library + +// Utilities +api.backup.backupNow() // Trigger backup +api.export.exportSubtree(noteId) // Export notes +``` + +## Script Attributes + +### Execute Attributes + +- `#run=frontendStartup` - Execute on frontend startup +- `#run=backendStartup` - Execute on backend startup +- `#run=hourly` - Execute every hour +- `#run=daily` - Execute daily + +### Widget Attributes + +- `#customWidget` - Custom note widget +- `#widget` - Standard widget integration + +### Other Attributes + +- `#disableVersioning` - Disable automatic versioning for this note +- `#hideChildrenOverview` - Hide children in overview +- `#iconClass` - Custom icon for note + +## Entity Classes + +### Frontend Entities + +**FNote** (`apps/client/src/entities/fnote.ts`) + +```typescript +class FNote { + noteId: string + title: string + type: string + mime: string + + // Relationships + getParentNotes(): FNote[] + getChildNotes(): FNote[] + getBranches(): FBranch[] + + // Attributes + getAttribute(type, name): FAttribute + getAttributes(type?, name?): FAttribute[] + hasLabel(name): boolean + getLabelValue(name): string + + // Content + getContent(): Promise + + // Navigation + open(): void +} +``` + +**FBranch** + +```typescript +class FBranch { + branchId: string + noteId: string + parentNoteId: string + prefix: string + notePosition: number + + getNote(): FNote + getParentNote(): FNote +} +``` + +**FAttribute** + +```typescript +class FAttribute { + attributeId: string + noteId: string + type: 'label' | 'relation' + name: string + value: string + + getNote(): FNote + getTargetNote(): FNote // For relations +} +``` + +### Backend Entities + +**BNote** (`apps/server/src/becca/entities/bnote.ts`) + +```typescript +class BNote { + noteId: string + title: string + type: string + mime: string + isProtected: boolean + + // Content + getContent(): string | Buffer + setContent(content: string | Buffer): void + + // Relationships + getParentNotes(): BNote[] + getChildNotes(): BNote[] + getBranches(): BBranch[] + + // Attributes + getAttribute(type, name): BAttribute + getAttributes(type?, name?): BAttribute[] + setLabel(name, value): BAttribute + setRelation(name, targetNoteId): BAttribute + hasLabel(name): boolean + getLabelValue(name): string + + // Operations + save(): void + markAsDeleted(): void +} +``` + +**BBranch** + +```typescript +class BBranch { + branchId: string + noteId: string + parentNoteId: string + prefix: string + notePosition: number + + getNote(): BNote + getParentNote(): BNote + save(): void +} +``` + +**BAttribute** + +```typescript +class BAttribute { + attributeId: string + noteId: string + type: 'label' | 'relation' + name: string + value: string + + getNote(): BNote + getTargetNote(): BNote // For relations + save(): void +} +``` + +## Script Examples + +### Frontend Examples + +**1. Custom Toolbar Button** + +```javascript +// #run=frontendStartup +api.addButtonToToolbar({ + title: 'Export to PDF', + icon: 'file-export', + action: async () => { + const note = api.getActiveNote() + if (note) { + await api.runOnBackend('exportToPdf', [note.noteId]) + api.showMessage('Export started') + } + } +}) +``` + +**2. Auto-Save Reminder** + +```javascript +// #run=frontendStartup +let saveTimer +api.runOnNoteContentChange(() => { + clearTimeout(saveTimer) + saveTimer = setTimeout(() => { + api.showMessage('Remember to save your work!') + }, 300000) // 5 minutes +}) +``` + +**3. Note Statistics Widget** + +```javascript +// #customWidget +class StatsWidget extends api.NoteContextAwareWidget { + doRender() { + this.$widget = $('
') + return this.$widget + } + + async refreshWithNote(note) { + const content = await note.getContent() + const words = content.split(/\s+/).length + const chars = content.length + + this.$widget.html(` +
Words: ${words}
+
Characters: ${chars}
+ `) + } +} + +module.exports = StatsWidget +``` + +### Backend Examples + +**1. Auto-Tagging on Note Creation** + +```javascript +// #run=backendStartup +api.onNoteCreated((note) => { + // Auto-tag TODO notes + if (note.title.includes('TODO')) { + note.setLabel('type', 'todo') + note.setLabel('priority', 'normal') + } + + // Auto-tag meeting notes by date + if (note.title.match(/Meeting \d{4}-\d{2}-\d{2}/)) { + note.setLabel('type', 'meeting') + const dateMatch = note.title.match(/(\d{4}-\d{2}-\d{2})/) + if (dateMatch) { + note.setLabel('date', dateMatch[1]) + } + } +}) +``` + +**2. Daily Backup Reminder** + +```javascript +// #run=daily +const todayNote = api.getTodayNote() +todayNote.setLabel('backupDone', 'false') + +// Create reminder note +api.createNote(todayNote.noteId, '🔔 Backup Reminder', { + content: 'Remember to verify today\'s backup!', + type: 'text' +}) +``` + +**3. External API Integration** + +```javascript +// #run=backendStartup +api.onNoteCreated(async (note) => { + // Sync new notes to external service + if (note.hasLabel('sync-external')) { + try { + await api.axios.post('https://external-api.com/sync', { + noteId: note.noteId, + title: note.title, + content: note.getContent() + }) + note.setLabel('lastSync', api.dayjs().format()) + } catch (error) { + api.log('Sync failed: ' + error.message) + } + } +}) +``` + +**4. Database Cleanup** + +```javascript +// #run=weekly +// Clean up old revisions +const cutoffDate = api.dayjs().subtract(90, 'days').format() + +const oldRevisions = api.sql.getRows(` + SELECT revisionId FROM revisions + WHERE utcDateCreated < ? +`, [cutoffDate]) + +api.log(`Deleting ${oldRevisions.length} old revisions`) + +for (const row of oldRevisions) { + api.sql.execute('DELETE FROM revisions WHERE revisionId = ?', [row.revisionId]) +} +``` + +## Script Storage + +**Storage Location:** Scripts are stored as regular notes + +**Identifying Scripts:** +- Have `#run` attribute or `#customWidget` attribute +- Type is typically `code` with MIME `application/javascript` + +**Script Note Structure:** +``` +📁 Scripts (folder note) +├── 📜 Frontend Scripts +│ ├── Custom Toolbar Button (#run=frontendStartup) +│ └── Statistics Widget (#customWidget) +└── 📜 Backend Scripts + ├── Auto-Tagger (#run=backendStartup) + └── Daily Backup (#run=daily) +``` + +## Script Execution + +### Frontend Execution + +**Timing:** +1. Trilium frontend loads +2. Froca cache initializes +3. Script notes with `#run=frontendStartup` are found +4. Scripts execute in dependency order + +**Isolation:** +- Each script runs in separate context +- Shared `window.api` object +- Can access global window object + +### Backend Execution + +**Timing:** +1. Server starts +2. Becca cache loads +3. Script notes with `#run=backendStartup` are found +4. Scripts execute in dependency order + +**Isolation:** +- Each script is a separate module +- Can require Node.js modules +- Shared `api` global + +### Error Handling + +**Frontend:** +```javascript +try { + // Script code +} catch (error) { + api.showError('Script error: ' + error.message) + console.error(error) +} +``` + +**Backend:** +```javascript +try { + // Script code +} catch (error) { + api.log('Script error: ' + error.message) + console.error(error) +} +``` + +## Security Considerations + +### Frontend Scripts + +**Risks:** +- Can access all notes via Froca +- Can manipulate DOM +- Can make API calls +- Limited by browser security model + +**Mitigations:** +- User must trust scripts they add +- Scripts run with user privileges +- No access to file system + +### Backend Scripts + +**Risks:** +- Full Node.js access +- Can execute system commands +- Can access file system +- Can make network requests + +**Mitigations:** +- Scripts are user-created (trusted) +- Single-user model (no privilege escalation) +- Review scripts before adding `#run` attribute + +### Best Practices + +1. **Review script code** before adding execution attributes +2. **Use specific attributes** rather than wildcard searches +3. **Avoid eval()** and dynamic code execution +4. **Validate inputs** in scripts +5. **Handle errors** gracefully +6. **Log important actions** for audit trail + +## Performance Considerations + +### Optimization Tips + +**1. Cache Results:** +```javascript +// Bad: Re-query on every call +function getConfig() { + return api.getNote('config').getContent() +} + +// Good: Cache the result +let cachedConfig +function getConfig() { + if (!cachedConfig) { + cachedConfig = api.getNote('config').getContent() + } + return cachedConfig +} +``` + +**2. Use Efficient Queries:** +```javascript +// Bad: Load all notes and filter +const todos = api.searchForNotes('#type=todo') + +// Good: Use specific search +const todos = api.searchForNotes('#type=todo #status=pending') +``` + +**3. Batch Operations:** +```javascript +// Bad: Save after each change +notes.forEach(note => { + note.title = 'Updated' + note.save() +}) + +// Good: Batch changes +notes.forEach(note => { + note.title = 'Updated' +}) +// Save happens in batch +``` + +**4. Debounce Event Handlers:** +```javascript +let timeout +api.runOnNoteContentChange(() => { + clearTimeout(timeout) + timeout = setTimeout(() => { + // Process change + }, 500) +}) +``` + +## Debugging Scripts + +### Frontend Debugging + +**Browser DevTools:** +```javascript +console.log('Debug info:', data) +debugger // Breakpoint +``` + +**Trilium Log:** +```javascript +api.log('Script executed') +``` + +### Backend Debugging + +**Console Output:** +```javascript +console.log('Backend debug:', data) +api.log('Script log message') +``` + +**Inspect Becca:** +```javascript +api.log('Note count:', Object.keys(api.becca.notes).length) +``` + +## Advanced Topics + +### Custom Note Types + +Scripts can implement custom note type handlers: + +```javascript +// Register custom type +api.registerNoteType({ + type: 'mytype', + mime: 'application/x-mytype', + renderNote: (note) => { + // Custom rendering + } +}) +``` + +### External Libraries + +**Frontend:** +```javascript +// Load external library +const myLib = await import('https://cdn.example.com/lib.js') +``` + +**Backend:** +```javascript +// Use Node.js require +const fs = require('fs') +const axios = require('axios') +``` + +### State Persistence + +**Frontend:** +```javascript +// Use localStorage +localStorage.setItem('myScript:data', JSON.stringify(data)) +const data = JSON.parse(localStorage.getItem('myScript:data')) +``` + +**Backend:** +```javascript +// Store in special note +const stateNote = api.getNote('script-state-note') +stateNote.setContent(JSON.stringify(data)) + +const data = JSON.parse(stateNote.getContent()) +``` + +--- + +**See Also:** +- [Script API Documentation](Script%20API/) - Complete API reference +- [Advanced Showcases](https://triliumnext.github.io/Docs/Wiki/advanced-showcases) - Example scripts +- [ARCHITECTURE.md](ARCHITECTURE.md) - Overall architecture diff --git a/docs/SECURITY_ARCHITECTURE.md b/docs/SECURITY_ARCHITECTURE.md new file mode 100644 index 000000000..27993deac --- /dev/null +++ b/docs/SECURITY_ARCHITECTURE.md @@ -0,0 +1,834 @@ +# Trilium Security Architecture + +> **Related:** [ARCHITECTURE.md](ARCHITECTURE.md) | [SECURITY.md](../SECURITY.md) + +## Overview + +Trilium implements a **defense-in-depth security model** with multiple layers of protection for user data. The security architecture covers authentication, authorization, encryption, input sanitization, and secure communication. + +## Security Principles + +1. **Data Privacy**: User data is protected at rest and in transit +2. **Encryption**: Per-note encryption for sensitive content +3. **Authentication**: Multiple authentication methods supported +4. **Authorization**: Single-user model with granular protected sessions +5. **Input Validation**: All user input sanitized +6. **Secure Defaults**: Security features enabled by default +7. **Transparency**: Open source allows security audits + +## Threat Model + +### Threats Considered + +1. **Unauthorized Access** + - Physical access to device + - Network eavesdropping + - Stolen credentials + - Session hijacking + +2. **Data Exfiltration** + - Malicious scripts + - XSS attacks + - SQL injection + - CSRF attacks + +3. **Data Corruption** + - Malicious modifications + - Database tampering + - Sync conflicts + +4. **Privacy Leaks** + - Unencrypted backups + - Search indexing + - Temporary files + - Memory dumps + +### Out of Scope + +- Nation-state attackers +- Zero-day vulnerabilities in dependencies +- Hardware vulnerabilities (Spectre, Meltdown) +- Physical access with unlimited time +- Quantum computing attacks + +## Authentication + +### Password Authentication + +**Implementation:** `apps/server/src/services/password.ts` + +**Password Storage:** +```typescript +// Password is never stored directly +const salt = crypto.randomBytes(32) +const derivedKey = crypto.pbkdf2Sync(password, salt, 10000, 32, 'sha256') +const verificationHash = crypto.createHash('sha256') + .update(derivedKey) + .digest('hex') + +// Store only salt and verification hash +sql.insert('user_data', { + salt: salt.toString('hex'), + derivedKey: derivedKey.toString('hex') // Used for encryption +}) + +sql.insert('options', { + name: 'passwordVerificationHash', + value: verificationHash +}) +``` + +**Password Requirements:** +- Minimum length: 4 characters (configurable) +- No maximum length +- All characters allowed +- Can be changed by user + +**Login Process:** +```typescript +// 1. User submits password +POST /api/login/password +Body: { password: "user-password" } + +// 2. Server derives key +const derivedKey = crypto.pbkdf2Sync(password, salt, 10000, 32, 'sha256') + +// 3. Verify against stored hash +const verificationHash = crypto.createHash('sha256') + .update(derivedKey) + .digest('hex') + +if (verificationHash === storedHash) { + // 4. Create session + req.session.loggedIn = true + req.session.regenerate() +} +``` + +### TOTP (Two-Factor Authentication) + +**Implementation:** `apps/server/src/routes/api/login.ts` + +**Setup Process:** +```typescript +// 1. Generate secret +const secret = speakeasy.generateSecret({ + name: `Trilium (${username})`, + length: 32 +}) + +// 2. Store encrypted secret +const encryptedSecret = encrypt(secret.base32, dataKey) +sql.insert('options', { + name: 'totpSecret', + value: encryptedSecret +}) + +// 3. Generate QR code +const qrCodeUrl = secret.otpauth_url +``` + +**Verification:** +```typescript +// User submits TOTP token +POST /api/login/totp +Body: { token: "123456" } + +// Verify token +const secret = decrypt(encryptedSecret, dataKey) +const verified = speakeasy.totp.verify({ + secret: secret, + encoding: 'base32', + token: token, + window: 1 // Allow 1 time step tolerance +}) +``` + +### OpenID Connect + +**Implementation:** `apps/server/src/routes/api/login.ts` + +**Supported Providers:** +- Any OpenID Connect compatible provider +- Google, GitHub, Auth0, etc. + +**Flow:** +```typescript +// 1. Redirect to provider +GET /api/login/openid + +// 2. Provider redirects back with code +GET /api/login/openid/callback?code=... + +// 3. Exchange code for tokens +const tokens = await openidClient.callback(redirectUri, req.query) + +// 4. Verify ID token +const claims = tokens.claims() + +// 5. Create session +req.session.loggedIn = true +``` + +### Session Management + +**Session Storage:** SQLite database (sessions table) + +**Session Configuration:** +```typescript +app.use(session({ + secret: sessionSecret, + resave: false, + saveUninitialized: false, + rolling: true, + cookie: { + maxAge: 7 * 24 * 60 * 60 * 1000, // 7 days + httpOnly: true, + secure: isHttps, + sameSite: 'lax' + }, + store: new SqliteStore({ + db: db, + table: 'sessions' + }) +})) +``` + +**Session Invalidation:** +- Automatic timeout after inactivity +- Manual logout clears session +- Server restart invalidates all sessions (optional) + +## Authorization + +### Single-User Model + +**Desktop:** +- Single user (owner of device) +- No multi-user support +- Full access to all notes + +**Server:** +- Single user per installation +- Authentication required for all operations +- No user roles or permissions + +### Protected Sessions + +**Purpose:** Temporary access to encrypted (protected) notes + +**Implementation:** `apps/server/src/services/protected_session.ts` + +**Workflow:** +```typescript +// 1. User enters password for protected notes +POST /api/protected-session/enter +Body: { password: "protected-password" } + +// 2. Derive encryption key +const protectedDataKey = deriveKey(password) + +// 3. Verify password (decrypt known encrypted value) +const decrypted = decrypt(testValue, protectedDataKey) +if (decrypted === expectedValue) { + // 4. Store in memory (not in session) + protectedSessionHolder.setProtectedDataKey(protectedDataKey) + + // 5. Set timeout + setTimeout(() => { + protectedSessionHolder.clearProtectedDataKey() + }, timeout) +} +``` + +**Protected Session Timeout:** +- Default: 10 minutes (configurable) +- Extends on activity +- Cleared on browser close +- Separate from main session + +### API Authorization + +**Internal API:** +- Requires authenticated session +- CSRF token validation +- Same-origin policy + +**ETAPI (External API):** +- Token-based authentication +- No session required +- Rate limiting + +## Encryption + +### Note Encryption + +**Encryption Algorithm:** AES-256-CBC + +**Key Hierarchy:** +``` +User Password + ↓ (PBKDF2) +Data Key (for protected notes) + ↓ (AES-256) +Protected Note Content +``` + +**Encryption Process:** +```typescript +// 1. Generate IV (initialization vector) +const iv = crypto.randomBytes(16) + +// 2. Encrypt content +const cipher = crypto.createCipheriv('aes-256-cbc', dataKey, iv) +let encrypted = cipher.update(content, 'utf8', 'base64') +encrypted += cipher.final('base64') + +// 3. Prepend IV to encrypted content +const encryptedBlob = iv.toString('base64') + ':' + encrypted + +// 4. Store in database +sql.insert('blobs', { + blobId: blobId, + content: encryptedBlob +}) +``` + +**Decryption Process:** +```typescript +// 1. Split IV and encrypted content +const [ivBase64, encryptedData] = encryptedBlob.split(':') +const iv = Buffer.from(ivBase64, 'base64') + +// 2. Decrypt +const decipher = crypto.createDecipheriv('aes-256-cbc', dataKey, iv) +let decrypted = decipher.update(encryptedData, 'base64', 'utf8') +decrypted += decipher.final('utf8') + +return decrypted +``` + +**Protected Note Metadata:** +- Title is NOT encrypted (for tree display) +- Type and MIME are NOT encrypted +- Content IS encrypted +- Attributes CAN be encrypted (optional) + +### Data Key Management + +**Master Data Key:** +```typescript +// Generated once during setup +const dataKey = crypto.randomBytes(32) // 256 bits + +// Encrypted with derived key from user password +const derivedKey = crypto.pbkdf2Sync(password, salt, 10000, 32, 'sha256') +const encryptedDataKey = encrypt(dataKey, derivedKey) + +// Stored in database +sql.insert('options', { + name: 'encryptedDataKey', + value: encryptedDataKey.toString('hex') +}) +``` + +**Key Rotation:** +- Not currently supported +- Requires re-encrypting all protected notes +- Planned for future version + +### Transport Encryption + +**HTTPS:** +- Required for server installations (recommended) +- TLS 1.2+ only +- Strong cipher suites preferred +- Certificate validation enabled + +**Desktop:** +- Local communication (no network) +- No HTTPS required + +### Backup Encryption + +**Database Backups:** +- Protected notes remain encrypted in backup +- Backup file should be protected separately +- Consider encrypting backup storage location + +## Input Sanitization + +### XSS Prevention + +**HTML Sanitization:** + +Location: `apps/client/src/services/dompurify.ts` + +```typescript +import DOMPurify from 'dompurify' + +// Configure DOMPurify +DOMPurify.setConfig({ + ALLOWED_TAGS: ['b', 'i', 'em', 'strong', 'a', 'p', 'br', 'div', ...], + ALLOWED_ATTR: ['href', 'title', 'class', 'id', ...], + ALLOW_DATA_ATTR: false +}) + +// Sanitize HTML before rendering +const cleanHtml = DOMPurify.sanitize(userHtml) +``` + +**CKEditor Configuration:** +```typescript +// apps/client/src/widgets/type_widgets/text_type_widget.ts +ClassicEditor.create(element, { + // Restrict allowed content + htmlSupport: { + allow: [ + { name: /./, attributes: true, classes: true, styles: true } + ], + disallow: [ + { name: 'script' }, + { name: 'iframe', attributes: /^(?!src$).*/ } + ] + } +}) +``` + +**Content Security Policy:** +```typescript +// apps/server/src/main.ts +app.use((req, res, next) => { + res.setHeader('Content-Security-Policy', + "default-src 'self'; " + + "script-src 'self' 'unsafe-inline' 'unsafe-eval'; " + + "style-src 'self' 'unsafe-inline'; " + + "img-src 'self' data: blob:;" + ) + next() +}) +``` + +### SQL Injection Prevention + +**Parameterized Queries:** +```typescript +// GOOD - Safe from SQL injection +const notes = sql.getRows( + 'SELECT * FROM notes WHERE title = ?', + [userInput] +) + +// BAD - Vulnerable to SQL injection +const notes = sql.getRows( + `SELECT * FROM notes WHERE title = '${userInput}'` +) +``` + +**ORM Usage:** +```typescript +// Entity-based access prevents SQL injection +const note = becca.getNote(noteId) +note.title = userInput // Sanitized by entity +note.save() // Parameterized query +``` + +### CSRF Prevention + +**CSRF Token Validation:** + +Location: `apps/server/src/routes/middleware/csrf.ts` + +```typescript +// Generate CSRF token +const csrfToken = crypto.randomBytes(32).toString('hex') +req.session.csrfToken = csrfToken + +// Validate on state-changing requests +app.use((req, res, next) => { + if (['POST', 'PUT', 'DELETE'].includes(req.method)) { + const token = req.headers['x-csrf-token'] + if (token !== req.session.csrfToken) { + return res.status(403).json({ error: 'CSRF token mismatch' }) + } + } + next() +}) +``` + +**Client-Side:** +```typescript +// apps/client/src/services/server.ts +const csrfToken = getCsrfToken() + +fetch('/api/notes', { + method: 'POST', + headers: { + 'X-CSRF-Token': csrfToken, + 'Content-Type': 'application/json' + }, + body: JSON.stringify(data) +}) +``` + +### File Upload Validation + +**Validation:** +```typescript +// apps/server/src/routes/api/attachments.ts +const allowedMimeTypes = [ + 'image/jpeg', + 'image/png', + 'application/pdf', + // ... +] + +if (!allowedMimeTypes.includes(file.mimetype)) { + throw new Error('File type not allowed') +} + +// Validate file size +const maxSize = 100 * 1024 * 1024 // 100 MB +if (file.size > maxSize) { + throw new Error('File too large') +} + +// Sanitize filename +const sanitizedFilename = path.basename(file.originalname) + .replace(/[^a-z0-9.-]/gi, '_') +``` + +## Network Security + +### HTTPS Configuration + +**Server Setup:** +```typescript +// apps/server/src/main.ts +const httpsOptions = { + key: fs.readFileSync('server.key'), + cert: fs.readFileSync('server.cert') +} + +https.createServer(httpsOptions, app).listen(443) +``` + +**Certificate Validation:** +- Require valid certificates in production +- Self-signed certificates allowed for development +- Certificate pinning not implemented + +### Secure Headers + +```typescript +// apps/server/src/main.ts +app.use((req, res, next) => { + // Prevent clickjacking + res.setHeader('X-Frame-Options', 'SAMEORIGIN') + + // Prevent MIME sniffing + res.setHeader('X-Content-Type-Options', 'nosniff') + + // XSS protection + res.setHeader('X-XSS-Protection', '1; mode=block') + + // Referrer policy + res.setHeader('Referrer-Policy', 'same-origin') + + // HTTPS upgrade + if (req.secure) { + res.setHeader('Strict-Transport-Security', 'max-age=31536000') + } + + next() +}) +``` + +### Rate Limiting + +**API Rate Limiting:** +```typescript +// apps/server/src/routes/middleware/rate_limit.ts +const rateLimit = require('express-rate-limit') + +const apiLimiter = rateLimit({ + windowMs: 15 * 60 * 1000, // 15 minutes + max: 1000, // Limit each IP to 1000 requests per window + message: 'Too many requests from this IP' +}) + +app.use('/api/', apiLimiter) +``` + +**Login Rate Limiting:** +```typescript +const loginLimiter = rateLimit({ + windowMs: 15 * 60 * 1000, + max: 5, // 5 failed attempts + skipSuccessfulRequests: true +}) + +app.post('/api/login/password', loginLimiter, loginHandler) +``` + +## Data Security + +### Secure Data Deletion + +**Soft Delete:** +```typescript +// Mark as deleted (sync first) +note.isDeleted = 1 +note.deleteId = generateUUID() +note.save() + +// Entity change tracked for sync +addEntityChange('notes', noteId, note) +``` + +**Hard Delete (Erase):** +```typescript +// After sync completed +sql.execute('DELETE FROM notes WHERE noteId = ?', [noteId]) +sql.execute('DELETE FROM branches WHERE noteId = ?', [noteId]) +sql.execute('DELETE FROM attributes WHERE noteId = ?', [noteId]) + +// Mark entity change as erased +sql.execute('UPDATE entity_changes SET isErased = 1 WHERE entityId = ?', [noteId]) +``` + +**Blob Cleanup:** +```typescript +// Find orphaned blobs (not referenced by any note/revision/attachment) +const orphanedBlobs = sql.getRows(` + SELECT blobId FROM blobs + WHERE blobId NOT IN (SELECT blobId FROM notes WHERE blobId IS NOT NULL) + AND blobId NOT IN (SELECT blobId FROM revisions WHERE blobId IS NOT NULL) + AND blobId NOT IN (SELECT blobId FROM attachments WHERE blobId IS NOT NULL) +`) + +// Delete orphaned blobs +for (const blob of orphanedBlobs) { + sql.execute('DELETE FROM blobs WHERE blobId = ?', [blob.blobId]) +} +``` + +### Memory Security + +**Protected Data in Memory:** +- Protected data keys stored in memory only +- Cleared on timeout +- Not written to disk +- Not in session storage + +**Memory Cleanup:** +```typescript +// Clear sensitive data +const clearSensitiveData = () => { + protectedDataKey = null + + // Force garbage collection if available + if (global.gc) { + global.gc() + } +} +``` + +### Temporary Files + +**Secure Temporary Files:** +```typescript +const tempDir = os.tmpdir() +const tempFile = path.join(tempDir, `trilium-${crypto.randomBytes(16).toString('hex')}`) + +// Write temp file +fs.writeFileSync(tempFile, data, { mode: 0o600 }) // Owner read/write only + +// Clean up after use +fs.unlinkSync(tempFile) +``` + +## Dependency Security + +### Vulnerability Scanning + +**Tools:** +- `npm audit` - Check for known vulnerabilities +- Renovate bot - Automatic dependency updates +- GitHub Dependabot alerts + +**Process:** +```bash +# Check for vulnerabilities +npm audit + +# Fix automatically +npm audit fix + +# Manual review for breaking changes +npm audit fix --force +``` + +### Dependency Pinning + +**package.json:** +```json +{ + "dependencies": { + "express": "4.18.2", // Exact version + "better-sqlite3": "^9.2.2" // Compatible versions + } +} +``` + +**pnpm Overrides:** +```json +{ + "pnpm": { + "overrides": { + "lodash@<4.17.21": ">=4.17.21", // Force minimum version + "axios@<0.21.2": ">=0.21.2" + } + } +} +``` + +### Patch Management + +**pnpm Patches:** +```bash +# Create patch +pnpm patch @ckeditor/ckeditor5 + +# Edit files in temporary directory +# ... + +# Generate patch file +pnpm patch-commit /tmp/ckeditor5-patch + +# Patch applied automatically on install +``` + +## Security Best Practices + +### For Users + +1. **Strong Passwords** + - Use unique password for Trilium + - Enable TOTP 2FA + - Protect password manager + +2. **Protected Notes** + - Use for sensitive information + - Set reasonable session timeout + - Don't leave sessions unattended + +3. **Backups** + - Regular backups to secure location + - Encrypt backup storage + - Test backup restoration + +4. **Server Setup** + - Use HTTPS only + - Keep software updated + - Firewall configuration + - Use reverse proxy (nginx, Caddy) + +5. **Scripts** + - Review scripts before using + - Be cautious with external scripts + - Understand script permissions + +### For Developers + +1. **Code Review** + - Review all security-related changes + - Test authentication/authorization changes + - Validate input sanitization + +2. **Testing** + - Write security tests + - Test edge cases + - Penetration testing + +3. **Dependencies** + - Regular updates + - Audit new dependencies + - Monitor security advisories + +4. **Secrets** + - No secrets in source code + - Use environment variables + - Secure key generation + +## Security Auditing + +### Logs + +**Security Events Logged:** +- Login attempts (success/failure) +- Protected session access +- Password changes +- ETAPI token usage +- Failed CSRF validations + +**Log Location:** +- Desktop: Console output +- Server: Log files or stdout + +### Monitoring + +**Metrics to Monitor:** +- Failed login attempts +- API error rates +- Unusual database changes +- Large exports/imports + +## Incident Response + +### Security Issue Reporting + +**Process:** +1. Email security@triliumnext.com +2. Include vulnerability details +3. Provide reproduction steps +4. Allow reasonable disclosure time + +**Response:** +1. Acknowledge within 48 hours +2. Investigate and validate +3. Develop fix +4. Coordinate disclosure +5. Release patch + +### Breach Response + +**If Compromised:** +1. Change password immediately +2. Review recent activity +3. Check for unauthorized changes +4. Restore from backup if needed +5. Update security settings + +## Future Security Enhancements + +**Planned:** +- Hardware security key support (U2F/WebAuthn) +- End-to-end encryption for sync +- Zero-knowledge architecture option +- Encryption key rotation +- Audit log enhancements +- Per-note access controls + +**Under Consideration:** +- Multi-user support with permissions +- Blockchain-based sync verification +- Homomorphic encryption for search +- Quantum-resistant encryption + +--- + +**See Also:** +- [SECURITY.md](../SECURITY.md) - Security policy +- [ARCHITECTURE.md](ARCHITECTURE.md) - Overall architecture +- [Protected Notes Guide](https://triliumnext.github.io/Docs/Wiki/protected-notes) diff --git a/docs/SYNCHRONIZATION.md b/docs/SYNCHRONIZATION.md new file mode 100644 index 000000000..2f39eee40 --- /dev/null +++ b/docs/SYNCHRONIZATION.md @@ -0,0 +1,583 @@ +# Trilium Synchronization Architecture + +> **Related:** [ARCHITECTURE.md](ARCHITECTURE.md) | [User Guide: Synchronization](https://triliumnext.github.io/Docs/Wiki/synchronization) + +## Overview + +Trilium implements a sophisticated **bidirectional synchronization system** that allows users to sync their note databases across multiple devices (desktop clients and server instances). The sync protocol is designed to handle: + +- Concurrent modifications across devices +- Conflict resolution +- Partial sync (only changed entities) +- Protected note synchronization +- Efficient bandwidth usage + +## Sync Architecture + +``` +┌─────────────┐ ┌─────────────┐ +│ Desktop 1 │ │ Desktop 2 │ +│ (Client) │ │ (Client) │ +└──────┬──────┘ └──────┬──────┘ + │ │ + │ WebSocket/HTTP │ + │ │ + ▼ ▼ +┌────────────────────────────────────────────────┐ +│ Sync Server │ +│ ┌──────────────────────────────────────┐ │ +│ │ Sync Service │ │ +│ │ - Entity Change Management │ │ +│ │ - Conflict Resolution │ │ +│ │ - Version Tracking │ │ +│ └──────────────────────────────────────┘ │ +│ │ │ +│ ┌──────┴───────┐ │ +│ │ Database │ │ +│ │ (entity_changes)│ │ +│ └──────────────┘ │ +└────────────────────────────────────────────────┘ +``` + +## Core Concepts + +### Entity Changes + +Every modification to any entity (note, branch, attribute, etc.) creates an **entity change** record: + +```sql +entity_changes ( + id, -- Auto-increment ID + entityName, -- 'notes', 'branches', 'attributes', etc. + entityId, -- ID of the changed entity + hash, -- Content hash for integrity + isErased, -- If entity was erased (deleted permanently) + changeId, -- Unique change identifier + componentId, -- Installation identifier + instanceId, -- Process instance identifier + isSynced, -- Whether synced to server + utcDateChanged -- When change occurred +) +``` + +**Key Properties:** +- **changeId**: Globally unique identifier (UUID) for the change +- **componentId**: Unique per Trilium installation (persists across restarts) +- **instanceId**: Unique per process (changes on restart) +- **hash**: SHA-256 hash of entity data for integrity verification + +### Sync Versions + +Each Trilium installation tracks: +- **Local sync version**: Highest change ID seen locally +- **Server sync version**: Highest change ID on server +- **Entity versions**: Last sync version for each entity type + +### Change Tracking + +**When an entity is modified:** + +```typescript +// apps/server/src/services/entity_changes.ts +function addEntityChange(entityName, entityId, entity) { + const hash = calculateHash(entity) + const changeId = generateUUID() + + sql.insert('entity_changes', { + entityName, + entityId, + hash, + changeId, + componentId: config.componentId, + instanceId: config.instanceId, + isSynced: 0, + utcDateChanged: now() + }) +} +``` + +**Entity modification triggers:** +- Note content update +- Note metadata change +- Branch creation/deletion/reorder +- Attribute addition/removal +- Options modification + +## Sync Protocol + +### Sync Handshake + +**Step 1: Client Initiates Sync** + +```typescript +// Client sends current sync version +POST /api/sync/check +{ + "sourceId": "client-component-id", + "maxChangeId": 12345 +} +``` + +**Step 2: Server Responds with Status** + +```typescript +// Server checks for changes +Response: +{ + "entityChanges": 567, // Changes on server + "maxChangeId": 12890, // Server's max change ID + "outstandingPushCount": 23 // Client changes not yet synced +} +``` + +**Step 3: Decision** + +- If `entityChanges > 0`: Pull changes from server +- If `outstandingPushCount > 0`: Push changes to server +- Both can happen in sequence + +### Pull Sync (Server → Client) + +**Client Requests Changes:** + +```typescript +POST /api/sync/pull +{ + "sourceId": "client-component-id", + "lastSyncedChangeId": 12345 +} +``` + +**Server Responds:** + +```typescript +Response: +{ + "notes": [ + { noteId: "abc", title: "New Note", ... } + ], + "branches": [...], + "attributes": [...], + "revisions": [...], + "attachments": [...], + "entityChanges": [ + { entityName: "notes", entityId: "abc", changeId: "...", ... } + ], + "maxChangeId": 12890 +} +``` + +**Client Processing:** + +1. Apply entity changes to local database +2. Update Froca cache +3. Update local sync version +4. Trigger UI refresh + +### Push Sync (Client → Server) + +**Client Sends Changes:** + +```typescript +POST /api/sync/push +{ + "sourceId": "client-component-id", + "entities": [ + { + "entity": { + "noteId": "xyz", + "title": "Modified Note", + ... + }, + "entityChange": { + "changeId": "change-uuid", + "entityName": "notes", + ... + } + } + ] +} +``` + +**Server Processing:** + +1. Validate changes +2. Check for conflicts +3. Apply changes to database +4. Update Becca cache +5. Mark as synced +6. Broadcast to other connected clients via WebSocket + +**Conflict Detection:** + +```typescript +// Check if entity was modified on server since client's last sync +const serverEntity = becca.getNote(noteId) +const serverLastModified = serverEntity.utcDateModified + +if (serverLastModified > clientSyncVersion) { + // CONFLICT! + resolveConflict(serverEntity, clientEntity) +} +``` + +## Conflict Resolution + +### Conflict Types + +**1. Content Conflict** +- Both client and server modified same note content +- **Resolution**: Last-write-wins based on `utcDateModified` + +**2. Structure Conflict** +- Branch moved/deleted on one side, modified on other +- **Resolution**: Tombstone records, reconciliation + +**3. Attribute Conflict** +- Same attribute modified differently +- **Resolution**: Last-write-wins + +### Conflict Resolution Strategy + +**Last-Write-Wins:** +```typescript +if (clientEntity.utcDateModified > serverEntity.utcDateModified) { + // Client wins, apply client changes + applyClientChange(clientEntity) +} else { + // Server wins, reject client change + // Client will pull server version on next sync +} +``` + +**Tombstone Records:** +- Deleted entities leave tombstone in `entity_changes` +- Prevents re-sync of deleted items +- `isErased = 1` for permanent deletions + +### Protected Notes Sync + +**Challenge:** Encrypted content can't be synced without password + +**Solution:** + +1. **Protected session required**: User must unlock protected notes +2. **Encrypted sync**: Content synced in encrypted form +3. **Hash verification**: Integrity checked without decryption +4. **Lazy decryption**: Only decrypt when accessed + +**Sync Flow:** + +```typescript +// Client side +if (note.isProtected && !protectedSessionHolder.isProtectedSessionAvailable()) { + // Skip protected notes if session not active + continue +} + +// Server side +if (note.isProtected) { + // Sync encrypted blob + // Don't decrypt for sync + syncEncryptedBlob(note.blobId) +} +``` + +## Sync States + +### Connection States + +- **Connected**: WebSocket connection active +- **Disconnected**: No connection to sync server +- **Syncing**: Actively transferring data +- **Conflict**: Sync paused due to conflict + +### Entity Sync States + +Each entity can be in: +- **Synced**: In sync with server +- **Pending**: Local changes not yet pushed +- **Conflict**: Conflicting changes detected + +### UI Indicators + +```typescript +// apps/client/src/widgets/sync_status.ts +class SyncStatusWidget { + showSyncStatus() { + if (isConnected && allSynced) { + showIcon('synced') + } else if (isSyncing) { + showIcon('syncing-spinner') + } else if (hasConflicts) { + showIcon('conflict-warning') + } else { + showIcon('not-synced') + } + } +} +``` + +## Performance Optimizations + +### Incremental Sync + +Only entities changed since last sync are transferred: + +```sql +SELECT * FROM entity_changes +WHERE id > :lastSyncedChangeId +ORDER BY id ASC +LIMIT 1000 +``` + +### Batch Processing + +Changes sent in batches to reduce round trips: + +```typescript +const BATCH_SIZE = 1000 +const changes = getUnsyncedChanges(BATCH_SIZE) +await syncBatch(changes) +``` + +### Hash-Based Change Detection + +```typescript +// Only sync if hash differs +const localHash = calculateHash(localEntity) +const serverHash = getServerHash(entityId) + +if (localHash !== serverHash) { + syncEntity(localEntity) +} +``` + +### Compression + +Large payloads compressed before transmission: + +```typescript +// Server sends compressed response +res.setHeader('Content-Encoding', 'gzip') +res.send(gzip(syncData)) +``` + +## Error Handling + +### Network Errors + +**Retry Strategy:** +```typescript +const RETRY_DELAYS = [1000, 2000, 5000, 10000, 30000] + +async function syncWithRetry(attempt = 0) { + try { + await performSync() + } catch (error) { + if (attempt < RETRY_DELAYS.length) { + setTimeout(() => { + syncWithRetry(attempt + 1) + }, RETRY_DELAYS[attempt]) + } + } +} +``` + +### Sync Integrity Checks + +**Hash Verification:** +```typescript +// Verify entity hash matches +const calculatedHash = calculateHash(entity) +const receivedHash = entityChange.hash + +if (calculatedHash !== receivedHash) { + throw new Error('Hash mismatch - data corruption detected') +} +``` + +**Consistency Checks:** +- Orphaned branches detection +- Missing parent notes +- Invalid entity references +- Circular dependencies + +## Sync Server Configuration + +### Server Setup + +**Required Options:** +```javascript +{ + "syncServerHost": "https://sync.example.com", + "syncServerTimeout": 60000, + "syncProxy": "" // Optional HTTP proxy +} +``` + +**Authentication:** +- Username/password or +- Sync token (generated on server) + +### Client Setup + +**Desktop Client:** +```javascript +// Settings → Sync +{ + "syncServerHost": "https://sync.example.com", + "username": "user@example.com", + "password": "********" +} +``` + +**Test Connection:** +```typescript +POST /api/sync/test +Response: { "success": true } +``` + +## Sync API Endpoints + +Located at: `apps/server/src/routes/api/sync.ts` + +**Endpoints:** + +- `POST /api/sync/check` - Check sync status +- `POST /api/sync/pull` - Pull changes from server +- `POST /api/sync/push` - Push changes to server +- `POST /api/sync/finished` - Mark sync complete +- `POST /api/sync/test` - Test connection +- `GET /api/sync/stats` - Sync statistics + +## WebSocket Sync Updates + +Real-time sync via WebSocket: + +```typescript +// Server broadcasts change to all connected clients +ws.broadcast('entity-change', { + entityName: 'notes', + entityId: 'abc123', + changeId: 'change-uuid', + sourceId: 'originating-component-id' +}) + +// Client receives and applies +ws.on('entity-change', (data) => { + if (data.sourceId !== myComponentId) { + froca.processEntityChange(data) + } +}) +``` + +## Sync Scheduling + +### Automatic Sync + +**Desktop:** +- Sync on startup +- Periodic sync (configurable interval, default: 60s) +- Sync before shutdown + +**Server:** +- Sync on entity modification +- WebSocket push to connected clients + +### Manual Sync + +User can trigger: +- Full sync +- Sync now +- Sync specific subtree + +## Troubleshooting + +### Common Issues + +**Sync stuck:** +```sql +-- Reset sync state +UPDATE entity_changes SET isSynced = 0; +DELETE FROM options WHERE name LIKE 'sync%'; +``` + +**Hash mismatch:** +- Data corruption detected +- Re-sync from backup +- Check database integrity + +**Conflict loop:** +- Manual intervention required +- Export conflicting notes +- Choose winning version +- Re-sync + +### Sync Diagnostics + +**Check sync status:** +```typescript +GET /api/sync/stats +Response: { + "unsyncedChanges": 0, + "lastSyncDate": "2025-11-02T12:00:00Z", + "syncVersion": 12890 +} +``` + +**Entity change log:** +```sql +SELECT * FROM entity_changes +WHERE isSynced = 0 +ORDER BY id DESC; +``` + +## Security Considerations + +### Encrypted Sync + +- Protected notes synced encrypted +- No plain text over network +- Server cannot read protected content + +### Authentication + +- Username/password over HTTPS only +- Sync tokens for token-based auth +- Session cookies with CSRF protection + +### Authorization + +- Users can only sync their own data +- No cross-user sync support +- Sync server validates ownership + +## Performance Metrics + +**Typical Sync Performance:** +- 1000 changes: ~2-5 seconds +- 10000 changes: ~20-50 seconds +- Initial full sync (100k notes): ~5-10 minutes + +**Factors:** +- Network latency +- Database size +- Number of protected notes +- Attachment sizes + +## Future Improvements + +**Planned Enhancements:** +- Differential sync (binary diff) +- Peer-to-peer sync (no central server) +- Multi-server sync +- Partial sync (subtree only) +- Sync over Tor/I2P + +--- + +**See Also:** +- [ARCHITECTURE.md](ARCHITECTURE.md) - Overall architecture +- [Sync User Guide](https://triliumnext.github.io/Docs/Wiki/synchronization) +- [Sync API Source](../apps/server/src/routes/api/sync.ts) diff --git a/docs/TECHNICAL_DOCUMENTATION.md b/docs/TECHNICAL_DOCUMENTATION.md new file mode 100644 index 000000000..445df0530 --- /dev/null +++ b/docs/TECHNICAL_DOCUMENTATION.md @@ -0,0 +1,423 @@ +# Trilium Notes - Technical Documentation Index + +Welcome to the comprehensive technical and architectural documentation for Trilium Notes. This index provides quick access to all technical documentation resources. + +## 📚 Core Architecture Documentation + +### [ARCHITECTURE.md](ARCHITECTURE.md) +**Main technical architecture document** covering the complete system design. + +**Topics Covered:** +- High-level architecture overview +- Monorepo structure and organization +- Core architecture patterns (Becca, Froca, Shaca) +- Entity system and data model +- Widget-based UI architecture +- Frontend and backend architecture +- API architecture (Internal, ETAPI, WebSocket) +- Build system and tooling +- Testing strategy +- Security overview + +**Audience:** Developers, architects, contributors + +--- + +### [DATABASE.md](DATABASE.md) +**Complete database architecture and schema documentation.** + +**Topics Covered:** +- SQLite database structure +- Entity tables (notes, branches, attributes, revisions, attachments, blobs) +- System tables (options, entity_changes, sessions) +- Data relationships and integrity +- Database access patterns +- Migrations and versioning +- Performance optimization +- Backup and maintenance +- Security considerations + +**Audience:** Backend developers, database administrators + +--- + +### [SYNCHRONIZATION.md](SYNCHRONIZATION.md) +**Detailed synchronization protocol and implementation.** + +**Topics Covered:** +- Sync architecture overview +- Entity change tracking +- Sync protocol (handshake, pull, push) +- Conflict resolution strategies +- Protected notes synchronization +- Performance optimizations +- Error handling and retry logic +- Sync server configuration +- WebSocket real-time updates +- Troubleshooting guide + +**Audience:** Advanced users, sync server administrators, contributors + +--- + +### [SCRIPTING.md](SCRIPTING.md) +**Comprehensive guide to the Trilium scripting system.** + +**Topics Covered:** +- Script types (frontend, backend, render) +- Frontend API reference +- Backend API reference +- Entity classes (FNote, BNote, etc.) +- Script examples and patterns +- Script storage and execution +- Security considerations +- Performance optimization +- Debugging techniques +- Advanced topics + +**Audience:** Power users, script developers, plugin creators + +--- + +### [SECURITY_ARCHITECTURE.md](SECURITY_ARCHITECTURE.md) +**In-depth security architecture and implementation.** + +**Topics Covered:** +- Security principles and threat model +- Authentication methods (password, TOTP, OpenID) +- Session management +- Authorization and protected sessions +- Encryption (notes, transport, backups) +- Input sanitization (XSS, SQL injection, CSRF) +- Network security (HTTPS, headers, rate limiting) +- Data security and secure deletion +- Dependency security +- Security best practices +- Incident response + +**Audience:** Security engineers, administrators, auditors + +--- + +## 🔧 Developer Documentation + +### [Developer Guide](Developer%20Guide/Developer%20Guide/) +Collection of developer-focused documentation for contributing to Trilium. + +**Key Documents:** +- [Environment Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) - Setting up development environment +- [Project Structure](Developer%20Guide/Developer%20Guide/Project%20Structure.md) - Monorepo organization +- [Development and Architecture](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/) - Various development topics + +**Topics Include:** +- Local development setup +- Building and deployment +- Adding new note types +- Database schema details +- Internationalization +- Icons and UI customization +- Docker development +- Troubleshooting + +**Audience:** Contributors, developers + +--- + +## 📖 User Documentation + +### [User Guide](User%20Guide/User%20Guide/) +Comprehensive end-user documentation for using Trilium. + +**Key Sections:** +- Installation & Setup +- Basic Concepts and Features +- Note Types +- Advanced Usage +- Synchronization +- Import/Export + +**Audience:** End users, administrators + +--- + +### [Script API](Script%20API/) +Complete API reference for user scripting. + +**Coverage:** +- Frontend API methods +- Backend API methods +- Entity properties and methods +- Event handlers +- Utility functions + +**Audience:** Script developers, power users + +--- + +## 🚀 Quick Start Guides + +### For Users +1. [Installation Guide](User%20Guide/User%20Guide/Installation%20&%20Setup/) - Get Trilium running +2. [Basic Concepts](User%20Guide/User%20Guide/Basic%20Concepts%20and%20Features/) - Learn the fundamentals +3. [Scripting Guide](SCRIPTING.md) - Extend Trilium with scripts + +### For Developers +1. [Environment Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) - Setup development environment +2. [Architecture Overview](ARCHITECTURE.md) - Understand the system +3. [Contributing Guide](../README.md#-contribute) - Start contributing + +### For Administrators +1. [Server Installation](User%20Guide/User%20Guide/Installation%20&%20Setup/Server%20Installation.md) - Deploy Trilium server +2. [Synchronization Setup](SYNCHRONIZATION.md) - Configure sync +3. [Security Best Practices](SECURITY_ARCHITECTURE.md#security-best-practices) - Secure your installation + +--- + +## 🔍 Documentation by Topic + +### Architecture & Design +- [Overall Architecture](ARCHITECTURE.md) +- [Monorepo Structure](ARCHITECTURE.md#monorepo-structure) +- [Three-Layer Cache System](ARCHITECTURE.md#three-layer-cache-system) +- [Entity System](ARCHITECTURE.md#entity-system) +- [Widget-Based UI](ARCHITECTURE.md#widget-based-ui) + +### Data & Storage +- [Database Architecture](DATABASE.md) +- [Entity Tables](DATABASE.md#entity-tables) +- [Data Relationships](DATABASE.md#data-relationships) +- [Blob Storage](DATABASE.md#blobs-table) +- [Database Migrations](DATABASE.md#database-migrations) + +### Synchronization +- [Sync Architecture](SYNCHRONIZATION.md#sync-architecture) +- [Sync Protocol](SYNCHRONIZATION.md#sync-protocol) +- [Conflict Resolution](SYNCHRONIZATION.md#conflict-resolution) +- [Protected Notes Sync](SYNCHRONIZATION.md#protected-notes-sync) +- [WebSocket Sync](SYNCHRONIZATION.md#websocket-sync-updates) + +### Security +- [Authentication](SECURITY_ARCHITECTURE.md#authentication) +- [Encryption](SECURITY_ARCHITECTURE.md#encryption) +- [Input Sanitization](SECURITY_ARCHITECTURE.md#input-sanitization) +- [Network Security](SECURITY_ARCHITECTURE.md#network-security) +- [Security Best Practices](SECURITY_ARCHITECTURE.md#security-best-practices) + +### Scripting & Extensibility +- [Script Types](SCRIPTING.md#script-types) +- [Frontend API](SCRIPTING.md#frontend-api) +- [Backend API](SCRIPTING.md#backend-api) +- [Script Examples](SCRIPTING.md#script-examples) +- [Custom Widgets](SCRIPTING.md#render-scripts) + +### Frontend +- [Client Architecture](ARCHITECTURE.md#frontend-architecture) +- [Widget System](ARCHITECTURE.md#widget-based-ui) +- [Event System](ARCHITECTURE.md#event-system) +- [Froca Cache](ARCHITECTURE.md#2-froca-frontend-cache) +- [UI Components](ARCHITECTURE.md#ui-components) + +### Backend +- [Server Architecture](ARCHITECTURE.md#backend-architecture) +- [Service Layer](ARCHITECTURE.md#service-layer) +- [Route Structure](ARCHITECTURE.md#route-structure) +- [Becca Cache](ARCHITECTURE.md#1-becca-backend-cache) +- [Middleware](ARCHITECTURE.md#middleware) + +### Build & Deploy +- [Build System](ARCHITECTURE.md#build-system) +- [Package Manager](ARCHITECTURE.md#package-manager-pnpm) +- [Build Tools](ARCHITECTURE.md#build-tools) +- [Docker](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Docker.md) +- [Deployment](Developer%20Guide/Developer%20Guide/Building%20and%20deployment/) + +### Testing +- [Testing Strategy](ARCHITECTURE.md#testing-strategy) +- [Test Organization](ARCHITECTURE.md#test-organization) +- [E2E Testing](ARCHITECTURE.md#e2e-testing) + +--- + +## 📋 Reference Documentation + +### File Locations +``` +trilium/ +├── apps/ +│ ├── client/ # Frontend application +│ ├── server/ # Backend server +│ ├── desktop/ # Electron app +│ └── ... +├── packages/ +│ ├── commons/ # Shared code +│ ├── ckeditor5/ # Rich text editor +│ └── ... +├── docs/ +│ ├── ARCHITECTURE.md # Main architecture doc +│ ├── DATABASE.md # Database documentation +│ ├── SYNCHRONIZATION.md # Sync documentation +│ ├── SCRIPTING.md # Scripting guide +│ ├── SECURITY_ARCHITECTURE.md # Security documentation +│ ├── Developer Guide/ # Developer docs +│ ├── User Guide/ # User docs +│ └── Script API/ # API reference +└── ... +``` + +### Key Source Files +- **Backend Entry:** `apps/server/src/main.ts` +- **Frontend Entry:** `apps/client/src/desktop.ts` / `apps/client/src/index.ts` +- **Becca Cache:** `apps/server/src/becca/becca.ts` +- **Froca Cache:** `apps/client/src/services/froca.ts` +- **Database Schema:** `apps/server/src/assets/db/schema.sql` +- **Backend API:** `apps/server/src/services/backend_script_api.ts` +- **Frontend API:** `apps/client/src/services/frontend_script_api.ts` + +### Important Directories +- **Entities:** `apps/server/src/becca/entities/` +- **Widgets:** `apps/client/src/widgets/` +- **Services:** `apps/server/src/services/` +- **Routes:** `apps/server/src/routes/` +- **Migrations:** `apps/server/src/migrations/` +- **Tests:** Various `*.spec.ts` files throughout + +--- + +## 🎯 Common Tasks + +### Understanding the Codebase +1. Read [ARCHITECTURE.md](ARCHITECTURE.md) for overview +2. Explore [Monorepo Structure](ARCHITECTURE.md#monorepo-structure) +3. Review [Entity System](ARCHITECTURE.md#entity-system) +4. Check [Key Files](ARCHITECTURE.md#key-files-for-understanding-architecture) + +### Adding Features +1. Review relevant architecture documentation +2. Check [Developer Guide](Developer%20Guide/Developer%20Guide/) +3. Follow existing patterns in codebase +4. Write tests +5. Update documentation + +### Debugging Issues +1. Check [Troubleshooting](Developer%20Guide/Developer%20Guide/Troubleshooting/) +2. Review [Database](DATABASE.md) for data issues +3. Check [Synchronization](SYNCHRONIZATION.md) for sync issues +4. Review [Security](SECURITY_ARCHITECTURE.md) for auth issues + +### Performance Optimization +1. [Database Performance](DATABASE.md#performance-optimization) +2. [Cache Optimization](ARCHITECTURE.md#caching-system) +3. [Build Optimization](ARCHITECTURE.md#build-system) +4. [Script Performance](SCRIPTING.md#performance-considerations) + +--- + +## 🔗 External Resources + +### Official Links +- **Website:** https://triliumnotes.org +- **Documentation:** https://docs.triliumnotes.org +- **GitHub:** https://github.com/TriliumNext/Trilium +- **Discussions:** https://github.com/TriliumNext/Trilium/discussions +- **Matrix Chat:** https://matrix.to/#/#triliumnext:matrix.org + +### Community Resources +- **Awesome Trilium:** https://github.com/Nriver/awesome-trilium +- **TriliumRocks:** https://trilium.rocks/ +- **Wiki:** https://triliumnext.github.io/Docs/Wiki/ + +### Related Projects +- **TriliumDroid:** https://github.com/FliegendeWurst/TriliumDroid +- **Web Clipper:** Included in main repository + +--- + +## 📝 Documentation Conventions + +### Document Structure +- Overview section +- Table of contents +- Main content with headings +- Code examples where relevant +- "See Also" references + +### Code Examples +```typescript +// TypeScript examples with comments +const example = 'value' +``` + +```sql +-- SQL examples with formatting +SELECT * FROM notes WHERE noteId = ? +``` + +### Cross-References +- Use relative links: `[text](path/to/file.md)` +- Reference sections: `[text](file.md#section)` +- External links: Full URLs + +### Maintenance +- Review on major releases +- Update for architectural changes +- Add examples for new features +- Keep API references current + +--- + +## 🤝 Contributing to Documentation + +### What to Document +- New features and APIs +- Architecture changes +- Migration guides +- Performance tips +- Security considerations + +### How to Contribute +1. Edit markdown files in `docs/` +2. Follow existing structure and style +3. Include code examples +4. Test links and formatting +5. Submit pull request + +### Documentation Standards +- Clear, concise language +- Complete code examples +- Proper markdown formatting +- Cross-references to related docs +- Updated version numbers + +--- + +## 📅 Version Information + +- **Documentation Version:** 0.99.3 +- **Last Updated:** November 2025 +- **Trilium Version:** 0.99.3+ +- **Next Review:** When major architectural changes occur + +--- + +## 💡 Getting Help + +### For Users +- [User Guide](User%20Guide/User%20Guide/) +- [GitHub Discussions](https://github.com/TriliumNext/Trilium/discussions) +- [Matrix Chat](https://matrix.to/#/#triliumnext:matrix.org) + +### For Developers +- [Developer Guide](Developer%20Guide/Developer%20Guide/) +- [Architecture Docs](ARCHITECTURE.md) +- [GitHub Issues](https://github.com/TriliumNext/Trilium/issues) + +### For Contributors +- [Contributing Guidelines](../README.md#-contribute) +- [Code of Conduct](../CODE_OF_CONDUCT) +- [Developer Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) + +--- + +**Maintained by:** TriliumNext Team +**License:** AGPL-3.0-only +**Repository:** https://github.com/TriliumNext/Trilium From 5b8bb8587d850d32137dd03ebae2742a22228f12 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:00:54 +0000 Subject: [PATCH 070/136] Address code review feedback - add logging and constant for virtual branches Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- apps/client/src/widgets/dialogs/branch_prefix.tsx | 5 ++++- apps/server/src/routes/api/branches.ts | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/apps/client/src/widgets/dialogs/branch_prefix.tsx b/apps/client/src/widgets/dialogs/branch_prefix.tsx index 4a1c025b0..26f6f0dff 100644 --- a/apps/client/src/widgets/dialogs/branch_prefix.tsx +++ b/apps/client/src/widgets/dialogs/branch_prefix.tsx @@ -12,6 +12,9 @@ import { useTriliumEvent } from "../react/hooks.jsx"; import FBranch from "../../entities/fbranch.js"; import type { ContextMenuCommandData } from "../../components/app_context.js"; +// Virtual branches (e.g., from search results) start with this prefix +const VIRTUAL_BRANCH_PREFIX = "virt-"; + export default function BranchPrefixDialog() { const [ shown, setShown ] = useState(false); const [ branches, setBranches ] = useState([]); @@ -23,7 +26,7 @@ export default function BranchPrefixDialog() { if (data?.selectedOrActiveBranchIds && data.selectedOrActiveBranchIds.length > 0) { // Multi-select mode from tree context menu - branchIds = data.selectedOrActiveBranchIds.filter((branchId) => !branchId.startsWith("virt-")); + branchIds = data.selectedOrActiveBranchIds.filter((branchId) => !branchId.startsWith(VIRTUAL_BRANCH_PREFIX)); } else { // Single branch mode from keyboard shortcut or when no selection const notePath = appContext.tabManager.getActiveContextNotePath(); diff --git a/apps/server/src/routes/api/branches.ts b/apps/server/src/routes/api/branches.ts index 86699f5ba..977fd34a7 100644 --- a/apps/server/src/routes/api/branches.ts +++ b/apps/server/src/routes/api/branches.ts @@ -278,18 +278,22 @@ function setPrefixBatch(req: Request) { } const normalizedPrefix = utils.isEmptyOrWhitespace(prefix) ? null : prefix; + let updatedCount = 0; for (const branchId of branchIds) { const branch = becca.getBranch(branchId); if (branch) { branch.prefix = normalizedPrefix; branch.save(); + updatedCount++; + } else { + log.info(`Branch ${branchId} not found, skipping prefix update`); } } return { success: true, - count: branchIds.length + count: updatedCount }; } From 07fe42d04e3cefc8a4fb9f6f63892199c9e947fa Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:01:17 +0000 Subject: [PATCH 071/136] Add quick reference guide for technical documentation Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- docs/QUICK_REFERENCE.md | 155 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 docs/QUICK_REFERENCE.md diff --git a/docs/QUICK_REFERENCE.md b/docs/QUICK_REFERENCE.md new file mode 100644 index 000000000..396cc0dd6 --- /dev/null +++ b/docs/QUICK_REFERENCE.md @@ -0,0 +1,155 @@ +# Trilium Technical Documentation - Quick Reference + +> **Start here:** [TECHNICAL_DOCUMENTATION.md](TECHNICAL_DOCUMENTATION.md) - Complete index of all documentation + +## 📖 Documentation Files + +| Document | Description | Size | Lines | +|----------|-------------|------|-------| +| [TECHNICAL_DOCUMENTATION.md](TECHNICAL_DOCUMENTATION.md) | Main index and navigation hub | 13KB | 423 | +| [ARCHITECTURE.md](ARCHITECTURE.md) | Complete system architecture | 30KB | 1,016 | +| [DATABASE.md](DATABASE.md) | Database schema and operations | 19KB | 736 | +| [SYNCHRONIZATION.md](SYNCHRONIZATION.md) | Sync protocol and implementation | 14KB | 583 | +| [SCRIPTING.md](SCRIPTING.md) | User scripting system guide | 17KB | 734 | +| [SECURITY_ARCHITECTURE.md](SECURITY_ARCHITECTURE.md) | Security implementation details | 19KB | 834 | + +**Total:** 112KB of comprehensive documentation across 4,326 lines! + +## 🎯 Quick Access by Role + +### 👤 End Users +- **Getting Started:** [User Guide](User%20Guide/User%20Guide/) +- **Scripting:** [SCRIPTING.md](SCRIPTING.md) +- **Sync Setup:** [SYNCHRONIZATION.md](SYNCHRONIZATION.md) + +### 💻 Developers +- **Architecture:** [ARCHITECTURE.md](ARCHITECTURE.md) +- **Development Setup:** [Developer Guide](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) +- **Database:** [DATABASE.md](DATABASE.md) + +### 🔒 Security Auditors +- **Security:** [SECURITY_ARCHITECTURE.md](SECURITY_ARCHITECTURE.md) +- **Encryption:** [SECURITY_ARCHITECTURE.md#encryption](SECURITY_ARCHITECTURE.md#encryption) +- **Auth:** [SECURITY_ARCHITECTURE.md#authentication](SECURITY_ARCHITECTURE.md#authentication) + +### 🏗️ System Architects +- **Overall Design:** [ARCHITECTURE.md](ARCHITECTURE.md) +- **Cache System:** [ARCHITECTURE.md#three-layer-cache-system](ARCHITECTURE.md#three-layer-cache-system) +- **Entity Model:** [ARCHITECTURE.md#entity-system](ARCHITECTURE.md#entity-system) + +### 🔧 DevOps Engineers +- **Server Installation:** [User Guide - Server Installation](User%20Guide/User%20Guide/Installation%20&%20Setup/Server%20Installation.md) +- **Docker:** [Developer Guide - Docker](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Docker.md) +- **Sync Server:** [SYNCHRONIZATION.md#sync-server-configuration](SYNCHRONIZATION.md#sync-server-configuration) + +### 📊 Database Administrators +- **Schema:** [DATABASE.md#database-schema](DATABASE.md#database-schema) +- **Maintenance:** [DATABASE.md#database-maintenance](DATABASE.md#database-maintenance) +- **Performance:** [DATABASE.md#performance-optimization](DATABASE.md#performance-optimization) + +## 🔍 Quick Topic Finder + +### Core Concepts +- **Becca Cache:** [ARCHITECTURE.md#1-becca-backend-cache](ARCHITECTURE.md#1-becca-backend-cache) +- **Froca Cache:** [ARCHITECTURE.md#2-froca-frontend-cache](ARCHITECTURE.md#2-froca-frontend-cache) +- **Entity System:** [ARCHITECTURE.md#entity-system](ARCHITECTURE.md#entity-system) +- **Widget System:** [ARCHITECTURE.md#widget-based-ui](ARCHITECTURE.md#widget-based-ui) + +### Database +- **Schema Overview:** [DATABASE.md#schema-overview](DATABASE.md#schema-overview) +- **Notes Table:** [DATABASE.md#notes-table](DATABASE.md#notes-table) +- **Branches Table:** [DATABASE.md#branches-table](DATABASE.md#branches-table) +- **Migrations:** [DATABASE.md#database-migrations](DATABASE.md#database-migrations) + +### Synchronization +- **Sync Protocol:** [SYNCHRONIZATION.md#sync-protocol](SYNCHRONIZATION.md#sync-protocol) +- **Conflict Resolution:** [SYNCHRONIZATION.md#conflict-resolution](SYNCHRONIZATION.md#conflict-resolution) +- **Entity Changes:** [SYNCHRONIZATION.md#entity-changes](SYNCHRONIZATION.md#entity-changes) + +### Scripting +- **Frontend Scripts:** [SCRIPTING.md#frontend-scripts](SCRIPTING.md#frontend-scripts) +- **Backend Scripts:** [SCRIPTING.md#backend-scripts](SCRIPTING.md#backend-scripts) +- **Script Examples:** [SCRIPTING.md#script-examples](SCRIPTING.md#script-examples) +- **API Reference:** [SCRIPTING.md#script-api](SCRIPTING.md#script-api) + +### Security +- **Authentication:** [SECURITY_ARCHITECTURE.md#authentication](SECURITY_ARCHITECTURE.md#authentication) +- **Encryption:** [SECURITY_ARCHITECTURE.md#encryption](SECURITY_ARCHITECTURE.md#encryption) +- **Input Sanitization:** [SECURITY_ARCHITECTURE.md#input-sanitization](SECURITY_ARCHITECTURE.md#input-sanitization) +- **Best Practices:** [SECURITY_ARCHITECTURE.md#security-best-practices](SECURITY_ARCHITECTURE.md#security-best-practices) + +## 📚 Learning Paths + +### New to Trilium Development +1. Read [ARCHITECTURE.md](ARCHITECTURE.md) - System overview +2. Setup environment: [Environment Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) +3. Explore [DATABASE.md](DATABASE.md) - Understand data model +4. Check [Developer Guide](Developer%20Guide/Developer%20Guide/) + +### Want to Create Scripts +1. Read [SCRIPTING.md](SCRIPTING.md) - Complete guide +2. Check [Script API](Script%20API/) - API reference +3. Review examples: [SCRIPTING.md#script-examples](SCRIPTING.md#script-examples) +4. Explore [Advanced Showcases](https://triliumnext.github.io/Docs/Wiki/advanced-showcases) + +### Setting Up Sync +1. Understand protocol: [SYNCHRONIZATION.md](SYNCHRONIZATION.md) +2. Configure server: [SYNCHRONIZATION.md#sync-server-configuration](SYNCHRONIZATION.md#sync-server-configuration) +3. Setup clients: [SYNCHRONIZATION.md#client-setup](SYNCHRONIZATION.md#client-setup) +4. Troubleshoot: [SYNCHRONIZATION.md#troubleshooting](SYNCHRONIZATION.md#troubleshooting) + +### Security Review +1. Read threat model: [SECURITY_ARCHITECTURE.md#threat-model](SECURITY_ARCHITECTURE.md#threat-model) +2. Review authentication: [SECURITY_ARCHITECTURE.md#authentication](SECURITY_ARCHITECTURE.md#authentication) +3. Check encryption: [SECURITY_ARCHITECTURE.md#encryption](SECURITY_ARCHITECTURE.md#encryption) +4. Verify best practices: [SECURITY_ARCHITECTURE.md#security-best-practices](SECURITY_ARCHITECTURE.md#security-best-practices) + +## 🗺️ Documentation Map + +``` +docs/ +├── TECHNICAL_DOCUMENTATION.md ← START HERE (Index) +│ +├── Core Technical Docs +│ ├── ARCHITECTURE.md (System design) +│ ├── DATABASE.md (Data layer) +│ ├── SYNCHRONIZATION.md (Sync system) +│ ├── SCRIPTING.md (User scripting) +│ └── SECURITY_ARCHITECTURE.md (Security) +│ +├── Developer Guide/ +│ └── Developer Guide/ (Development setup) +│ +├── User Guide/ +│ └── User Guide/ (End-user docs) +│ +└── Script API/ (API reference) +``` + +## 💡 Tips for Reading Documentation + +1. **Start with the index:** [TECHNICAL_DOCUMENTATION.md](TECHNICAL_DOCUMENTATION.md) provides an overview +2. **Use search:** Press Ctrl+F / Cmd+F to find specific topics +3. **Follow links:** Documents are cross-referenced for easy navigation +4. **Code examples:** Most docs include practical code examples +5. **See Also sections:** Check bottom of each doc for related resources + +## 🔗 External Resources + +- **Website:** https://triliumnotes.org +- **Online Docs:** https://docs.triliumnotes.org +- **GitHub:** https://github.com/TriliumNext/Trilium +- **Discussions:** https://github.com/TriliumNext/Trilium/discussions +- **Matrix Chat:** https://matrix.to/#/#triliumnext:matrix.org + +## 🤝 Contributing to Documentation + +Found an error or want to improve the docs? See: +- [Contributing Guide](../README.md#-contribute) +- [Documentation Standards](TECHNICAL_DOCUMENTATION.md#documentation-conventions) + +--- + +**Version:** 0.99.3 +**Last Updated:** November 2025 +**Maintained by:** TriliumNext Team From cf406383c306d83bcba5ace3c7e7181bade52e20 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:01:44 +0000 Subject: [PATCH 072/136] Standardize spelling to American English (behavior, categorizing) Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- docs/User Guide/User Guide/Advanced Usage/Attributes.md | 4 ++-- .../Basic Concepts and Features/UI Elements/Ribbon.md | 2 +- docs/User Guide/User Guide/Collections.md | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/User Guide/User Guide/Advanced Usage/Attributes.md b/docs/User Guide/User Guide/Advanced Usage/Attributes.md index 1cfe040d8..89d397e33 100644 --- a/docs/User Guide/User Guide/Advanced Usage/Attributes.md +++ b/docs/User Guide/User Guide/Advanced Usage/Attributes.md @@ -3,14 +3,14 @@ In Trilium, attributes are key-value pairs assigned to notes, providing additional metadata or functionality. There are two primary types of attributes: -1. Labels can be used for a variety of purposes, such as storing metadata or configuring the behaviour of notes. Labels are also searchable, enhancing note retrieval. +1. Labels can be used for a variety of purposes, such as storing metadata or configuring the behavior of notes. Labels are also searchable, enhancing note retrieval. For more information, including predefined labels, see Labels. 2. Relations define connections between notes, similar to links. These can be used for metadata and scripting purposes. For more information, including a list of predefined relations, see Relations. -These attributes play a crucial role in organizing, categorising, and enhancing the functionality of notes. +These attributes play a crucial role in organizing, categorizing, and enhancing the functionality of notes. ## Viewing the list of attributes diff --git a/docs/User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon.md b/docs/User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon.md index 8fd7e37d2..5cbfc0ff3 100644 --- a/docs/User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon.md +++ b/docs/User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon.md @@ -20,7 +20,7 @@ If you are using the _Fixed_ formatting toolbar, all the formatting buttons for * As a more advanced use, it's possible to change the note type in order to modify the [source code](../../Advanced%20Usage/Note%20source.md) of a note. * _**Protect the note**_ toggles whether the current note is encrypted and accessible only by entering the protected session. See [Protected Notes](../Notes/Protected%20Notes.md) for more information. * _**Editable**_ changes whether the current note: - * Enters [read-only mode](../Notes/Read-Only%20Notes.md) automatically if the note is too big (default behaviour). + * Enters [read-only mode](../Notes/Read-Only%20Notes.md) automatically if the note is too big (default behavior). * Is always in read-only mode (however it can still be edited temporarily). * Is always editable, regardless of its size. * _**Bookmark**_ toggles the display of the current note into the [Launch Bar](Launch%20Bar.md) for easy access. See [Bookmarks](../Navigation/Bookmarks.md) for more information. diff --git a/docs/User Guide/User Guide/Collections.md b/docs/User Guide/User Guide/Collections.md index b80bc49d8..3f79ca071 100644 --- a/docs/User Guide/User Guide/Collections.md +++ b/docs/User Guide/User Guide/Collections.md @@ -28,7 +28,7 @@ To change the configuration of a collection or even switch to a different collec ## Archived notes -By default, [archived notes](Basic%20Concepts%20and%20Features/Notes/Archived%20Notes.md) will not be shown in collections. This behaviour can be changed by going to _Collection Properties_ in the Ribbon and checking _Show archived notes_. +By default, [archived notes](Basic%20Concepts%20and%20Features/Notes/Archived%20Notes.md) will not be shown in collections. This behavior can be changed by going to _Collection Properties_ in the Ribbon and checking _Show archived notes_. Archived notes will be generally indicated by being greyed out as opposed to the normal ones. From a62c9a1a2f2c70bcfd95aa58f888ea7faec29a01 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:03:29 +0000 Subject: [PATCH 073/136] Fix broken wiki-style link in Scripting.md Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- docs/User Guide/User Guide/Scripting.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/User Guide/User Guide/Scripting.md b/docs/User Guide/User Guide/Scripting.md index 16146aef2..e22bf49a5 100644 --- a/docs/User Guide/User Guide/Scripting.md +++ b/docs/User Guide/User Guide/Scripting.md @@ -8,7 +8,7 @@ To go further I must explain basic architecture of Trilium - in its essence it i * frontend running in the browser (using HTML, CSS, JavaScript) - this is mainly used to interact with the user, display notes etc. * backend running JavaScript code in node.js runtime - this is responsible for e.g. storing notes, encrypting them etc. -So we have frontend and backend, each with their own set of responsibilities, but their common feature is that they both run JavaScript code. Add to this the fact, that we're able to create JavaScript \[\[code notes\]\] and we're onto something. +So we have frontend and backend, each with their own set of responsibilities, but their common feature is that they both run JavaScript code. Add to this the fact, that we're able to create JavaScript code notes and we're onto something. ## Use cases From ff4cd7eae5d5f62ff65f767cd71d73dc21f6d502 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:04:34 +0000 Subject: [PATCH 074/136] =?UTF-8?q?Fix=20grammar:=20'type=20of=20notes'=20?= =?UTF-8?q?=E2=86=92=20'type=20of=20note'=20in=20Collections.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- docs/User Guide/User Guide/Collections.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/User Guide/User Guide/Collections.md b/docs/User Guide/User Guide/Collections.md index 3f79ca071..3a9fc9728 100644 --- a/docs/User Guide/User Guide/Collections.md +++ b/docs/User Guide/User Guide/Collections.md @@ -1,5 +1,5 @@ # Collections -Collections are a unique type of notes that don't have content, but instead display their child notes in various presentation methods. +Collections are a unique type of note that don't have content, but instead display their child notes in various presentation methods. ## Main collections From 82e5de22619ca7a933fc81242f0205de0f646453 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:06:14 +0000 Subject: [PATCH 075/136] Add input validation for prefix to address security concerns Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- apps/server/src/routes/api/branches.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/server/src/routes/api/branches.ts b/apps/server/src/routes/api/branches.ts index 977fd34a7..73ce03a7a 100644 --- a/apps/server/src/routes/api/branches.ts +++ b/apps/server/src/routes/api/branches.ts @@ -277,6 +277,11 @@ function setPrefixBatch(req: Request) { throw new ValidationError("branchIds must be an array"); } + // Validate that prefix is a string or null/undefined to prevent prototype pollution + if (prefix !== null && prefix !== undefined && typeof prefix !== 'string') { + throw new ValidationError("prefix must be a string or null"); + } + const normalizedPrefix = utils.isEmptyOrWhitespace(prefix) ? null : prefix; let updatedCount = 0; From 0c6a57d3bb36a6eb92fc82c98f9f30c2c1d06c0a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:18:49 +0000 Subject: [PATCH 076/136] Fix documentation build system - resolve becca module instance issue Fixed the issue where multiple becca instances were being created due to inconsistent module import paths. The solution was to export becca from becca_loader and access it from there, ensuring a single instance is used throughout the build process. Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- apps/build-docs/src/build-docs.ts | 13 ++- apps/server/src/becca/becca_loader.ts | 3 +- .../ckeditor5-admonition/sample/ckeditor.d.ts | 7 ++ .../ckeditor5-admonition/sample/ckeditor.js | 81 +++++++++++++++++++ .../sample/ckeditor.js.map | 1 + .../src/admonition.js.map | 1 + .../src/admonitionautoformat.js.map | 1 + .../src/admonitioncommand.js.map | 1 + .../src/admonitionediting.js.map | 1 + .../src/admonitionui.js.map | 1 + .../src/augmentation.js.map | 1 + .../ckeditor5-admonition/src/index.js.map | 1 + .../ckeditor5-footnotes/sample/ckeditor.d.ts | 7 ++ .../ckeditor5-footnotes/sample/ckeditor.js | 81 +++++++++++++++++++ .../sample/ckeditor.js.map | 1 + .../src/augmentation.js.map | 1 + .../ckeditor5-footnotes/src/constants.js.map | 1 + .../footnote-editing/auto-formatting.js.map | 1 + .../src/footnote-editing/converters.js.map | 1 + .../footnote-editing/footnote-editing.js.map | 1 + .../src/footnote-editing/schema.js.map | 1 + .../src/footnote-ui.js.map | 1 + .../ckeditor5-footnotes/src/footnotes.js.map | 1 + packages/ckeditor5-footnotes/src/index.js.map | 1 + .../src/insert-footnote-command.js.map | 1 + packages/ckeditor5-footnotes/src/utils.js.map | 1 + .../sample/ckeditor.d.ts | 7 ++ .../sample/ckeditor.js | 81 +++++++++++++++++++ .../sample/ckeditor.js.map | 1 + .../src/augmentation.js.map | 1 + .../src/index.js.map | 1 + .../ckeditor5-keyboard-marker/src/kbd.js.map | 1 + .../src/kbdediting.js.map | 1 + .../src/kbdui.js.map | 1 + packages/ckeditor5-math/sample/ckeditor.d.ts | 7 ++ packages/ckeditor5-math/sample/ckeditor.js | 81 +++++++++++++++++++ .../ckeditor5-math/sample/ckeditor.js.map | 1 + .../ckeditor5-math/src/augmentation.js.map | 1 + .../ckeditor5-math/src/autoformatmath.js.map | 1 + packages/ckeditor5-math/src/automath.js.map | 1 + packages/ckeditor5-math/src/index.js.map | 1 + packages/ckeditor5-math/src/math.js.map | 1 + .../ckeditor5-math/src/mathcommand.js.map | 1 + .../ckeditor5-math/src/mathediting.js.map | 1 + packages/ckeditor5-math/src/mathui.js.map | 1 + .../src/typings-external.js.map | 1 + .../ckeditor5-math/src/ui/mainformview.js.map | 1 + .../ckeditor5-math/src/ui/mathview.js.map | 1 + packages/ckeditor5-math/src/utils.js.map | 1 + .../ckeditor5-mermaid/sample/ckeditor.d.ts | 7 ++ packages/ckeditor5-mermaid/sample/ckeditor.js | 81 +++++++++++++++++++ .../ckeditor5-mermaid/sample/ckeditor.js.map | 1 + .../ckeditor5-mermaid/src/augmentation.js.map | 1 + .../src/commands/insertMermaidCommand.js.map | 1 + .../src/commands/mermaidPreviewCommand.js.map | 1 + .../commands/mermaidSourceViewCommand.js.map | 1 + .../commands/mermaidSplitViewCommand.js.map | 1 + packages/ckeditor5-mermaid/src/index.js.map | 1 + packages/ckeditor5-mermaid/src/mermaid.js.map | 1 + .../src/mermaidediting.js.map | 1 + .../src/mermaidtoolbar.js.map | 1 + .../ckeditor5-mermaid/src/mermaidui.js.map | 1 + packages/ckeditor5-mermaid/src/utils.js.map | 1 + .../src/scripts/common/debounce.d.ts | 2 + .../src/scripts/common/debounce.d.ts.map | 1 + .../src/scripts/common/parents.d.ts | 2 + .../src/scripts/common/parents.d.ts.map | 1 + .../src/scripts/common/parsehtml.d.ts | 2 + .../src/scripts/common/parsehtml.d.ts.map | 1 + packages/share-theme/src/scripts/index.d.ts | 3 + .../share-theme/src/scripts/index.d.ts.map | 1 + .../share-theme/src/scripts/modules/api.d.ts | 11 +++ .../src/scripts/modules/api.d.ts.map | 1 + .../src/scripts/modules/expanders.d.ts | 2 + .../src/scripts/modules/expanders.d.ts.map | 1 + .../share-theme/src/scripts/modules/math.d.ts | 3 + .../src/scripts/modules/math.d.ts.map | 1 + .../src/scripts/modules/mermaid.d.ts | 2 + .../src/scripts/modules/mermaid.d.ts.map | 1 + .../src/scripts/modules/mobile.d.ts | 2 + .../src/scripts/modules/mobile.d.ts.map | 1 + .../src/scripts/modules/search.d.ts | 2 + .../src/scripts/modules/search.d.ts.map | 1 + .../src/scripts/modules/theme.d.ts | 8 ++ .../src/scripts/modules/theme.d.ts.map | 1 + .../share-theme/src/scripts/modules/toc.d.ts | 12 +++ .../src/scripts/modules/toc.d.ts.map | 1 + packages/share-theme/src/scripts/test.d.ts | 2 + .../share-theme/src/scripts/test.d.ts.map | 1 + 89 files changed, 568 insertions(+), 5 deletions(-) create mode 100644 packages/ckeditor5-admonition/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-admonition/sample/ckeditor.js create mode 100644 packages/ckeditor5-admonition/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-admonition/src/admonition.js.map create mode 100644 packages/ckeditor5-admonition/src/admonitionautoformat.js.map create mode 100644 packages/ckeditor5-admonition/src/admonitioncommand.js.map create mode 100644 packages/ckeditor5-admonition/src/admonitionediting.js.map create mode 100644 packages/ckeditor5-admonition/src/admonitionui.js.map create mode 100644 packages/ckeditor5-admonition/src/augmentation.js.map create mode 100644 packages/ckeditor5-admonition/src/index.js.map create mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.js create mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-footnotes/src/augmentation.js.map create mode 100644 packages/ckeditor5-footnotes/src/constants.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnote-ui.js.map create mode 100644 packages/ckeditor5-footnotes/src/footnotes.js.map create mode 100644 packages/ckeditor5-footnotes/src/index.js.map create mode 100644 packages/ckeditor5-footnotes/src/insert-footnote-command.js.map create mode 100644 packages/ckeditor5-footnotes/src/utils.js.map create mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.js create mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/augmentation.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/index.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/kbd.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/kbdediting.js.map create mode 100644 packages/ckeditor5-keyboard-marker/src/kbdui.js.map create mode 100644 packages/ckeditor5-math/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-math/sample/ckeditor.js create mode 100644 packages/ckeditor5-math/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-math/src/augmentation.js.map create mode 100644 packages/ckeditor5-math/src/autoformatmath.js.map create mode 100644 packages/ckeditor5-math/src/automath.js.map create mode 100644 packages/ckeditor5-math/src/index.js.map create mode 100644 packages/ckeditor5-math/src/math.js.map create mode 100644 packages/ckeditor5-math/src/mathcommand.js.map create mode 100644 packages/ckeditor5-math/src/mathediting.js.map create mode 100644 packages/ckeditor5-math/src/mathui.js.map create mode 100644 packages/ckeditor5-math/src/typings-external.js.map create mode 100644 packages/ckeditor5-math/src/ui/mainformview.js.map create mode 100644 packages/ckeditor5-math/src/ui/mathview.js.map create mode 100644 packages/ckeditor5-math/src/utils.js.map create mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.d.ts create mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.js create mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.js.map create mode 100644 packages/ckeditor5-mermaid/src/augmentation.js.map create mode 100644 packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map create mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map create mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map create mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map create mode 100644 packages/ckeditor5-mermaid/src/index.js.map create mode 100644 packages/ckeditor5-mermaid/src/mermaid.js.map create mode 100644 packages/ckeditor5-mermaid/src/mermaidediting.js.map create mode 100644 packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map create mode 100644 packages/ckeditor5-mermaid/src/mermaidui.js.map create mode 100644 packages/ckeditor5-mermaid/src/utils.js.map create mode 100644 packages/share-theme/src/scripts/common/debounce.d.ts create mode 100644 packages/share-theme/src/scripts/common/debounce.d.ts.map create mode 100644 packages/share-theme/src/scripts/common/parents.d.ts create mode 100644 packages/share-theme/src/scripts/common/parents.d.ts.map create mode 100644 packages/share-theme/src/scripts/common/parsehtml.d.ts create mode 100644 packages/share-theme/src/scripts/common/parsehtml.d.ts.map create mode 100644 packages/share-theme/src/scripts/index.d.ts create mode 100644 packages/share-theme/src/scripts/index.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/api.d.ts create mode 100644 packages/share-theme/src/scripts/modules/api.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/expanders.d.ts create mode 100644 packages/share-theme/src/scripts/modules/expanders.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/math.d.ts create mode 100644 packages/share-theme/src/scripts/modules/math.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/mermaid.d.ts create mode 100644 packages/share-theme/src/scripts/modules/mermaid.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/mobile.d.ts create mode 100644 packages/share-theme/src/scripts/modules/mobile.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/search.d.ts create mode 100644 packages/share-theme/src/scripts/modules/search.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/theme.d.ts create mode 100644 packages/share-theme/src/scripts/modules/theme.d.ts.map create mode 100644 packages/share-theme/src/scripts/modules/toc.d.ts create mode 100644 packages/share-theme/src/scripts/modules/toc.d.ts.map create mode 100644 packages/share-theme/src/scripts/test.d.ts create mode 100644 packages/share-theme/src/scripts/test.d.ts.map diff --git a/apps/build-docs/src/build-docs.ts b/apps/build-docs/src/build-docs.ts index 39a3dd30b..8376878c7 100644 --- a/apps/build-docs/src/build-docs.ts +++ b/apps/build-docs/src/build-docs.ts @@ -20,6 +20,10 @@ async function buildDocsInner() { const sqlInit = (await import("../../server/src/services/sql_init.js")).default; await sqlInit.createInitialDatabase(true); + + // Wait for becca to be loaded before importing data + const beccaLoader = await import("../../server/src/becca/becca_loader.js"); + await beccaLoader.beccaLoaded; const note = await importData(join(__dirname, DOCS_ROOT, "User Guide")); @@ -51,11 +55,12 @@ async function buildDocsInner() { export async function importData(path: string) { const buffer = await createImportZip(path); - const importService = (await import("@triliumnext/server/src/services/import/zip.js")).default; - const TaskContext = (await import("@triliumnext/server/src/services/task_context.js")).default; + const importService = (await import("../../server/src/services/import/zip.js")).default; + const TaskContext = (await import("../../server/src/services/task_context.js")).default; const context = new TaskContext("no-progress-reporting", "importNotes", null); - const becca = (await import("@triliumnext/server/src/becca/becca.js")).default; - + const beccaLoader = (await import("../../server/src/becca/becca_loader.js")).default; + const becca = beccaLoader.becca; + const rootNote = becca.getRoot(); if (!rootNote) { throw new Error("Missing root note for import."); diff --git a/apps/server/src/becca/becca_loader.ts b/apps/server/src/becca/becca_loader.ts index f7faf1309..13d99f357 100644 --- a/apps/server/src/becca/becca_loader.ts +++ b/apps/server/src/becca/becca_loader.ts @@ -293,5 +293,6 @@ eventService.subscribeBeccaLoader(eventService.LEAVE_PROTECTED_SESSION, load); export default { load, reload, - beccaLoaded + beccaLoaded, + becca }; diff --git a/packages/ckeditor5-admonition/sample/ckeditor.d.ts b/packages/ckeditor5-admonition/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-admonition/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-admonition/sample/ckeditor.js b/packages/ckeditor5-admonition/sample/ckeditor.js new file mode 100644 index 000000000..d61e2e416 --- /dev/null +++ b/packages/ckeditor5-admonition/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Admonition from '../src/admonition.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Admonition, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'admonition', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-admonition/sample/ckeditor.js.map b/packages/ckeditor5-admonition/sample/ckeditor.js.map new file mode 100644 index 000000000..ca410d012 --- /dev/null +++ b/packages/ckeditor5-admonition/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,UAAU,MAAM,sBAAsB,CAAC;AAE9C,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,UAAU;QACV,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,YAAY;QACZ,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonition.js.map b/packages/ckeditor5-admonition/src/admonition.js.map new file mode 100644 index 000000000..6d951e1d8 --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonition.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonition.js","sourceRoot":"","sources":["admonition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,iBAAiB,EAAE,YAAY,EAAE,oBAAoB,CAAW,CAAC;IAC3E,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionautoformat.js.map b/packages/ckeditor5-admonition/src/admonitionautoformat.js.map new file mode 100644 index 000000000..89440d086 --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonitionautoformat.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonitionautoformat.js","sourceRoot":"","sources":["admonitionautoformat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1E,SAAS,sBAAsB,CAAC,KAAuB;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;IACR,CAAC;IAED,IAAK,gBAAsC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC,CAAC,CAAmB,CAAC;IACnC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,MAAM;IAEvD,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,UAAU,CAAE,CAAC;IACvB,CAAC;IAED,SAAS;QACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,OAAO;QACR,CAAC;QAED,MAAM,QAAQ,GAAI,IAAY,CAAC;QAC/B,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;YAChF,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAE3C,IAAI,IAAI,EAAE,CAAC;gBACV,4DAA4D;gBAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACP,qFAAqF;gBACrF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAClC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;gBACrE,CAAC;YACF,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitioncommand.js.map b/packages/ckeditor5-admonition/src/admonitioncommand.js.map new file mode 100644 index 000000000..c92080a67 --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonitioncommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonitioncommand.js","sourceRoot":"","sources":["admonitioncommand.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionediting.js.map b/packages/ckeditor5-admonition/src/admonitionediting.js.map new file mode 100644 index 000000000..ac02c16ad --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonitionediting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonitionediting.js","sourceRoot":"","sources":["admonitionediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionui.js.map b/packages/ckeditor5-admonition/src/admonitionui.js.map new file mode 100644 index 000000000..4ac94e179 --- /dev/null +++ b/packages/ckeditor5-admonition/src/admonitionui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admonitionui.js","sourceRoot":"","sources":["admonitionui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/augmentation.js.map b/packages/ckeditor5-admonition/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-admonition/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/index.js.map b/packages/ckeditor5-admonition/src/index.js.map new file mode 100644 index 000000000..ebdd4b71d --- /dev/null +++ b/packages/ckeditor5-admonition/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,mCAAmC,CAAC;AAC/D,OAAO,mBAAmB,CAAC;AAC3B,OAAO,yBAAyB,CAAC;AAEjC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG5E,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,cAAc;CACd,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.d.ts b/packages/ckeditor5-footnotes/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-footnotes/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.js b/packages/ckeditor5-footnotes/sample/ckeditor.js new file mode 100644 index 000000000..77a18d9fd --- /dev/null +++ b/packages/ckeditor5-footnotes/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Footnotes from '../src/footnotes.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Footnotes, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'footnotes', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.js.map b/packages/ckeditor5-footnotes/sample/ckeditor.js.map new file mode 100644 index 000000000..6f02908e9 --- /dev/null +++ b/packages/ckeditor5-footnotes/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAE5C,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,SAAS;QACT,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,WAAW;QACX,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/augmentation.js.map b/packages/ckeditor5-footnotes/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/constants.js.map b/packages/ckeditor5-footnotes/src/constants.js.map new file mode 100644 index 000000000..06bd57032 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/constants.js.map @@ -0,0 +1 @@ +{"version":3,"file":"constants.js","sourceRoot":"","sources":["constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC;AACjD,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAEnD,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,YAAY,EAAE,cAAc;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;CACpC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG;IACtB,eAAe,EAAE,kBAAkB;IACnC,YAAY,EAAE,eAAe;IAC7B,iBAAiB,EAAE,oBAAoB;IACvC,eAAe,EAAE,kBAAkB;IACnC,gBAAgB,EAAE,oBAAoB;IACtC,SAAS,EAAE,WAAW,EAAE,6DAA6D;IACrF,MAAM,EAAE,QAAQ;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,cAAc,EAAE,gBAAgB;CAChC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACzB,eAAe,EAAE,uBAAuB;IACxC,UAAU,EAAE,kBAAkB;IAC9B,aAAa,EAAE,qBAAqB;IACpC,YAAY,EAAE,oBAAoB;IAClC,iBAAiB,EAAE,yBAAyB;IAC5C,eAAe,EAAE,uBAAuB;IACxC,gBAAgB,EAAE,yBAAyB;IAC3C,oBAAoB,EAAE,8BAA8B;CACpD,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map new file mode 100644 index 000000000..e5a24d9f6 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auto-formatting.js","sourceRoot":"","sources":["auto-formatting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map new file mode 100644 index 000000000..8d92168fe --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map @@ -0,0 +1 @@ +{"version":3,"file":"converters.js","sourceRoot":"","sources":["converters.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map new file mode 100644 index 000000000..45a94eb8a --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map @@ -0,0 +1 @@ +{"version":3,"file":"footnote-editing.js","sourceRoot":"","sources":["footnote-editing.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map new file mode 100644 index 000000000..e10b42239 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map @@ -0,0 +1 @@ +{"version":3,"file":"schema.js","sourceRoot":"","sources":["schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAE,MAAmB,EAAS,EAAE;IAC3D;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,EAAE;QAC1C,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,OAAO;QAChB,aAAa,EAAE,QAAQ,CAAC,YAAY;QACpC,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,CAAE;KAC/C,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,YAAY,EAAE;QACvC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAE;KAChG,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,EAAE;QAC1C,OAAO,EAAE,QAAQ,CAAC,YAAY;QAC9B,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,CAAE;KAC/C,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,iBAAiB,EAAE;QAC5C,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,CAAE,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAE;KAClG,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,gBAAgB,EAAE;QAC3C,OAAO,EAAE,QAAQ,CAAC,YAAY;QAC9B,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,CAAE,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,UAAU,CAAE;KACvE,CAAE,CAAC;IAEJ,MAAM,CAAC,aAAa,CAAE,CAAE,OAAO,EAAE,eAAe,EAAG,EAAE;QACpD,IAAK,OAAO,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,CAAE,IAAI,eAAe,CAAC,IAAI,KAAK,QAAQ,CAAC,eAAe,EAAG,CAAC;YACzG,OAAO,KAAK,CAAC;QACd,CAAC;QACD,IAAK,OAAO,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,CAAE,IAAI,eAAe,CAAC,IAAI,KAAK,UAAU,EAAG,CAAC;YAC3F,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC,CAAE,CAAC;AACL,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-ui.js.map b/packages/ckeditor5-footnotes/src/footnote-ui.js.map new file mode 100644 index 000000000..756c97e42 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnote-ui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"footnote-ui.js","sourceRoot":"","sources":["footnote-ui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnotes.js.map b/packages/ckeditor5-footnotes/src/footnotes.js.map new file mode 100644 index 000000000..8f266e255 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/footnotes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"footnotes.js","sourceRoot":"","sources":["footnotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAE1C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,MAAM;IACrC,MAAM,KAAK,UAAU;QAC3B,OAAO,WAAoB,CAAC;IAC7B,CAAC;IAEM,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,eAAe,EAAE,UAAU,CAAW,CAAC;IACjD,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/index.js.map b/packages/ckeditor5-footnotes/src/index.js.map new file mode 100644 index 000000000..cfaafa124 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,0CAA0C,CAAC;AAC1E,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,kBAAkB;CAClB,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map b/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map new file mode 100644 index 000000000..441d6a4e4 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map @@ -0,0 +1 @@ +{"version":3,"file":"insert-footnote-command.js","sourceRoot":"","sources":["insert-footnote-command.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/utils.js.map b/packages/ckeditor5-footnotes/src/utils.js.map new file mode 100644 index 000000000..d80b38c11 --- /dev/null +++ b/packages/ckeditor5-footnotes/src/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts b/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js new file mode 100644 index 000000000..850bb57e8 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Kbd from '../src/kbd.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Kbd, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'keyboardMarker', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map new file mode 100644 index 000000000..4b6fa9283 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,GAAG,MAAM,eAAe,CAAC;AAEhC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,GAAG;QACH,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,gBAAgB;QAChB,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/augmentation.js.map b/packages/ckeditor5-keyboard-marker/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/index.js.map b/packages/ckeditor5-keyboard-marker/src/index.js.map new file mode 100644 index 000000000..8493287a6 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,OAAO;CACP,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbd.js.map b/packages/ckeditor5-keyboard-marker/src/kbd.js.map new file mode 100644 index 000000000..3dc6dcb3e --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/kbd.js.map @@ -0,0 +1 @@ +{"version":3,"file":"kbd.js","sourceRoot":"","sources":["kbd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,MAAM;IAEtC,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,UAAU,EAAE,KAAK,CAAE,CAAC;IAC9B,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,KAAc,CAAC;IACvB,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map b/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map new file mode 100644 index 000000000..d92aebc98 --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"kbdediting.js","sourceRoot":"","sources":["kbdediting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAErD,MAAM,GAAG,GAAG,KAAK,CAAC;AAElB;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,qCAAqC;QACrC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAE,OAAO,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,CAAE,CAAC;QAChE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAE,GAAG,EAAE;YAChD,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;SACjB,CAAE,CAAC;QAEJ,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAE;YACrC,KAAK,EAAE,GAAG;YACV,IAAI,EAAE,GAAG;SACT,CAAE,CAAC;QAEJ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,GAAG,EAAE,IAAI,gBAAgB,CAAE,MAAM,EAAE,GAAG,CAAE,CAAE,CAAC;QAChE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAE,YAAY,EAAE,GAAG,CAAE,CAAC;IAC5C,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbdui.js.map b/packages/ckeditor5-keyboard-marker/src/kbdui.js.map new file mode 100644 index 000000000..36e50266b --- /dev/null +++ b/packages/ckeditor5-keyboard-marker/src/kbdui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"kbdui.js","sourceRoot":"","sources":["kbdui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,OAAO,MAAM,4BAA4B,CAAC;AAEjD,MAAM,GAAG,GAAG,KAAK,CAAC;AAElB;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,MAAM;IAEjC,MAAM,KAAK,UAAU;QAC3B,OAAO,OAAgB,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QAEnB,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAE,GAAG,EAAE,MAAM,CAAC,EAAE;YAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,GAAG,CAAsB,CAAC;YAC/D,MAAM,IAAI,GAAG,IAAI,UAAU,CAAE,MAAM,CAAE,CAAC;YAEtC,IAAI,CAAC,GAAG,CAAE;gBACT,KAAK,EAAE,CAAC,CAAE,mBAAmB,CAAE;gBAC/B,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,YAAY;gBACvB,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,IAAI;aAClB,CAAE,CAAC;YAEJ,IAAI,CAAC,IAAI,CAAE,MAAM,EAAE,WAAW,CAAE,CAAC,EAAE,CAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAE,CAAC;YAErE,mBAAmB;YACnB,IAAI,CAAC,QAAQ,CAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE;gBACpC,MAAM,CAAC,OAAO,CAAE,GAAG,CAAE,CAAC;gBACtB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAE,CAAC;YAEJ,OAAO,IAAI,CAAC;QACb,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/sample/ckeditor.d.ts b/packages/ckeditor5-math/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-math/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-math/sample/ckeditor.js b/packages/ckeditor5-math/sample/ckeditor.js new file mode 100644 index 000000000..370a359aa --- /dev/null +++ b/packages/ckeditor5-math/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Math from '../src/math.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Math, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'math', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-math/sample/ckeditor.js.map b/packages/ckeditor5-math/sample/ckeditor.js.map new file mode 100644 index 000000000..253baa75e --- /dev/null +++ b/packages/ckeditor5-math/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,IAAI;QACJ,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,MAAM;QACN,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/augmentation.js.map b/packages/ckeditor5-math/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-math/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/autoformatmath.js.map b/packages/ckeditor5-math/src/autoformatmath.js.map new file mode 100644 index 000000000..7fa8b54a2 --- /dev/null +++ b/packages/ckeditor5-math/src/autoformatmath.js.map @@ -0,0 +1 @@ +{"version":3,"file":"autoformatmath.js","sourceRoot":"","sources":["autoformatmath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACvE,4FAA4F;AAC5F,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAC1C,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,IAAI,EAAE,YAAY,CAAW,CAAC;IACxC,CAAC;IAED;;OAEG;IACI,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,IAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,MAAM,CAAE,EAAG,CAAC;YACrC,UAAU,CAAE,iCAAiC,EAAE,MAAM,CAAE,CAAC;QACzD,CAAC;IACF,CAAC;IAEM,SAAS;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,MAAM,CAAE,CAAC;QAE9C,IAAK,OAAO,YAAY,WAAW,EAAG,CAAC;YACtC,MAAM,QAAQ,GAAG,GAAG,EAAE;gBACrB,IAAK,CAAC,OAAO,CAAC,SAAS,EAAG,CAAC;oBAC1B,OAAO,KAAK,CAAC;gBACd,CAAC;gBAED,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;gBAEvB,mCAAmC;gBACnC,MAAM,CAAC,UAAU,CAChB,GAAG,EAAE;oBACJ,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,QAAQ,CAAE,CAAC;oBACtD,IAAK,cAAc,YAAY,MAAM,EAAG,CAAC;wBACxC,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC1B,CAAC;gBACF,CAAC,EACD,EAAE,CACF,CAAC;YACH,CAAC,CAAC;YAEF,wHAAwH;YACxH,sBAAsB,CAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAE,CAAC;YAC3D,wHAAwH;YACxH,sBAAsB,CAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAE,CAAC;QAC5D,CAAC;IACF,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,gBAAyB,CAAC;IAClC,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/automath.js.map b/packages/ckeditor5-math/src/automath.js.map new file mode 100644 index 000000000..80183ef09 --- /dev/null +++ b/packages/ckeditor5-math/src/automath.js.map @@ -0,0 +1 @@ +{"version":3,"file":"automath.js","sourceRoot":"","sources":["automath.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/index.js.map b/packages/ckeditor5-math/src/index.js.map new file mode 100644 index 000000000..aaf6b7ac6 --- /dev/null +++ b/packages/ckeditor5-math/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,QAAQ;CACR,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/math.js.map b/packages/ckeditor5-math/src/math.js.map new file mode 100644 index 000000000..a7a614dc4 --- /dev/null +++ b/packages/ckeditor5-math/src/math.js.map @@ -0,0 +1 @@ +{"version":3,"file":"math.js","sourceRoot":"","sources":["math.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,MAAM;IAChC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAW,CAAC;IAC3D,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,MAAe,CAAC;IACxB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathcommand.js.map b/packages/ckeditor5-math/src/mathcommand.js.map new file mode 100644 index 000000000..1d80830c3 --- /dev/null +++ b/packages/ckeditor5-math/src/mathcommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mathcommand.js","sourceRoot":"","sources":["mathcommand.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathediting.js.map b/packages/ckeditor5-math/src/mathediting.js.map new file mode 100644 index 000000000..dbc082614 --- /dev/null +++ b/packages/ckeditor5-math/src/mathediting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mathediting.js","sourceRoot":"","sources":["mathediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathui.js.map b/packages/ckeditor5-math/src/mathui.js.map new file mode 100644 index 000000000..7ba56ce3a --- /dev/null +++ b/packages/ckeditor5-math/src/mathui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mathui.js","sourceRoot":"","sources":["mathui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/typings-external.js.map b/packages/ckeditor5-math/src/typings-external.js.map new file mode 100644 index 000000000..3f121d309 --- /dev/null +++ b/packages/ckeditor5-math/src/typings-external.js.map @@ -0,0 +1 @@ +{"version":3,"file":"typings-external.js","sourceRoot":"","sources":["typings-external.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/ui/mainformview.js.map b/packages/ckeditor5-math/src/ui/mainformview.js.map new file mode 100644 index 000000000..f1a361307 --- /dev/null +++ b/packages/ckeditor5-math/src/ui/mainformview.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mainformview.js","sourceRoot":"","sources":["mainformview.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/ui/mathview.js.map b/packages/ckeditor5-math/src/ui/mathview.js.map new file mode 100644 index 000000000..b63bd4e19 --- /dev/null +++ b/packages/ckeditor5-math/src/ui/mathview.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mathview.js","sourceRoot":"","sources":["mathview.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,IAAI;IAYzC,YACC,MAOY,EACZ,QAA6C,EAC7C,MAAc,EACd,UAAkB,EAClB,gBAA+B,EAC/B,kBAAgC;QAEhC,KAAK,CAAE,MAAM,CAAE,CAAC;QAEhB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAEzC,IAAI,CAAC,GAAG,CAAE,OAAO,EAAE,EAAE,CAAE,CAAC;QACxB,IAAI,CAAC,GAAG,CAAE,SAAS,EAAE,KAAK,CAAE,CAAC;QAE7B,IAAI,CAAC,EAAE,CAAE,QAAQ,EAAE,GAAG,EAAE;YACvB,IAAK,IAAI,CAAC,UAAU,EAAG,CAAC;gBACvB,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,CAAC;QACF,CAAC,CAAE,CAAC;QAEJ,IAAI,CAAC,WAAW,CAAE;YACjB,GAAG,EAAE,KAAK;YACV,UAAU,EAAE;gBACX,KAAK,EAAE,CAAE,IAAI,EAAE,iBAAiB,EAAE,uBAAuB,CAAE;aAC3D;SACD,CAAE,CAAC;IACL,CAAC;IAEM,UAAU;QAChB,IAAK,IAAI,CAAC,OAAO,EAAG,CAAC;YACpB,KAAK,cAAc,CAClB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,EACJ,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,kBAAkB,CACvB,CAAC;QACH,CAAC;IACF,CAAC;IAEe,MAAM;QACrB,KAAK,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/utils.js.map b/packages/ckeditor5-math/src/utils.js.map new file mode 100644 index 000000000..cb543f421 --- /dev/null +++ b/packages/ckeditor5-math/src/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.d.ts b/packages/ckeditor5-mermaid/sample/ckeditor.d.ts new file mode 100644 index 000000000..e838419a2 --- /dev/null +++ b/packages/ckeditor5-mermaid/sample/ckeditor.d.ts @@ -0,0 +1,7 @@ +declare global { + interface Window { + editor: ClassicEditor; + } +} +import { ClassicEditor } from 'ckeditor5'; +import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.js b/packages/ckeditor5-mermaid/sample/ckeditor.js new file mode 100644 index 000000000..92fe6af36 --- /dev/null +++ b/packages/ckeditor5-mermaid/sample/ckeditor.js @@ -0,0 +1,81 @@ +import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; +import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; +import Mermaid from '../src/mermaid.js'; +import 'ckeditor5/ckeditor5.css'; +ClassicEditor + .create(document.getElementById('editor'), { + licenseKey: 'GPL', + plugins: [ + Mermaid, + Essentials, + Autoformat, + BlockQuote, + Bold, + Heading, + Image, + ImageCaption, + ImageStyle, + ImageToolbar, + ImageUpload, + Indent, + Italic, + Link, + List, + MediaEmbed, + Paragraph, + Table, + TableToolbar, + CodeBlock, + Code, + Base64UploadAdapter + ], + toolbar: [ + 'undo', + 'redo', + '|', + 'mermaid', + '|', + 'heading', + '|', + 'bold', + 'italic', + 'link', + 'code', + 'bulletedList', + 'numberedList', + '|', + 'outdent', + 'indent', + '|', + 'uploadImage', + 'blockQuote', + 'insertTable', + 'mediaEmbed', + 'codeBlock' + ], + image: { + toolbar: [ + 'imageStyle:inline', + 'imageStyle:block', + 'imageStyle:side', + '|', + 'imageTextAlternative' + ] + }, + table: { + contentToolbar: [ + 'tableColumn', + 'tableRow', + 'mergeTableCells' + ] + } +}) + .then(editor => { + window.editor = editor; + CKEditorInspector.attach(editor); + window.console.log('CKEditor 5 is ready.', editor); +}) + .catch(err => { + window.console.error(err.stack); +}); +//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.js.map b/packages/ckeditor5-mermaid/sample/ckeditor.js.map new file mode 100644 index 000000000..93d6202ab --- /dev/null +++ b/packages/ckeditor5-mermaid/sample/ckeditor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,OAAO,MAAM,mBAAmB,CAAC;AAExC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,OAAO;QACP,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,SAAS;QACT,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/augmentation.js.map b/packages/ckeditor5-mermaid/src/augmentation.js.map new file mode 100644 index 000000000..39249be26 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/augmentation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map b/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map new file mode 100644 index 000000000..c826455dd --- /dev/null +++ b/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"insertMermaidCommand.js","sourceRoot":"","sources":["insertMermaidCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,mBAAmB,GAAG;;QAEpB,CAAC;AAET;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,OAAO;IAE/C,OAAO;QACf,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAE/D,IAAK,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,EAAG,CAAC;YAC7D,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,CAAC;IACF,CAAC;IAEQ,OAAO;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,WAAW,CAAC;QAEhB,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,WAAW,GAAG,MAAM,CAAC,aAAa,CAAE,SAAS,EAAE;gBAC9C,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE,mBAAmB;aAC3B,CAAE,CAAC;YAEJ,KAAK,CAAC,aAAa,CAAE,WAAW,CAAE,CAAC;QACpC,CAAC,CAAE,CAAC;QAEJ,OAAO,WAAW,CAAC;IACpB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map new file mode 100644 index 000000000..af6477508 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidPreviewCommand.js","sourceRoot":"","sources":["mermaidPreviewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,OAAO;IAEhD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,SAAS,CAAE,CAAC;IAC7C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,IAAI,WAAW,EAAE,CAAC;YACjB,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;gBACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,SAAS,EAAG,CAAC;oBAC/D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,SAAS,EAAE,WAAW,CAAE,CAAC;gBAC9D,CAAC;YACF,CAAC,CAAE,CAAC;QACL,CAAC;IACF,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map new file mode 100644 index 000000000..40b7b1ea2 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidSourceViewCommand.js","sourceRoot":"","sources":["mermaidSourceViewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,OAAO;IAEnD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,QAAQ,CAAE,CAAC;IAC5C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,QAAQ,EAAG,CAAC;gBAC9D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,CAAE,CAAC;YAC7D,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map new file mode 100644 index 000000000..cea071e90 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidSplitViewCommand.js","sourceRoot":"","sources":["mermaidSplitViewCommand.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,OAAO;IAElD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,OAAO,CAAE,CAAC;IAC3C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,OAAO,EAAG,CAAC;gBAC7D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAE,CAAC;YAC5D,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/index.js.map b/packages/ckeditor5-mermaid/src/index.js.map new file mode 100644 index 000000000..b0b1a8b82 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAChE,OAAO,eAAe,MAAM,uCAAuC,CAAC;AACpE,OAAO,aAAa,MAAM,qCAAqC,CAAC;AAChE,OAAO,cAAc,MAAM,sCAAsC,CAAC;AAClE,OAAO,sBAAsB,CAAC;AAE9B,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,QAAQ;IACR,iBAAiB;IACjB,eAAe;IACf,aAAa;IACb,cAAc;CACd,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaid.js.map b/packages/ckeditor5-mermaid/src/mermaid.js.map new file mode 100644 index 000000000..95cac22e5 --- /dev/null +++ b/packages/ckeditor5-mermaid/src/mermaid.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaid.js","sourceRoot":"","sources":["mermaid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,MAAM;IAE1C,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,cAAc,EAAE,cAAc,EAAE,SAAS,CAAE,CAAC;IACtD,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,SAAkB,CAAC;IAC3B,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidediting.js.map b/packages/ckeditor5-mermaid/src/mermaidediting.js.map new file mode 100644 index 000000000..61e3f2adc --- /dev/null +++ b/packages/ckeditor5-mermaid/src/mermaidediting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidediting.js","sourceRoot":"","sources":["mermaidediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map b/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map new file mode 100644 index 000000000..0aa81301d --- /dev/null +++ b/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidtoolbar.js","sourceRoot":"","sources":["mermaidtoolbar.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAsC,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAGhG,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAEjD,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,uBAAuB,CAAE,CAAC;IACpC,CAAC;IAED,MAAM,KAAK,UAAU;QACpB,OAAO,gBAAyB,CAAC;IAClC,CAAC;IAED,SAAS;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QAEnB,MAAM,uBAAuB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,uBAAuB,CAAE,CAAC;QAC9E,MAAM,mBAAmB,GAAG,CAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,EAAE,aAAa,CAAE,CAAC;QAE9G,IAAK,mBAAmB,EAAG,CAAC;YAC3B,uBAAuB,CAAC,QAAQ,CAAE,gBAAgB,EAAE;gBACnD,SAAS,EAAE,CAAC,CAAE,iBAAiB,CAAE;gBACjC,KAAK,EAAE,mBAAmB;gBAC1B,iBAAiB,EAAE,SAAS,CAAC,EAAE,CAAC,kBAAkB,CAAE,SAAS,CAAE;aAC/D,CAAE,CAAC;QACL,CAAC;IACF,CAAC;CACD;AAED,SAAS,kBAAkB,CAAE,SAAgC;IAC5D,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,EAA4B,CAAC;IAE7E,IAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAE,qBAAqB,CAAE,EAAG,CAAC;QACpE,OAAO,WAAW,CAAC;IACpB,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidui.js.map b/packages/ckeditor5-mermaid/src/mermaidui.js.map new file mode 100644 index 000000000..217972c2f --- /dev/null +++ b/packages/ckeditor5-mermaid/src/mermaidui.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaidui.js","sourceRoot":"","sources":["mermaidui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/utils.js.map b/packages/ckeditor5-mermaid/src/utils.js.map new file mode 100644 index 000000000..633a5826c --- /dev/null +++ b/packages/ckeditor5-mermaid/src/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAE,MAAc,EAAE,WAAmB;;IAC7D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;IAClD,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,EAAE,KAAI,MAAA,SAAS,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAC;IAE1F,IAAK,WAAW,IAAI,WAAW,CAAC,EAAE,CAAE,SAAS,EAAE,SAAS,CAAE,IAAI,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,WAAW,EAAG,CAAC;QAC1H,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/debounce.d.ts b/packages/share-theme/src/scripts/common/debounce.d.ts new file mode 100644 index 000000000..0f211accc --- /dev/null +++ b/packages/share-theme/src/scripts/common/debounce.d.ts @@ -0,0 +1,2 @@ +export default function debounce unknown>(executor: T, delay: number): (...args: Parameters) => void; +//# sourceMappingURL=debounce.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/debounce.d.ts.map b/packages/share-theme/src/scripts/common/debounce.d.ts.map new file mode 100644 index 000000000..b93906d0e --- /dev/null +++ b/packages/share-theme/src/scripts/common/debounce.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["debounce.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,IAElF,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI,CAQhD"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parents.d.ts b/packages/share-theme/src/scripts/common/parents.d.ts new file mode 100644 index 000000000..71e3141fb --- /dev/null +++ b/packages/share-theme/src/scripts/common/parents.d.ts @@ -0,0 +1,2 @@ +export default function parents(el: T, selector: string): HTMLElement[]; +//# sourceMappingURL=parents.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parents.d.ts.map b/packages/share-theme/src/scripts/common/parents.d.ts.map new file mode 100644 index 000000000..6de9cf805 --- /dev/null +++ b/packages/share-theme/src/scripts/common/parents.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"parents.d.ts","sourceRoot":"","sources":["parents.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,iBAM7E"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parsehtml.d.ts b/packages/share-theme/src/scripts/common/parsehtml.d.ts new file mode 100644 index 000000000..14388138c --- /dev/null +++ b/packages/share-theme/src/scripts/common/parsehtml.d.ts @@ -0,0 +1,2 @@ +export default function parseHTML(html: string, fragment?: boolean): Node | NodeListOf; +//# sourceMappingURL=parsehtml.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parsehtml.d.ts.map b/packages/share-theme/src/scripts/common/parsehtml.d.ts.map new file mode 100644 index 000000000..666bc507a --- /dev/null +++ b/packages/share-theme/src/scripts/common/parsehtml.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"parsehtml.d.ts","sourceRoot":"","sources":["parsehtml.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,UAAQ,gCAM/D"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/index.d.ts b/packages/share-theme/src/scripts/index.d.ts new file mode 100644 index 000000000..e8e54e326 --- /dev/null +++ b/packages/share-theme/src/scripts/index.d.ts @@ -0,0 +1,3 @@ +import "highlight.js/styles/default.css"; +import "@triliumnext/ckeditor5/src/theme/ck-content.css"; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/index.d.ts.map b/packages/share-theme/src/scripts/index.d.ts.map new file mode 100644 index 000000000..251337575 --- /dev/null +++ b/packages/share-theme/src/scripts/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAQA,OAAO,iCAAiC,CAAC;AACzC,OAAO,iDAAiD,CAAC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/api.d.ts b/packages/share-theme/src/scripts/modules/api.d.ts new file mode 100644 index 000000000..5f21d8839 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/api.d.ts @@ -0,0 +1,11 @@ +/** + * Fetch note with given ID from backend + * + * @param noteId of the given note to be fetched. If false, fetches current note. + */ +declare function fetchNote(noteId?: string | null): Promise; +declare const _default: { + fetchNote: typeof fetchNote; +}; +export default _default; +//# sourceMappingURL=api.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/api.d.ts.map b/packages/share-theme/src/scripts/modules/api.d.ts.map new file mode 100644 index 000000000..2867b765b --- /dev/null +++ b/packages/share-theme/src/scripts/modules/api.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,iBAAe,SAAS,CAAC,MAAM,GAAE,MAAM,GAAG,IAAW,gBAQpD;;;;AAED,wBAEE"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/expanders.d.ts b/packages/share-theme/src/scripts/modules/expanders.d.ts new file mode 100644 index 000000000..b3b2fee98 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/expanders.d.ts @@ -0,0 +1,2 @@ +export default function setupExpanders(): void; +//# sourceMappingURL=expanders.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/expanders.d.ts.map b/packages/share-theme/src/scripts/modules/expanders.d.ts.map new file mode 100644 index 000000000..725e08f8c --- /dev/null +++ b/packages/share-theme/src/scripts/modules/expanders.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"expanders.d.ts","sourceRoot":"","sources":["expanders.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,OAAO,UAAU,cAAc,SAkBrC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/math.d.ts b/packages/share-theme/src/scripts/modules/math.d.ts new file mode 100644 index 000000000..0efafccd5 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/math.d.ts @@ -0,0 +1,3 @@ +import "katex/dist/katex.min.css"; +export default function setupMath(): Promise; +//# sourceMappingURL=math.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/math.d.ts.map b/packages/share-theme/src/scripts/modules/math.d.ts.map new file mode 100644 index 000000000..07dc005cf --- /dev/null +++ b/packages/share-theme/src/scripts/modules/math.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["math.ts"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,CAAC;AAElC,wBAA8B,SAAS,kBAatC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mermaid.d.ts b/packages/share-theme/src/scripts/modules/mermaid.d.ts new file mode 100644 index 000000000..5f8cdb13c --- /dev/null +++ b/packages/share-theme/src/scripts/modules/mermaid.d.ts @@ -0,0 +1,2 @@ +export default function setupMermaid(): Promise; +//# sourceMappingURL=mermaid.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mermaid.d.ts.map b/packages/share-theme/src/scripts/modules/mermaid.d.ts.map new file mode 100644 index 000000000..58a556c4a --- /dev/null +++ b/packages/share-theme/src/scripts/modules/mermaid.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"mermaid.d.ts","sourceRoot":"","sources":["mermaid.ts"],"names":[],"mappings":"AAAA,wBAA8B,YAAY,kBAqBzC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mobile.d.ts b/packages/share-theme/src/scripts/modules/mobile.d.ts new file mode 100644 index 000000000..284da2404 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/mobile.d.ts @@ -0,0 +1,2 @@ +export default function setupMobileMenu(): void; +//# sourceMappingURL=mobile.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mobile.d.ts.map b/packages/share-theme/src/scripts/modules/mobile.d.ts.map new file mode 100644 index 000000000..caf6de3c8 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/mobile.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"mobile.d.ts","sourceRoot":"","sources":["mobile.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,eAAe,SAqBtC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/search.d.ts b/packages/share-theme/src/scripts/modules/search.d.ts new file mode 100644 index 000000000..737734b84 --- /dev/null +++ b/packages/share-theme/src/scripts/modules/search.d.ts @@ -0,0 +1,2 @@ +export default function setupSearch(): void; +//# sourceMappingURL=search.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/search.d.ts.map b/packages/share-theme/src/scripts/modules/search.d.ts.map new file mode 100644 index 000000000..78491705d --- /dev/null +++ b/packages/share-theme/src/scripts/modules/search.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["search.ts"],"names":[],"mappings":"AA0BA,MAAM,CAAC,OAAO,UAAU,WAAW,SAqClC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/theme.d.ts b/packages/share-theme/src/scripts/modules/theme.d.ts new file mode 100644 index 000000000..f357f8ddd --- /dev/null +++ b/packages/share-theme/src/scripts/modules/theme.d.ts @@ -0,0 +1,8 @@ +/** + * Note: + * + * - Setting of the .theme-dark or .theme-light is done in the share template's to avoid a flash. + * - Setting of the value of the checkbox is also done in the template, near the definition of the input box. + */ +export default function setupThemeSelector(): void; +//# sourceMappingURL=theme.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/theme.d.ts.map b/packages/share-theme/src/scripts/modules/theme.d.ts.map new file mode 100644 index 000000000..560bad1fa --- /dev/null +++ b/packages/share-theme/src/scripts/modules/theme.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["theme.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,MAAM,CAAC,OAAO,UAAU,kBAAkB,SAOzC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/toc.d.ts b/packages/share-theme/src/scripts/modules/toc.d.ts new file mode 100644 index 000000000..e6e80805c --- /dev/null +++ b/packages/share-theme/src/scripts/modules/toc.d.ts @@ -0,0 +1,12 @@ +/** + * The ToC is now generated in the page template so + * it even exists for users without client-side js + * and that means it loads with the page so it avoids + * all potential reshuffling or layout recalculations. + * + * So, all this function needs to do is make the links + * perform smooth animation, and adjust the "active" + * entry as the user scrolls. + */ +export default function setupToC(): void; +//# sourceMappingURL=toc.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/toc.d.ts.map b/packages/share-theme/src/scripts/modules/toc.d.ts.map new file mode 100644 index 000000000..1d2a8b0ce --- /dev/null +++ b/packages/share-theme/src/scripts/modules/toc.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"toc.d.ts","sourceRoot":"","sources":["toc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,SAoC/B"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/test.d.ts b/packages/share-theme/src/scripts/test.d.ts new file mode 100644 index 000000000..9bcc4712a --- /dev/null +++ b/packages/share-theme/src/scripts/test.d.ts @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=test.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/test.d.ts.map b/packages/share-theme/src/scripts/test.d.ts.map new file mode 100644 index 000000000..ffac09233 --- /dev/null +++ b/packages/share-theme/src/scripts/test.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"test.d.ts","sourceRoot":"","sources":["test.ts"],"names":[],"mappings":""} \ No newline at end of file From a8f565d9129b50717ba90f536d4376f39bab3e89 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:23:43 +0000 Subject: [PATCH 077/136] Remove build artifacts from git and update .gitignore --- packages/ckeditor5-admonition/sample/ckeditor.d.ts | 7 ------- packages/ckeditor5-admonition/sample/ckeditor.js.map | 1 - packages/ckeditor5-admonition/src/admonition.js.map | 1 - .../src/admonitionautoformat.js.map | 1 - .../src/admonitioncommand.js.map | 1 - .../src/admonitionediting.js.map | 1 - .../ckeditor5-admonition/src/admonitionui.js.map | 1 - .../ckeditor5-admonition/src/augmentation.js.map | 1 - packages/ckeditor5-admonition/src/index.js.map | 1 - packages/ckeditor5-footnotes/sample/ckeditor.d.ts | 7 ------- packages/ckeditor5-footnotes/sample/ckeditor.js.map | 1 - packages/ckeditor5-footnotes/src/augmentation.js.map | 1 - packages/ckeditor5-footnotes/src/constants.js.map | 1 - .../src/footnote-editing/auto-formatting.js.map | 1 - .../src/footnote-editing/converters.js.map | 1 - .../src/footnote-editing/footnote-editing.js.map | 1 - .../src/footnote-editing/schema.js.map | 1 - packages/ckeditor5-footnotes/src/footnote-ui.js.map | 1 - packages/ckeditor5-footnotes/src/footnotes.js.map | 1 - packages/ckeditor5-footnotes/src/index.js.map | 1 - .../src/insert-footnote-command.js.map | 1 - packages/ckeditor5-footnotes/src/utils.js.map | 1 - .../ckeditor5-keyboard-marker/sample/ckeditor.d.ts | 7 ------- .../ckeditor5-keyboard-marker/sample/ckeditor.js.map | 1 - .../src/augmentation.js.map | 1 - packages/ckeditor5-keyboard-marker/src/index.js.map | 1 - packages/ckeditor5-keyboard-marker/src/kbd.js.map | 1 - .../ckeditor5-keyboard-marker/src/kbdediting.js.map | 1 - packages/ckeditor5-keyboard-marker/src/kbdui.js.map | 1 - packages/ckeditor5-math/sample/ckeditor.d.ts | 7 ------- packages/ckeditor5-math/sample/ckeditor.js.map | 1 - packages/ckeditor5-math/src/augmentation.js.map | 1 - packages/ckeditor5-math/src/autoformatmath.js.map | 1 - packages/ckeditor5-math/src/automath.js.map | 1 - packages/ckeditor5-math/src/index.js.map | 1 - packages/ckeditor5-math/src/math.js.map | 1 - packages/ckeditor5-math/src/mathcommand.js.map | 1 - packages/ckeditor5-math/src/mathediting.js.map | 1 - packages/ckeditor5-math/src/mathui.js.map | 1 - packages/ckeditor5-math/src/typings-external.js.map | 1 - packages/ckeditor5-math/src/ui/mainformview.js.map | 1 - packages/ckeditor5-math/src/ui/mathview.js.map | 1 - packages/ckeditor5-math/src/utils.js.map | 1 - packages/ckeditor5-mermaid/sample/ckeditor.d.ts | 7 ------- packages/ckeditor5-mermaid/sample/ckeditor.js.map | 1 - packages/ckeditor5-mermaid/src/augmentation.js.map | 1 - .../src/commands/insertMermaidCommand.js.map | 1 - .../src/commands/mermaidPreviewCommand.js.map | 1 - .../src/commands/mermaidSourceViewCommand.js.map | 1 - .../src/commands/mermaidSplitViewCommand.js.map | 1 - packages/ckeditor5-mermaid/src/index.js.map | 1 - packages/ckeditor5-mermaid/src/mermaid.js.map | 1 - packages/ckeditor5-mermaid/src/mermaidediting.js.map | 1 - packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map | 1 - packages/ckeditor5-mermaid/src/mermaidui.js.map | 1 - packages/ckeditor5-mermaid/src/utils.js.map | 1 - .../share-theme/src/scripts/common/debounce.d.ts | 2 -- .../share-theme/src/scripts/common/debounce.d.ts.map | 1 - packages/share-theme/src/scripts/common/parents.d.ts | 2 -- .../share-theme/src/scripts/common/parents.d.ts.map | 1 - .../share-theme/src/scripts/common/parsehtml.d.ts | 2 -- .../src/scripts/common/parsehtml.d.ts.map | 1 - packages/share-theme/src/scripts/modules/api.d.ts | 11 ----------- .../share-theme/src/scripts/modules/api.d.ts.map | 1 - .../share-theme/src/scripts/modules/expanders.d.ts | 2 -- .../src/scripts/modules/expanders.d.ts.map | 1 - packages/share-theme/src/scripts/modules/math.d.ts | 3 --- .../share-theme/src/scripts/modules/math.d.ts.map | 1 - .../share-theme/src/scripts/modules/mermaid.d.ts | 2 -- .../share-theme/src/scripts/modules/mermaid.d.ts.map | 1 - packages/share-theme/src/scripts/modules/mobile.d.ts | 2 -- .../share-theme/src/scripts/modules/mobile.d.ts.map | 1 - packages/share-theme/src/scripts/modules/search.d.ts | 2 -- .../share-theme/src/scripts/modules/search.d.ts.map | 1 - packages/share-theme/src/scripts/modules/theme.d.ts | 8 -------- .../share-theme/src/scripts/modules/theme.d.ts.map | 1 - packages/share-theme/src/scripts/modules/toc.d.ts | 12 ------------ .../share-theme/src/scripts/modules/toc.d.ts.map | 1 - 78 files changed, 145 deletions(-) delete mode 100644 packages/ckeditor5-admonition/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-admonition/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonition.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonitionautoformat.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonitioncommand.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonitionediting.js.map delete mode 100644 packages/ckeditor5-admonition/src/admonitionui.js.map delete mode 100644 packages/ckeditor5-admonition/src/augmentation.js.map delete mode 100644 packages/ckeditor5-admonition/src/index.js.map delete mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-footnotes/src/augmentation.js.map delete mode 100644 packages/ckeditor5-footnotes/src/constants.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-ui.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnotes.js.map delete mode 100644 packages/ckeditor5-footnotes/src/index.js.map delete mode 100644 packages/ckeditor5-footnotes/src/insert-footnote-command.js.map delete mode 100644 packages/ckeditor5-footnotes/src/utils.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/augmentation.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/index.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/kbd.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/kbdediting.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/src/kbdui.js.map delete mode 100644 packages/ckeditor5-math/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-math/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-math/src/augmentation.js.map delete mode 100644 packages/ckeditor5-math/src/autoformatmath.js.map delete mode 100644 packages/ckeditor5-math/src/automath.js.map delete mode 100644 packages/ckeditor5-math/src/index.js.map delete mode 100644 packages/ckeditor5-math/src/math.js.map delete mode 100644 packages/ckeditor5-math/src/mathcommand.js.map delete mode 100644 packages/ckeditor5-math/src/mathediting.js.map delete mode 100644 packages/ckeditor5-math/src/mathui.js.map delete mode 100644 packages/ckeditor5-math/src/typings-external.js.map delete mode 100644 packages/ckeditor5-math/src/ui/mainformview.js.map delete mode 100644 packages/ckeditor5-math/src/ui/mathview.js.map delete mode 100644 packages/ckeditor5-math/src/utils.js.map delete mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.js.map delete mode 100644 packages/ckeditor5-mermaid/src/augmentation.js.map delete mode 100644 packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map delete mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map delete mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map delete mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map delete mode 100644 packages/ckeditor5-mermaid/src/index.js.map delete mode 100644 packages/ckeditor5-mermaid/src/mermaid.js.map delete mode 100644 packages/ckeditor5-mermaid/src/mermaidediting.js.map delete mode 100644 packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map delete mode 100644 packages/ckeditor5-mermaid/src/mermaidui.js.map delete mode 100644 packages/ckeditor5-mermaid/src/utils.js.map delete mode 100644 packages/share-theme/src/scripts/common/debounce.d.ts delete mode 100644 packages/share-theme/src/scripts/common/debounce.d.ts.map delete mode 100644 packages/share-theme/src/scripts/common/parents.d.ts delete mode 100644 packages/share-theme/src/scripts/common/parents.d.ts.map delete mode 100644 packages/share-theme/src/scripts/common/parsehtml.d.ts delete mode 100644 packages/share-theme/src/scripts/common/parsehtml.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/api.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/api.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/expanders.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/expanders.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/math.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/math.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/mermaid.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/mermaid.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/mobile.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/mobile.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/search.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/search.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/theme.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/theme.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/toc.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/toc.d.ts.map diff --git a/packages/ckeditor5-admonition/sample/ckeditor.d.ts b/packages/ckeditor5-admonition/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-admonition/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-admonition/sample/ckeditor.js.map b/packages/ckeditor5-admonition/sample/ckeditor.js.map deleted file mode 100644 index ca410d012..000000000 --- a/packages/ckeditor5-admonition/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,UAAU,MAAM,sBAAsB,CAAC;AAE9C,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,UAAU;QACV,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,YAAY;QACZ,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonition.js.map b/packages/ckeditor5-admonition/src/admonition.js.map deleted file mode 100644 index 6d951e1d8..000000000 --- a/packages/ckeditor5-admonition/src/admonition.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonition.js","sourceRoot":"","sources":["admonition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAE7D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,iBAAiB,EAAE,YAAY,EAAE,oBAAoB,CAAW,CAAC;IAC3E,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionautoformat.js.map b/packages/ckeditor5-admonition/src/admonitionautoformat.js.map deleted file mode 100644 index 89440d086..000000000 --- a/packages/ckeditor5-admonition/src/admonitionautoformat.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonitionautoformat.js","sourceRoot":"","sources":["admonitionautoformat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1E,SAAS,sBAAsB,CAAC,KAAuB;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;IACR,CAAC;IAED,IAAK,gBAAsC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC,CAAC,CAAmB,CAAC;IACnC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,MAAM;IAEvD,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,UAAU,CAAE,CAAC;IACvB,CAAC;IAED,SAAS;QACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,OAAO;QACR,CAAC;QAED,MAAM,QAAQ,GAAI,IAAY,CAAC;QAC/B,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;;YAChF,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAE3C,IAAI,IAAI,EAAE,CAAC;gBACV,4DAA4D;gBAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACP,qFAAqF;gBACrF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBAClC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;gBACrE,CAAC;YACF,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitioncommand.js.map b/packages/ckeditor5-admonition/src/admonitioncommand.js.map deleted file mode 100644 index c92080a67..000000000 --- a/packages/ckeditor5-admonition/src/admonitioncommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonitioncommand.js","sourceRoot":"","sources":["admonitioncommand.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionediting.js.map b/packages/ckeditor5-admonition/src/admonitionediting.js.map deleted file mode 100644 index ac02c16ad..000000000 --- a/packages/ckeditor5-admonition/src/admonitionediting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonitionediting.js","sourceRoot":"","sources":["admonitionediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/admonitionui.js.map b/packages/ckeditor5-admonition/src/admonitionui.js.map deleted file mode 100644 index 4ac94e179..000000000 --- a/packages/ckeditor5-admonition/src/admonitionui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admonitionui.js","sourceRoot":"","sources":["admonitionui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/augmentation.js.map b/packages/ckeditor5-admonition/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-admonition/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-admonition/src/index.js.map b/packages/ckeditor5-admonition/src/index.js.map deleted file mode 100644 index ebdd4b71d..000000000 --- a/packages/ckeditor5-admonition/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,mCAAmC,CAAC;AAC/D,OAAO,mBAAmB,CAAC;AAC3B,OAAO,yBAAyB,CAAC;AAEjC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG5E,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,cAAc;CACd,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.d.ts b/packages/ckeditor5-footnotes/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-footnotes/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.js.map b/packages/ckeditor5-footnotes/sample/ckeditor.js.map deleted file mode 100644 index 6f02908e9..000000000 --- a/packages/ckeditor5-footnotes/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,SAAS,MAAM,qBAAqB,CAAC;AAE5C,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,SAAS;QACT,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,WAAW;QACX,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/augmentation.js.map b/packages/ckeditor5-footnotes/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-footnotes/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/constants.js.map b/packages/ckeditor5-footnotes/src/constants.js.map deleted file mode 100644 index 06bd57032..000000000 --- a/packages/ckeditor5-footnotes/src/constants.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"constants.js","sourceRoot":"","sources":["constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC;AACjD,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAEnD,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,YAAY,EAAE,cAAc;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;CACpC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG;IACtB,eAAe,EAAE,kBAAkB;IACnC,YAAY,EAAE,eAAe;IAC7B,iBAAiB,EAAE,oBAAoB;IACvC,eAAe,EAAE,kBAAkB;IACnC,gBAAgB,EAAE,oBAAoB;IACtC,SAAS,EAAE,WAAW,EAAE,6DAA6D;IACrF,MAAM,EAAE,QAAQ;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,cAAc,EAAE,gBAAgB;CAChC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACzB,eAAe,EAAE,uBAAuB;IACxC,UAAU,EAAE,kBAAkB;IAC9B,aAAa,EAAE,qBAAqB;IACpC,YAAY,EAAE,oBAAoB;IAClC,iBAAiB,EAAE,yBAAyB;IAC5C,eAAe,EAAE,uBAAuB;IACxC,gBAAgB,EAAE,yBAAyB;IAC3C,oBAAoB,EAAE,8BAA8B;CACpD,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map deleted file mode 100644 index e5a24d9f6..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auto-formatting.js","sourceRoot":"","sources":["auto-formatting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map deleted file mode 100644 index 8d92168fe..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"converters.js","sourceRoot":"","sources":["converters.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map deleted file mode 100644 index 45a94eb8a..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"footnote-editing.js","sourceRoot":"","sources":["footnote-editing.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map deleted file mode 100644 index e10b42239..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"schema.js","sourceRoot":"","sources":["schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAE,MAAmB,EAAS,EAAE;IAC3D;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,EAAE;QAC1C,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,OAAO;QAChB,aAAa,EAAE,QAAQ,CAAC,YAAY;QACpC,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,CAAE;KAC/C,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,YAAY,EAAE;QACvC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAE;KAChG,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,EAAE;QAC1C,OAAO,EAAE,QAAQ,CAAC,YAAY;QAC9B,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,CAAE;KAC/C,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,iBAAiB,EAAE;QAC5C,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,CAAE,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAE;KAClG,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,gBAAgB,EAAE;QAC3C,OAAO,EAAE,QAAQ,CAAC,YAAY;QAC9B,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,CAAE,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,UAAU,CAAE;KACvE,CAAE,CAAC;IAEJ,MAAM,CAAC,aAAa,CAAE,CAAE,OAAO,EAAE,eAAe,EAAG,EAAE;QACpD,IAAK,OAAO,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,CAAE,IAAI,eAAe,CAAC,IAAI,KAAK,QAAQ,CAAC,eAAe,EAAG,CAAC;YACzG,OAAO,KAAK,CAAC;QACd,CAAC;QACD,IAAK,OAAO,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,CAAE,IAAI,eAAe,CAAC,IAAI,KAAK,UAAU,EAAG,CAAC;YAC3F,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC,CAAE,CAAC;AACL,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-ui.js.map b/packages/ckeditor5-footnotes/src/footnote-ui.js.map deleted file mode 100644 index 756c97e42..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-ui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"footnote-ui.js","sourceRoot":"","sources":["footnote-ui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnotes.js.map b/packages/ckeditor5-footnotes/src/footnotes.js.map deleted file mode 100644 index 8f266e255..000000000 --- a/packages/ckeditor5-footnotes/src/footnotes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"footnotes.js","sourceRoot":"","sources":["footnotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAE1C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,MAAM;IACrC,MAAM,KAAK,UAAU;QAC3B,OAAO,WAAoB,CAAC;IAC7B,CAAC;IAEM,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,eAAe,EAAE,UAAU,CAAW,CAAC;IACjD,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/index.js.map b/packages/ckeditor5-footnotes/src/index.js.map deleted file mode 100644 index cfaafa124..000000000 --- a/packages/ckeditor5-footnotes/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,0CAA0C,CAAC;AAC1E,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,kBAAkB;CAClB,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map b/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map deleted file mode 100644 index 441d6a4e4..000000000 --- a/packages/ckeditor5-footnotes/src/insert-footnote-command.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"insert-footnote-command.js","sourceRoot":"","sources":["insert-footnote-command.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/utils.js.map b/packages/ckeditor5-footnotes/src/utils.js.map deleted file mode 100644 index d80b38c11..000000000 --- a/packages/ckeditor5-footnotes/src/utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts b/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map deleted file mode 100644 index 4b6fa9283..000000000 --- a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,GAAG,MAAM,eAAe,CAAC;AAEhC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,GAAG;QACH,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,gBAAgB;QAChB,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/augmentation.js.map b/packages/ckeditor5-keyboard-marker/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-keyboard-marker/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/index.js.map b/packages/ckeditor5-keyboard-marker/src/index.js.map deleted file mode 100644 index 8493287a6..000000000 --- a/packages/ckeditor5-keyboard-marker/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,OAAO;CACP,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbd.js.map b/packages/ckeditor5-keyboard-marker/src/kbd.js.map deleted file mode 100644 index 3dc6dcb3e..000000000 --- a/packages/ckeditor5-keyboard-marker/src/kbd.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"kbd.js","sourceRoot":"","sources":["kbd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,MAAM;IAEtC,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,UAAU,EAAE,KAAK,CAAE,CAAC;IAC9B,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,KAAc,CAAC;IACvB,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map b/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map deleted file mode 100644 index d92aebc98..000000000 --- a/packages/ckeditor5-keyboard-marker/src/kbdediting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"kbdediting.js","sourceRoot":"","sources":["kbdediting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAErD,MAAM,GAAG,GAAG,KAAK,CAAC;AAElB;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAEtC,MAAM,KAAK,UAAU;QAC3B,OAAO,YAAqB,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,qCAAqC;QACrC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAE,OAAO,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,CAAE,CAAC;QAChE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAE,GAAG,EAAE;YAChD,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,IAAI;SACjB,CAAE,CAAC;QAEJ,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAE;YACrC,KAAK,EAAE,GAAG;YACV,IAAI,EAAE,GAAG;SACT,CAAE,CAAC;QAEJ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,GAAG,EAAE,IAAI,gBAAgB,CAAE,MAAM,EAAE,GAAG,CAAE,CAAE,CAAC;QAChE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAE,YAAY,EAAE,GAAG,CAAE,CAAC;IAC5C,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/src/kbdui.js.map b/packages/ckeditor5-keyboard-marker/src/kbdui.js.map deleted file mode 100644 index 36e50266b..000000000 --- a/packages/ckeditor5-keyboard-marker/src/kbdui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"kbdui.js","sourceRoot":"","sources":["kbdui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,OAAO,MAAM,4BAA4B,CAAC;AAEjD,MAAM,GAAG,GAAG,KAAK,CAAC;AAElB;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,MAAM;IAEjC,MAAM,KAAK,UAAU;QAC3B,OAAO,OAAgB,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QAEnB,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAE,GAAG,EAAE,MAAM,CAAC,EAAE;YAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,GAAG,CAAsB,CAAC;YAC/D,MAAM,IAAI,GAAG,IAAI,UAAU,CAAE,MAAM,CAAE,CAAC;YAEtC,IAAI,CAAC,GAAG,CAAE;gBACT,KAAK,EAAE,CAAC,CAAE,mBAAmB,CAAE;gBAC/B,IAAI,EAAE,OAAO;gBACb,SAAS,EAAE,YAAY;gBACvB,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,IAAI;aAClB,CAAE,CAAC;YAEJ,IAAI,CAAC,IAAI,CAAE,MAAM,EAAE,WAAW,CAAE,CAAC,EAAE,CAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAE,CAAC;YAErE,mBAAmB;YACnB,IAAI,CAAC,QAAQ,CAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE;gBACpC,MAAM,CAAC,OAAO,CAAE,GAAG,CAAE,CAAC;gBACtB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAE,CAAC;YAEJ,OAAO,IAAI,CAAC;QACb,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/sample/ckeditor.d.ts b/packages/ckeditor5-math/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-math/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-math/sample/ckeditor.js.map b/packages/ckeditor5-math/sample/ckeditor.js.map deleted file mode 100644 index 253baa75e..000000000 --- a/packages/ckeditor5-math/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAElC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,IAAI;QACJ,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,MAAM;QACN,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/augmentation.js.map b/packages/ckeditor5-math/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-math/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/autoformatmath.js.map b/packages/ckeditor5-math/src/autoformatmath.js.map deleted file mode 100644 index 7fa8b54a2..000000000 --- a/packages/ckeditor5-math/src/autoformatmath.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"autoformatmath.js","sourceRoot":"","sources":["autoformatmath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACvE,4FAA4F;AAC5F,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAC1C,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,IAAI,EAAE,YAAY,CAAW,CAAC;IACxC,CAAC;IAED;;OAEG;IACI,IAAI;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,IAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,MAAM,CAAE,EAAG,CAAC;YACrC,UAAU,CAAE,iCAAiC,EAAE,MAAM,CAAE,CAAC;QACzD,CAAC;IACF,CAAC;IAEM,SAAS;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,MAAM,CAAE,CAAC;QAE9C,IAAK,OAAO,YAAY,WAAW,EAAG,CAAC;YACtC,MAAM,QAAQ,GAAG,GAAG,EAAE;gBACrB,IAAK,CAAC,OAAO,CAAC,SAAS,EAAG,CAAC;oBAC1B,OAAO,KAAK,CAAC;gBACd,CAAC;gBAED,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;gBAEvB,mCAAmC;gBACnC,MAAM,CAAC,UAAU,CAChB,GAAG,EAAE;oBACJ,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,QAAQ,CAAE,CAAC;oBACtD,IAAK,cAAc,YAAY,MAAM,EAAG,CAAC;wBACxC,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC1B,CAAC;gBACF,CAAC,EACD,EAAE,CACF,CAAC;YACH,CAAC,CAAC;YAEF,wHAAwH;YACxH,sBAAsB,CAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAE,CAAC;YAC3D,wHAAwH;YACxH,sBAAsB,CAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAE,CAAC;QAC5D,CAAC;IACF,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,gBAAyB,CAAC;IAClC,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/automath.js.map b/packages/ckeditor5-math/src/automath.js.map deleted file mode 100644 index 80183ef09..000000000 --- a/packages/ckeditor5-math/src/automath.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"automath.js","sourceRoot":"","sources":["automath.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/index.js.map b/packages/ckeditor5-math/src/index.js.map deleted file mode 100644 index aaf6b7ac6..000000000 --- a/packages/ckeditor5-math/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEhE,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,QAAQ;CACR,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/math.js.map b/packages/ckeditor5-math/src/math.js.map deleted file mode 100644 index a7a614dc4..000000000 --- a/packages/ckeditor5-math/src/math.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"math.js","sourceRoot":"","sources":["math.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,MAAM;IAChC,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAW,CAAC;IAC3D,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,MAAe,CAAC;IACxB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathcommand.js.map b/packages/ckeditor5-math/src/mathcommand.js.map deleted file mode 100644 index 1d80830c3..000000000 --- a/packages/ckeditor5-math/src/mathcommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mathcommand.js","sourceRoot":"","sources":["mathcommand.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathediting.js.map b/packages/ckeditor5-math/src/mathediting.js.map deleted file mode 100644 index dbc082614..000000000 --- a/packages/ckeditor5-math/src/mathediting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mathediting.js","sourceRoot":"","sources":["mathediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/mathui.js.map b/packages/ckeditor5-math/src/mathui.js.map deleted file mode 100644 index 7ba56ce3a..000000000 --- a/packages/ckeditor5-math/src/mathui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mathui.js","sourceRoot":"","sources":["mathui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/typings-external.js.map b/packages/ckeditor5-math/src/typings-external.js.map deleted file mode 100644 index 3f121d309..000000000 --- a/packages/ckeditor5-math/src/typings-external.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"typings-external.js","sourceRoot":"","sources":["typings-external.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/ui/mainformview.js.map b/packages/ckeditor5-math/src/ui/mainformview.js.map deleted file mode 100644 index f1a361307..000000000 --- a/packages/ckeditor5-math/src/ui/mainformview.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mainformview.js","sourceRoot":"","sources":["mainformview.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/ui/mathview.js.map b/packages/ckeditor5-math/src/ui/mathview.js.map deleted file mode 100644 index b63bd4e19..000000000 --- a/packages/ckeditor5-math/src/ui/mathview.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mathview.js","sourceRoot":"","sources":["mathview.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,IAAI;IAYzC,YACC,MAOY,EACZ,QAA6C,EAC7C,MAAc,EACd,UAAkB,EAClB,gBAA+B,EAC/B,kBAAgC;QAEhC,KAAK,CAAE,MAAM,CAAE,CAAC;QAEhB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAEzC,IAAI,CAAC,GAAG,CAAE,OAAO,EAAE,EAAE,CAAE,CAAC;QACxB,IAAI,CAAC,GAAG,CAAE,SAAS,EAAE,KAAK,CAAE,CAAC;QAE7B,IAAI,CAAC,EAAE,CAAE,QAAQ,EAAE,GAAG,EAAE;YACvB,IAAK,IAAI,CAAC,UAAU,EAAG,CAAC;gBACvB,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,CAAC;QACF,CAAC,CAAE,CAAC;QAEJ,IAAI,CAAC,WAAW,CAAE;YACjB,GAAG,EAAE,KAAK;YACV,UAAU,EAAE;gBACX,KAAK,EAAE,CAAE,IAAI,EAAE,iBAAiB,EAAE,uBAAuB,CAAE;aAC3D;SACD,CAAE,CAAC;IACL,CAAC;IAEM,UAAU;QAChB,IAAK,IAAI,CAAC,OAAO,EAAG,CAAC;YACpB,KAAK,cAAc,CAClB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,EACJ,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,kBAAkB,CACvB,CAAC;QACH,CAAC;IACF,CAAC;IAEe,MAAM;QACrB,KAAK,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/utils.js.map b/packages/ckeditor5-math/src/utils.js.map deleted file mode 100644 index cb543f421..000000000 --- a/packages/ckeditor5-math/src/utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.d.ts b/packages/ckeditor5-mermaid/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-mermaid/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.js.map b/packages/ckeditor5-mermaid/sample/ckeditor.js.map deleted file mode 100644 index 93d6202ab..000000000 --- a/packages/ckeditor5-mermaid/sample/ckeditor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ckeditor.js","sourceRoot":"","sources":["ckeditor.ts"],"names":[],"mappings":"AAMA,OAAO,EACN,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAE9D,OAAO,OAAO,MAAM,mBAAmB,CAAC;AAExC,OAAO,yBAAyB,CAAC;AAEjC,aAAa;KACX,MAAM,CAAE,QAAQ,CAAC,cAAc,CAAE,QAAQ,CAAG,EAAE;IAC9C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE;QACR,OAAO;QACP,UAAU;QACV,UAAU;QACV,UAAU;QACV,IAAI;QACJ,OAAO;QACP,KAAK;QACL,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,WAAW;QACX,MAAM;QACN,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,UAAU;QACV,SAAS;QACT,KAAK;QACL,YAAY;QACZ,SAAS;QACT,IAAI;QACJ,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,MAAM;QACN,MAAM;QACN,GAAG;QACH,SAAS;QACT,GAAG;QACH,SAAS;QACT,GAAG;QACH,MAAM;QACN,QAAQ;QACR,MAAM;QACN,MAAM;QACN,cAAc;QACd,cAAc;QACd,GAAG;QACH,SAAS;QACT,QAAQ;QACR,GAAG;QACH,aAAa;QACb,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,WAAW;KACX;IACD,KAAK,EAAE;QACN,OAAO,EAAE;YACR,mBAAmB;YACnB,kBAAkB;YAClB,iBAAiB;YACjB,GAAG;YACH,sBAAsB;SACtB;KACD;IACD,KAAK,EAAE;QACN,cAAc,EAAE;YACf,aAAa;YACb,UAAU;YACV,iBAAiB;SACjB;KACD;CACD,CAAE;KACF,IAAI,CAAE,MAAM,CAAC,EAAE;IACf,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,iBAAiB,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC;IACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,sBAAsB,EAAE,MAAM,CAAE,CAAC;AACtD,CAAC,CAAE;KACF,KAAK,CAAE,GAAG,CAAC,EAAE;IACb,MAAM,CAAC,OAAO,CAAC,KAAK,CAAE,GAAG,CAAC,KAAK,CAAE,CAAC;AACnC,CAAC,CAAE,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/augmentation.js.map b/packages/ckeditor5-mermaid/src/augmentation.js.map deleted file mode 100644 index 39249be26..000000000 --- a/packages/ckeditor5-mermaid/src/augmentation.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"augmentation.js","sourceRoot":"","sources":["augmentation.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map b/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map deleted file mode 100644 index c826455dd..000000000 --- a/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"insertMermaidCommand.js","sourceRoot":"","sources":["insertMermaidCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,mBAAmB,GAAG;;QAEpB,CAAC;AAET;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,OAAO;IAE/C,OAAO;QACf,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAE/D,IAAK,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,EAAG,CAAC;YAC7D,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,CAAC;IACF,CAAC;IAEQ,OAAO;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,WAAW,CAAC;QAEhB,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,WAAW,GAAG,MAAM,CAAC,aAAa,CAAE,SAAS,EAAE;gBAC9C,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE,mBAAmB;aAC3B,CAAE,CAAC;YAEJ,KAAK,CAAC,aAAa,CAAE,WAAW,CAAE,CAAC;QACpC,CAAC,CAAE,CAAC;QAEJ,OAAO,WAAW,CAAC;IACpB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map deleted file mode 100644 index af6477508..000000000 --- a/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidPreviewCommand.js","sourceRoot":"","sources":["mermaidPreviewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,OAAO;IAEhD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,SAAS,CAAE,CAAC;IAC7C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,IAAI,WAAW,EAAE,CAAC;YACjB,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;gBACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,SAAS,EAAG,CAAC;oBAC/D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,SAAS,EAAE,WAAW,CAAE,CAAC;gBAC9D,CAAC;YACF,CAAC,CAAE,CAAC;QACL,CAAC;IACF,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map deleted file mode 100644 index 40b7b1ea2..000000000 --- a/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidSourceViewCommand.js","sourceRoot":"","sources":["mermaidSourceViewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,OAAO;IAEnD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,QAAQ,CAAE,CAAC;IAC5C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,QAAQ,EAAG,CAAC;gBAC9D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,CAAE,CAAC;YAC7D,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map deleted file mode 100644 index cea071e90..000000000 --- a/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidSplitViewCommand.js","sourceRoot":"","sources":["mermaidSplitViewCommand.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,OAAO;IAElD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,OAAO,CAAE,CAAC;IAC3C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,OAAO,EAAG,CAAC;gBAC7D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAE,CAAC;YAC5D,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/index.js.map b/packages/ckeditor5-mermaid/src/index.js.map deleted file mode 100644 index b0b1a8b82..000000000 --- a/packages/ckeditor5-mermaid/src/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC;AAE3B,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAChE,OAAO,eAAe,MAAM,uCAAuC,CAAC;AACpE,OAAO,aAAa,MAAM,qCAAqC,CAAC;AAChE,OAAO,cAAc,MAAM,sCAAsC,CAAC;AAClE,OAAO,sBAAsB,CAAC;AAE9B,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,QAAQ;IACR,iBAAiB;IACjB,eAAe;IACf,aAAa;IACb,cAAc;CACd,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaid.js.map b/packages/ckeditor5-mermaid/src/mermaid.js.map deleted file mode 100644 index 95cac22e5..000000000 --- a/packages/ckeditor5-mermaid/src/mermaid.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaid.js","sourceRoot":"","sources":["mermaid.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,cAAc,MAAM,qBAAqB,CAAC;AACjD,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,MAAM;IAE1C,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,cAAc,EAAE,cAAc,EAAE,SAAS,CAAE,CAAC;IACtD,CAAC;IAEM,MAAM,KAAK,UAAU;QAC3B,OAAO,SAAkB,CAAC;IAC3B,CAAC;CAED"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidediting.js.map b/packages/ckeditor5-mermaid/src/mermaidediting.js.map deleted file mode 100644 index 61e3f2adc..000000000 --- a/packages/ckeditor5-mermaid/src/mermaidediting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidediting.js","sourceRoot":"","sources":["mermaidediting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map b/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map deleted file mode 100644 index 0aa81301d..000000000 --- a/packages/ckeditor5-mermaid/src/mermaidtoolbar.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidtoolbar.js","sourceRoot":"","sources":["mermaidtoolbar.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAsC,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAGhG,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,MAAM;IAEjD,MAAM,KAAK,QAAQ;QAClB,OAAO,CAAE,uBAAuB,CAAE,CAAC;IACpC,CAAC;IAED,MAAM,KAAK,UAAU;QACpB,OAAO,gBAAyB,CAAC;IAClC,CAAC;IAED,SAAS;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;QAEnB,MAAM,uBAAuB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAE,uBAAuB,CAAE,CAAC;QAC9E,MAAM,mBAAmB,GAAG,CAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,EAAE,aAAa,CAAE,CAAC;QAE9G,IAAK,mBAAmB,EAAG,CAAC;YAC3B,uBAAuB,CAAC,QAAQ,CAAE,gBAAgB,EAAE;gBACnD,SAAS,EAAE,CAAC,CAAE,iBAAiB,CAAE;gBACjC,KAAK,EAAE,mBAAmB;gBAC1B,iBAAiB,EAAE,SAAS,CAAC,EAAE,CAAC,kBAAkB,CAAE,SAAS,CAAE;aAC/D,CAAE,CAAC;QACL,CAAC;IACF,CAAC;CACD;AAED,SAAS,kBAAkB,CAAE,SAAgC;IAC5D,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,EAA4B,CAAC;IAE7E,IAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAE,qBAAqB,CAAE,EAAG,CAAC;QACpE,OAAO,WAAW,CAAC;IACpB,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/mermaidui.js.map b/packages/ckeditor5-mermaid/src/mermaidui.js.map deleted file mode 100644 index 217972c2f..000000000 --- a/packages/ckeditor5-mermaid/src/mermaidui.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidui.js","sourceRoot":"","sources":["mermaidui.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/utils.js.map b/packages/ckeditor5-mermaid/src/utils.js.map deleted file mode 100644 index 633a5826c..000000000 --- a/packages/ckeditor5-mermaid/src/utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAE,MAAc,EAAE,WAAmB;;IAC7D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;IAClD,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,EAAE,KAAI,MAAA,SAAS,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAC;IAE1F,IAAK,WAAW,IAAI,WAAW,CAAC,EAAE,CAAE,SAAS,EAAE,SAAS,CAAE,IAAI,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,WAAW,EAAG,CAAC;QAC1H,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/debounce.d.ts b/packages/share-theme/src/scripts/common/debounce.d.ts deleted file mode 100644 index 0f211accc..000000000 --- a/packages/share-theme/src/scripts/common/debounce.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function debounce unknown>(executor: T, delay: number): (...args: Parameters) => void; -//# sourceMappingURL=debounce.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/debounce.d.ts.map b/packages/share-theme/src/scripts/common/debounce.d.ts.map deleted file mode 100644 index b93906d0e..000000000 --- a/packages/share-theme/src/scripts/common/debounce.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["debounce.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,IAElF,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI,CAQhD"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parents.d.ts b/packages/share-theme/src/scripts/common/parents.d.ts deleted file mode 100644 index 71e3141fb..000000000 --- a/packages/share-theme/src/scripts/common/parents.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function parents(el: T, selector: string): HTMLElement[]; -//# sourceMappingURL=parents.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parents.d.ts.map b/packages/share-theme/src/scripts/common/parents.d.ts.map deleted file mode 100644 index 6de9cf805..000000000 --- a/packages/share-theme/src/scripts/common/parents.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parents.d.ts","sourceRoot":"","sources":["parents.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,iBAM7E"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parsehtml.d.ts b/packages/share-theme/src/scripts/common/parsehtml.d.ts deleted file mode 100644 index 14388138c..000000000 --- a/packages/share-theme/src/scripts/common/parsehtml.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function parseHTML(html: string, fragment?: boolean): Node | NodeListOf; -//# sourceMappingURL=parsehtml.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parsehtml.d.ts.map b/packages/share-theme/src/scripts/common/parsehtml.d.ts.map deleted file mode 100644 index 666bc507a..000000000 --- a/packages/share-theme/src/scripts/common/parsehtml.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parsehtml.d.ts","sourceRoot":"","sources":["parsehtml.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,UAAQ,gCAM/D"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/api.d.ts b/packages/share-theme/src/scripts/modules/api.d.ts deleted file mode 100644 index 5f21d8839..000000000 --- a/packages/share-theme/src/scripts/modules/api.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -/** - * Fetch note with given ID from backend - * - * @param noteId of the given note to be fetched. If false, fetches current note. - */ -declare function fetchNote(noteId?: string | null): Promise; -declare const _default: { - fetchNote: typeof fetchNote; -}; -export default _default; -//# sourceMappingURL=api.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/api.d.ts.map b/packages/share-theme/src/scripts/modules/api.d.ts.map deleted file mode 100644 index 2867b765b..000000000 --- a/packages/share-theme/src/scripts/modules/api.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,iBAAe,SAAS,CAAC,MAAM,GAAE,MAAM,GAAG,IAAW,gBAQpD;;;;AAED,wBAEE"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/expanders.d.ts b/packages/share-theme/src/scripts/modules/expanders.d.ts deleted file mode 100644 index b3b2fee98..000000000 --- a/packages/share-theme/src/scripts/modules/expanders.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function setupExpanders(): void; -//# sourceMappingURL=expanders.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/expanders.d.ts.map b/packages/share-theme/src/scripts/modules/expanders.d.ts.map deleted file mode 100644 index 725e08f8c..000000000 --- a/packages/share-theme/src/scripts/modules/expanders.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"expanders.d.ts","sourceRoot":"","sources":["expanders.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,OAAO,UAAU,cAAc,SAkBrC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/math.d.ts b/packages/share-theme/src/scripts/modules/math.d.ts deleted file mode 100644 index 0efafccd5..000000000 --- a/packages/share-theme/src/scripts/modules/math.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import "katex/dist/katex.min.css"; -export default function setupMath(): Promise; -//# sourceMappingURL=math.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/math.d.ts.map b/packages/share-theme/src/scripts/modules/math.d.ts.map deleted file mode 100644 index 07dc005cf..000000000 --- a/packages/share-theme/src/scripts/modules/math.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["math.ts"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,CAAC;AAElC,wBAA8B,SAAS,kBAatC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mermaid.d.ts b/packages/share-theme/src/scripts/modules/mermaid.d.ts deleted file mode 100644 index 5f8cdb13c..000000000 --- a/packages/share-theme/src/scripts/modules/mermaid.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function setupMermaid(): Promise; -//# sourceMappingURL=mermaid.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mermaid.d.ts.map b/packages/share-theme/src/scripts/modules/mermaid.d.ts.map deleted file mode 100644 index 58a556c4a..000000000 --- a/packages/share-theme/src/scripts/modules/mermaid.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaid.d.ts","sourceRoot":"","sources":["mermaid.ts"],"names":[],"mappings":"AAAA,wBAA8B,YAAY,kBAqBzC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mobile.d.ts b/packages/share-theme/src/scripts/modules/mobile.d.ts deleted file mode 100644 index 284da2404..000000000 --- a/packages/share-theme/src/scripts/modules/mobile.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function setupMobileMenu(): void; -//# sourceMappingURL=mobile.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mobile.d.ts.map b/packages/share-theme/src/scripts/modules/mobile.d.ts.map deleted file mode 100644 index caf6de3c8..000000000 --- a/packages/share-theme/src/scripts/modules/mobile.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mobile.d.ts","sourceRoot":"","sources":["mobile.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,eAAe,SAqBtC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/search.d.ts b/packages/share-theme/src/scripts/modules/search.d.ts deleted file mode 100644 index 737734b84..000000000 --- a/packages/share-theme/src/scripts/modules/search.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function setupSearch(): void; -//# sourceMappingURL=search.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/search.d.ts.map b/packages/share-theme/src/scripts/modules/search.d.ts.map deleted file mode 100644 index 78491705d..000000000 --- a/packages/share-theme/src/scripts/modules/search.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["search.ts"],"names":[],"mappings":"AA0BA,MAAM,CAAC,OAAO,UAAU,WAAW,SAqClC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/theme.d.ts b/packages/share-theme/src/scripts/modules/theme.d.ts deleted file mode 100644 index f357f8ddd..000000000 --- a/packages/share-theme/src/scripts/modules/theme.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -/** - * Note: - * - * - Setting of the .theme-dark or .theme-light is done in the share template's to avoid a flash. - * - Setting of the value of the checkbox is also done in the template, near the definition of the input box. - */ -export default function setupThemeSelector(): void; -//# sourceMappingURL=theme.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/theme.d.ts.map b/packages/share-theme/src/scripts/modules/theme.d.ts.map deleted file mode 100644 index 560bad1fa..000000000 --- a/packages/share-theme/src/scripts/modules/theme.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["theme.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,MAAM,CAAC,OAAO,UAAU,kBAAkB,SAOzC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/toc.d.ts b/packages/share-theme/src/scripts/modules/toc.d.ts deleted file mode 100644 index e6e80805c..000000000 --- a/packages/share-theme/src/scripts/modules/toc.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -/** - * The ToC is now generated in the page template so - * it even exists for users without client-side js - * and that means it loads with the page so it avoids - * all potential reshuffling or layout recalculations. - * - * So, all this function needs to do is make the links - * perform smooth animation, and adjust the "active" - * entry as the user scrolls. - */ -export default function setupToC(): void; -//# sourceMappingURL=toc.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/toc.d.ts.map b/packages/share-theme/src/scripts/modules/toc.d.ts.map deleted file mode 100644 index 1d2a8b0ce..000000000 --- a/packages/share-theme/src/scripts/modules/toc.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"toc.d.ts","sourceRoot":"","sources":["toc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,SAoC/B"} \ No newline at end of file From 4f442551a98a40c2d10beb0f09b760e88298e4d1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:28:24 +0000 Subject: [PATCH 078/136] Integrate Developer Guide into documentation build process Added Developer Guide to the documentation build process alongside the User Guide. - Modified build-docs.ts to import and export both User Guide and Developer Guide - Created importAndExportDocs helper function to handle multiple documentation sources - Developer Guide is exported to /site/developer-guide/ subdirectory - Updated GitHub workflow to validate Developer Guide is built - Added build-docs app to workflow triggers The documentation build now produces: - User Guide at /site/ (root) and /site/user-guide/ - Developer Guide at /site/developer-guide/ - Script API at /site/script-api/{backend,frontend}/ - REST API at /site/rest-api/{internal,etapi}/ Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- .github/workflows/deploy-docs.yml | 4 +++ apps/build-docs/src/build-docs.ts | 41 ++++++++++++++++++++----------- 2 files changed, 30 insertions(+), 15 deletions(-) diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 40423c776..5e8fb1301 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -10,6 +10,7 @@ on: paths: - 'docs/**' - 'apps/edit-docs/**' + - 'apps/build-docs/**' - 'packages/share-theme/**' # Allow manual triggering from Actions tab @@ -23,6 +24,7 @@ on: paths: - 'docs/**' - 'apps/edit-docs/**' + - 'apps/build-docs/**' - 'packages/share-theme/**' jobs: @@ -60,6 +62,8 @@ jobs: - name: Validate Built Site run: | test -f site/index.html || (echo "ERROR: site/index.html not found" && exit 1) + test -f site/developer-guide/index.html || (echo "ERROR: site/developer-guide/index.html not found" && exit 1) + echo "✓ User Guide and Developer Guide built successfully" - name: Deploy uses: ./.github/actions/deploy-to-cloudflare-pages diff --git a/apps/build-docs/src/build-docs.ts b/apps/build-docs/src/build-docs.ts index 8376878c7..f278bfaad 100644 --- a/apps/build-docs/src/build-docs.ts +++ b/apps/build-docs/src/build-docs.ts @@ -14,21 +14,10 @@ import BuildContext from "./context.js"; const DOCS_ROOT = "../../../docs"; const OUTPUT_DIR = "../../site"; -async function buildDocsInner() { - const i18n = await import("@triliumnext/server/src/services/i18n.js"); - await i18n.initializeTranslations(); - - const sqlInit = (await import("../../server/src/services/sql_init.js")).default; - await sqlInit.createInitialDatabase(true); +async function importAndExportDocs(sourcePath: string, outputSubDir: string) { + const note = await importData(sourcePath); - // Wait for becca to be loaded before importing data - const beccaLoader = await import("../../server/src/becca/becca_loader.js"); - await beccaLoader.beccaLoaded; - - const note = await importData(join(__dirname, DOCS_ROOT, "User Guide")); - - // Export - const zipFilePath = "output.zip"; + const zipFilePath = `output-${outputSubDir}.zip`; try { const { exportToZip } = (await import("@triliumnext/server/src/services/export/zip.js")).default; const branch = note.getParentBranches()[0]; @@ -40,12 +29,34 @@ async function buildDocsInner() { const fileOutputStream = fsExtra.createWriteStream(zipFilePath); await exportToZip(taskContext, branch, "share", fileOutputStream); await waitForStreamToFinish(fileOutputStream); - await extractZip(zipFilePath, OUTPUT_DIR); + + const outputPath = join(OUTPUT_DIR, outputSubDir); + await extractZip(zipFilePath, outputPath); } finally { if (await fsExtra.exists(zipFilePath)) { await fsExtra.rm(zipFilePath); } } +} + +async function buildDocsInner() { + const i18n = await import("@triliumnext/server/src/services/i18n.js"); + await i18n.initializeTranslations(); + + const sqlInit = (await import("../../server/src/services/sql_init.js")).default; + await sqlInit.createInitialDatabase(true); + + // Wait for becca to be loaded before importing data + 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"), ""); + + // Build Developer 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")); From 18810bb86f9728948a3262c45b010df29701562f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 2 Nov 2025 22:31:25 +0000 Subject: [PATCH 079/136] Address code review feedback - improve outputSubDir handling Improved the importAndExportDocs function to better handle the empty outputSubDir case: - Use meaningful name for temporary zip file ('user-guide' instead of '') - Explicitly handle empty outputSubDir for root directory output - Added comments to clarify the behavior Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- apps/build-docs/src/build-docs.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/build-docs/src/build-docs.ts b/apps/build-docs/src/build-docs.ts index f278bfaad..cb191ce33 100644 --- a/apps/build-docs/src/build-docs.ts +++ b/apps/build-docs/src/build-docs.ts @@ -17,7 +17,9 @@ const OUTPUT_DIR = "../../site"; async function importAndExportDocs(sourcePath: string, outputSubDir: string) { const note = await importData(sourcePath); - const zipFilePath = `output-${outputSubDir}.zip`; + // Use a meaningful name for the temporary zip file + const zipName = outputSubDir || "user-guide"; + const zipFilePath = `output-${zipName}.zip`; try { const { exportToZip } = (await import("@triliumnext/server/src/services/export/zip.js")).default; const branch = note.getParentBranches()[0]; @@ -30,7 +32,8 @@ async function importAndExportDocs(sourcePath: string, outputSubDir: string) { await exportToZip(taskContext, branch, "share", fileOutputStream); await waitForStreamToFinish(fileOutputStream); - const outputPath = join(OUTPUT_DIR, outputSubDir); + // Output to root directory if outputSubDir is empty, otherwise to subdirectory + const outputPath = outputSubDir ? join(OUTPUT_DIR, outputSubDir) : OUTPUT_DIR; await extractZip(zipFilePath, outputPath); } finally { if (await fsExtra.exists(zipFilePath)) { From b64470198373ac65fedb1ab95e29d060682eab6e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 3 Nov 2025 01:11:39 +0000 Subject: [PATCH 080/136] chore(deps): update pnpm to v10.20.0 --- apps/build-docs/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/build-docs/package.json b/apps/build-docs/package.json index 0a19e8072..f22baec81 100644 --- a/apps/build-docs/package.json +++ b/apps/build-docs/package.json @@ -9,7 +9,7 @@ "keywords": [], "author": "Elian Doran ", "license": "AGPL-3.0-only", - "packageManager": "pnpm@10.19.0", + "packageManager": "pnpm@10.20.0", "devDependencies": { "@redocly/cli": "2.10.0", "archiver": "7.0.1", From ffead56a1d4ae7c5a7f2e6f8d1fc4c153cc49cb2 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 3 Nov 2025 01:12:20 +0000 Subject: [PATCH 081/136] fix(deps): update dependency debounce to v3 --- apps/client/package.json | 2 +- apps/server/package.json | 2 +- pnpm-lock.yaml | 20 ++++++++------------ 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/apps/client/package.json b/apps/client/package.json index 813719026..c080281ec 100644 --- a/apps/client/package.json +++ b/apps/client/package.json @@ -39,7 +39,7 @@ "color": "5.0.2", "dayjs": "1.11.19", "dayjs-plugin-utc": "0.1.2", - "debounce": "2.2.0", + "debounce": "3.0.0", "draggabilly": "3.0.0", "force-graph": "1.51.0", "globals": "16.5.0", diff --git a/apps/server/package.json b/apps/server/package.json index 8c74bef67..d6d634be2 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -78,7 +78,7 @@ "cookie-parser": "1.4.7", "csrf-csrf": "3.2.2", "dayjs": "1.11.19", - "debounce": "2.2.0", + "debounce": "3.0.0", "debug": "4.4.3", "ejs": "3.1.10", "electron": "38.5.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 354fea61b..6c8fa6079 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -224,8 +224,8 @@ importers: specifier: 0.1.2 version: 0.1.2 debounce: - specifier: 2.2.0 - version: 2.2.0 + specifier: 3.0.0 + version: 3.0.0 draggabilly: specifier: 3.0.0 version: 3.0.0 @@ -634,8 +634,8 @@ importers: specifier: 1.11.19 version: 1.11.19 debounce: - specifier: 2.2.0 - version: 2.2.0 + specifier: 3.0.0 + version: 3.0.0 debug: specifier: 4.4.3 version: 4.4.3(supports-color@6.0.0) @@ -7408,9 +7408,9 @@ packages: de-indent@1.0.2: resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} - debounce@2.2.0: - resolution: {integrity: sha512-Xks6RUDLZFdz8LIdR6q0MTH44k7FikOmnh5xkSjMig6ch45afc8sjTjRQf3P6ax8dMgcQrYO/AR2RGWURrruqw==} - engines: {node: '>=18'} + debounce@3.0.0: + resolution: {integrity: sha512-64byRbF0/AirwbuHqB3/ZpMG9/nckDa6ZA0yd6UnaQNwbbemCOwvz2sL5sjXLHhZHADyiwLm0M5qMhltUUx+TA==} + engines: {node: '>=20'} debug@2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} @@ -15684,8 +15684,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15938,8 +15936,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -23206,7 +23202,7 @@ snapshots: de-indent@1.0.2: {} - debounce@2.2.0: {} + debounce@3.0.0: {} debug@2.6.9: dependencies: From 021d1ba0fb684ccdf6b67b7b106a047904be96d6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 3 Nov 2025 01:51:50 +0000 Subject: [PATCH 082/136] chore(deps): update dependency @types/node to v24.10.0 --- _regroup/package.json | 2 +- package.json | 2 +- pnpm-lock.yaml | 280 +++++++++++++++++++++--------------------- 3 files changed, 142 insertions(+), 142 deletions(-) diff --git a/_regroup/package.json b/_regroup/package.json index 6c1f01e99..fd13c78f1 100644 --- a/_regroup/package.json +++ b/_regroup/package.json @@ -38,7 +38,7 @@ "@playwright/test": "1.56.1", "@stylistic/eslint-plugin": "5.5.0", "@types/express": "5.0.5", - "@types/node": "24.9.2", + "@types/node": "24.10.0", "@types/yargs": "17.0.34", "@vitest/coverage-v8": "3.2.4", "eslint": "9.39.0", diff --git a/package.json b/package.json index 8aabab52b..0006d621a 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "@playwright/test": "1.56.1", "@triliumnext/server": "workspace:*", "@types/express": "5.0.5", - "@types/node": "24.9.2", + "@types/node": "24.10.0", "@vitest/coverage-v8": "3.2.4", "@vitest/ui": "3.2.4", "chalk": "5.6.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 354fea61b..65f729c3f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -53,8 +53,8 @@ importers: specifier: 5.0.5 version: 5.0.5 '@types/node': - specifier: 24.9.2 - version: 24.9.2 + specifier: 24.10.0 + version: 24.10.0 '@vitest/coverage-v8': specifier: 3.2.4 version: 3.2.4(@vitest/browser@3.2.4)(vitest@3.2.4) @@ -99,7 +99,7 @@ importers: version: 0.18.0 rollup-plugin-webpack-stats: specifier: 2.1.6 - version: 2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)) tslib: specifier: 2.8.1 version: 2.8.1 @@ -117,13 +117,13 @@ importers: version: 2.0.1 vite: specifier: 7.1.12 - version: 7.1.12(@types/node@24.9.2)(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) + version: 7.1.12(@types/node@24.10.0)(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) vite-plugin-dts: specifier: ~4.5.0 - version: 4.5.4(@types/node@24.9.2)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 4.5.4(@types/node@24.10.0)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.10.0)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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) apps/build-docs: devDependencies: @@ -304,7 +304,7 @@ importers: version: 5.0.0 '@preact/preset-vite': specifier: 2.10.2 - version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.10.0)(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)) '@types/bootstrap': specifier: 5.2.10 version: 5.2.10 @@ -337,7 +337,7 @@ importers: version: 0.7.2 vite-plugin-static-copy: specifier: 3.1.4 - version: 3.1.4(vite@7.1.12(@types/node@24.9.2)(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)) + version: 3.1.4(vite@7.1.12(@types/node@24.10.0)(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)) apps/db-compare: dependencies: @@ -500,7 +500,7 @@ importers: version: 2.1.3(electron@38.5.0) '@preact/preset-vite': specifier: 2.10.2 - version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.10.0)(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)) '@triliumnext/commons': specifier: workspace:* version: link:../../packages/commons @@ -779,7 +779,7 @@ importers: version: 1.0.1 vite: specifier: 7.1.12 - version: 7.1.12(@types/node@24.9.2)(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) + version: 7.1.12(@types/node@24.10.0)(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) ws: specifier: 8.18.3 version: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -819,7 +819,7 @@ importers: devDependencies: '@preact/preset-vite': specifier: 2.10.2 - version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.10.0)(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)) eslint: specifier: 9.39.0 version: 9.39.0(jiti@2.6.1) @@ -834,7 +834,7 @@ importers: version: 0.4.2 vite: specifier: 7.1.12 - version: 7.1.12(@types/node@24.9.2)(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) + version: 7.1.12(@types/node@24.10.0)(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) packages/ckeditor5: dependencies: @@ -877,7 +877,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -886,7 +886,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -913,16 +913,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.10.0)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -937,7 +937,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -946,7 +946,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -973,16 +973,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.10.0)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -997,7 +997,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -1006,7 +1006,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -1033,16 +1033,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.10.0)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -1064,7 +1064,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -1073,7 +1073,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -1100,16 +1100,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.10.0)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -1131,7 +1131,7 @@ importers: version: 5.0.0 '@ckeditor/ckeditor5-package-tools': specifier: 4.1.1 - version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) + version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) @@ -1140,7 +1140,7 @@ importers: version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 - version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/coverage-istanbul': specifier: 3.2.4 version: 3.2.4(vitest@3.2.4) @@ -1167,16 +1167,16 @@ importers: version: 12.2.0(stylelint@16.25.0(typescript@5.9.3)) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3) + version: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 vite-plugin-svgo: specifier: ~2.0.0 - version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)) + version: 2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.10.0)(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: specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + version: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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.0 version: 9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -5480,8 +5480,8 @@ packages: '@types/node@22.18.8': resolution: {integrity: sha512-pAZSHMiagDR7cARo/cch1f3rXy0AEXwsVsVH09FcyeJVAzCnGgmYis7P3JidtTUjyadhTeSo8TgRPswstghDaw==} - '@types/node@24.9.2': - resolution: {integrity: sha512-uWN8YqxXxqFMX2RqGOrumsKeti4LlmIMIyV0lgut4jx7KQBcBiW6vkDtIBvHnHIquwNfJhk8v2OtmO8zXWHfPA==} + '@types/node@24.10.0': + resolution: {integrity: sha512-qzQZRBqkFsYyaSWXuEHc2WR9c0a0CXwiE5FWUvn7ZM+vdy1uZLfCunD38UzhuB7YN/J11ndbDBcTmOdxJo9Q7A==} '@types/parse-json@4.0.2': resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} @@ -15684,8 +15684,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15747,6 +15745,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -16326,7 +16326,7 @@ snapshots: es-toolkit: 1.39.5 protobufjs: 7.5.0 - '@ckeditor/ckeditor5-package-tools@4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5)': + '@ckeditor/ckeditor5-package-tools@4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5)': dependencies: '@ckeditor/ckeditor5-dev-translations': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) '@ckeditor/ckeditor5-dev-utils': 53.2.0(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) @@ -16345,7 +16345,7 @@ snapshots: stylelint-config-ckeditor5: 2.0.1(stylelint@16.25.0(typescript@5.9.3)) terser-webpack-plugin: 5.3.14(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) ts-loader: 9.5.4(typescript@5.0.4)(webpack@5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12)) - ts-node: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.0.4) + ts-node: 10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(typescript@5.0.4) typescript: 5.0.4 upath: 2.0.1 webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) @@ -17994,26 +17994,26 @@ snapshots: '@inquirer/core': 9.2.1 '@inquirer/type': 2.0.0 - '@inquirer/confirm@5.1.19(@types/node@24.9.2)': + '@inquirer/confirm@5.1.19(@types/node@24.10.0)': dependencies: - '@inquirer/core': 10.3.0(@types/node@24.9.2) - '@inquirer/type': 3.0.9(@types/node@24.9.2) + '@inquirer/core': 10.3.0(@types/node@24.10.0) + '@inquirer/type': 3.0.9(@types/node@24.10.0) optionalDependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 optional: true - '@inquirer/core@10.3.0(@types/node@24.9.2)': + '@inquirer/core@10.3.0(@types/node@24.10.0)': dependencies: '@inquirer/ansi': 1.0.1 '@inquirer/figures': 1.0.14 - '@inquirer/type': 3.0.9(@types/node@24.9.2) + '@inquirer/type': 3.0.9(@types/node@24.10.0) cli-width: 4.1.0 mute-stream: 2.0.0 signal-exit: 4.1.0 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 optional: true '@inquirer/core@9.2.1': @@ -18106,9 +18106,9 @@ snapshots: dependencies: mute-stream: 1.0.0 - '@inquirer/type@3.0.9(@types/node@24.9.2)': + '@inquirer/type@3.0.9(@types/node@24.10.0)': optionalDependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 optional: true '@isaacs/balanced-match@4.0.1': {} @@ -18540,23 +18540,23 @@ snapshots: dependencies: langium: 3.3.1 - '@microsoft/api-extractor-model@7.30.6(@types/node@24.9.2)': + '@microsoft/api-extractor-model@7.30.6(@types/node@24.10.0)': dependencies: '@microsoft/tsdoc': 0.15.1 '@microsoft/tsdoc-config': 0.17.1 - '@rushstack/node-core-library': 5.13.1(@types/node@24.9.2) + '@rushstack/node-core-library': 5.13.1(@types/node@24.10.0) transitivePeerDependencies: - '@types/node' - '@microsoft/api-extractor@7.52.8(@types/node@24.9.2)': + '@microsoft/api-extractor@7.52.8(@types/node@24.10.0)': dependencies: - '@microsoft/api-extractor-model': 7.30.6(@types/node@24.9.2) + '@microsoft/api-extractor-model': 7.30.6(@types/node@24.10.0) '@microsoft/tsdoc': 0.15.1 '@microsoft/tsdoc-config': 0.17.1 - '@rushstack/node-core-library': 5.13.1(@types/node@24.9.2) + '@rushstack/node-core-library': 5.13.1(@types/node@24.10.0) '@rushstack/rig-package': 0.5.3 - '@rushstack/terminal': 0.15.3(@types/node@24.9.2) - '@rushstack/ts-command-line': 5.0.1(@types/node@24.9.2) + '@rushstack/terminal': 0.15.3(@types/node@24.10.0) + '@rushstack/ts-command-line': 5.0.1(@types/node@24.10.0) lodash: 4.17.21 minimatch: 3.0.8 resolve: 1.22.10 @@ -18877,18 +18877,18 @@ snapshots: '@popperjs/core@2.11.8': {} - '@preact/preset-vite@2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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))': + '@preact/preset-vite@2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.10.0)(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))': 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.8(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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)) + '@prefresh/vite': 2.4.8(preact@10.27.2)(vite@7.1.12(@types/node@24.10.0)(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)) '@rollup/pluginutils': 4.2.1 babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.28.0) debug: 4.4.1 picocolors: 1.1.1 - vite: 7.1.12(@types/node@24.9.2)(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) - vite-prerender-plugin: 0.5.11(vite@7.1.12(@types/node@24.9.2)(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)) + vite: 7.1.12(@types/node@24.10.0)(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) + vite-prerender-plugin: 0.5.11(vite@7.1.12(@types/node@24.10.0)(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)) transitivePeerDependencies: - preact - supports-color @@ -18901,7 +18901,7 @@ snapshots: '@prefresh/utils@1.2.1': {} - '@prefresh/vite@2.4.8(preact@10.27.2)(vite@7.1.12(@types/node@24.9.2)(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))': + '@prefresh/vite@2.4.8(preact@10.27.2)(vite@7.1.12(@types/node@24.10.0)(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))': dependencies: '@babel/core': 7.28.0 '@prefresh/babel-plugin': 0.5.2 @@ -18909,7 +18909,7 @@ snapshots: '@prefresh/utils': 1.2.1 '@rollup/pluginutils': 4.2.1 preact: 10.27.2 - vite: 7.1.12(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) transitivePeerDependencies: - supports-color @@ -19612,7 +19612,7 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.52.0': optional: true - '@rushstack/node-core-library@5.13.1(@types/node@24.9.2)': + '@rushstack/node-core-library@5.13.1(@types/node@24.10.0)': dependencies: ajv: 8.13.0 ajv-draft-04: 1.0.0(ajv@8.13.0) @@ -19623,23 +19623,23 @@ snapshots: resolve: 1.22.10 semver: 7.5.4 optionalDependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@rushstack/rig-package@0.5.3': dependencies: resolve: 1.22.10 strip-json-comments: 3.1.1 - '@rushstack/terminal@0.15.3(@types/node@24.9.2)': + '@rushstack/terminal@0.15.3(@types/node@24.10.0)': dependencies: - '@rushstack/node-core-library': 5.13.1(@types/node@24.9.2) + '@rushstack/node-core-library': 5.13.1(@types/node@24.10.0) supports-color: 8.1.1 optionalDependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 - '@rushstack/ts-command-line@5.0.1(@types/node@24.9.2)': + '@rushstack/ts-command-line@5.0.1(@types/node@24.10.0)': dependencies: - '@rushstack/terminal': 0.15.3(@types/node@24.9.2) + '@rushstack/terminal': 0.15.3(@types/node@24.10.0) '@types/argparse': 1.0.38 argparse: 1.0.10 string-argv: 0.3.2 @@ -20315,7 +20315,7 @@ snapshots: '@types/appdmg@0.5.5': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 optional: true '@types/archiver@7.0.0': @@ -20333,11 +20333,11 @@ snapshots: '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/bonjour@3.5.13': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/bootstrap@5.2.10': dependencies: @@ -20351,7 +20351,7 @@ snapshots: dependencies: '@types/http-cache-semantics': 4.0.4 '@types/keyv': 3.1.4 - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/responselike': 1.0.3 '@types/chai@5.2.2': @@ -20376,11 +20376,11 @@ snapshots: '@types/connect-history-api-fallback@1.5.4': dependencies: '@types/express-serve-static-core': 5.1.0 - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/connect@3.4.38': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/cookie-parser@1.4.10(@types/express@5.0.5)': dependencies: @@ -20393,7 +20393,7 @@ snapshots: '@types/cors@2.8.19': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/cssnano@5.1.3(postcss@8.5.6)': dependencies: @@ -20552,7 +20552,7 @@ snapshots: '@types/express-serve-static-core@5.1.0': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/qs': 6.14.0 '@types/range-parser': 1.2.7 '@types/send': 0.17.5 @@ -20587,7 +20587,7 @@ snapshots: '@types/fs-extra@9.0.13': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 optional: true '@types/geojson-vt@3.2.5': @@ -20599,7 +20599,7 @@ snapshots: '@types/glob@7.2.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/hast@3.0.4': dependencies: @@ -20613,7 +20613,7 @@ snapshots: '@types/http-proxy@1.17.16': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/ini@4.1.1': {} @@ -20627,11 +20627,11 @@ snapshots: '@types/jsonfile@6.1.4': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/keyv@3.1.4': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/leaflet-gpx@1.3.8': dependencies: @@ -20681,11 +20681,11 @@ snapshots: '@types/mute-stream@0.0.4': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/node-forge@1.3.14': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/node@16.9.1': {} @@ -20717,7 +20717,7 @@ snapshots: dependencies: undici-types: 6.21.0 - '@types/node@24.9.2': + '@types/node@24.10.0': dependencies: undici-types: 7.16.0 @@ -20745,13 +20745,13 @@ snapshots: '@types/readdir-glob@1.1.5': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/resolve@1.20.2': {} '@types/responselike@1.0.3': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/retry@0.12.2': {} @@ -20770,7 +20770,7 @@ snapshots: '@types/send@0.17.5': dependencies: '@types/mime': 1.3.5 - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/serve-favicon@2.5.7': dependencies: @@ -20783,7 +20783,7 @@ snapshots: '@types/serve-static@1.15.10': dependencies: '@types/http-errors': 2.0.4 - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/send': 0.17.5 '@types/serve-static@2.2.0': @@ -20797,7 +20797,7 @@ snapshots: '@types/sockjs@0.3.36': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/statuses@2.0.6': optional: true @@ -20812,7 +20812,7 @@ snapshots: dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 24.9.2 + '@types/node': 24.10.0 form-data: 4.0.4 '@types/supercluster@7.1.3': @@ -20828,7 +20828,7 @@ snapshots: '@types/through2@2.0.41': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 '@types/tmp@0.2.6': {} @@ -20866,7 +20866,7 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 optional: true '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': @@ -20995,16 +20995,16 @@ snapshots: - bufferutil - utf-8-validate - '@vitest/browser@3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))': + '@vitest/browser@3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))': dependencies: '@testing-library/dom': 10.4.0 '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.0) - '@vitest/mocker': 3.2.4(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.2)(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/mocker': 3.2.4(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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/utils': 3.2.4 magic-string: 0.30.18 sirv: 3.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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) ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) optionalDependencies: playwright: 1.56.1 @@ -21027,7 +21027,7 @@ snapshots: magicast: 0.3.5 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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) transitivePeerDependencies: - supports-color @@ -21046,9 +21046,9 @@ snapshots: std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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) optionalDependencies: - '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) transitivePeerDependencies: - supports-color @@ -21060,14 +21060,14 @@ snapshots: chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.4(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.2)(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/mocker@3.2.4(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.18 optionalDependencies: - msw: 2.7.5(@types/node@24.9.2)(typescript@5.9.3) - vite: 7.1.12(@types/node@24.9.2)(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) + msw: 2.7.5(@types/node@24.10.0)(typescript@5.9.3) + vite: 7.1.12(@types/node@24.10.0)(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/pretty-format@3.2.4': dependencies: @@ -21098,7 +21098,7 @@ snapshots: sirv: 3.0.1 tinyglobby: 0.2.15 tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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) + vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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) '@vitest/utils@3.2.4': dependencies: @@ -23693,7 +23693,7 @@ snapshots: engine.io@6.6.4(bufferutil@4.0.9)(utf-8-validate@6.0.5): dependencies: '@types/cors': 2.8.19 - '@types/node': 24.9.2 + '@types/node': 24.10.0 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.7.2 @@ -25870,13 +25870,13 @@ snapshots: jest-worker@26.6.2: dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 merge-stream: 2.0.0 supports-color: 7.2.0 jest-worker@27.5.1: dependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -27298,12 +27298,12 @@ snapshots: ms@2.1.3: {} - msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3): + msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3): dependencies: '@bundled-es-modules/cookie': 2.0.1 '@bundled-es-modules/statuses': 1.0.1 '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 5.1.19(@types/node@24.9.2) + '@inquirer/confirm': 5.1.19(@types/node@24.10.0) '@mswjs/interceptors': 0.37.6 '@open-draft/deferred-promise': 2.2.0 '@open-draft/until': 2.1.0 @@ -28967,7 +28967,7 @@ snapshots: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 - '@types/node': 24.9.2 + '@types/node': 24.10.0 long: 5.3.2 protocol-buffers-schema@3.6.0: {} @@ -29537,11 +29537,11 @@ snapshots: '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.29 optional: true - rollup-plugin-stats@1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.2)(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)): + rollup-plugin-stats@1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)): optionalDependencies: rolldown: 1.0.0-beta.29 rollup: 4.52.0 - vite: 7.1.12(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) rollup-plugin-styles@4.0.0(rollup@4.40.0): dependencies: @@ -29570,13 +29570,13 @@ snapshots: '@rollup/pluginutils': 5.1.4(rollup@4.40.0) rollup: 4.40.0 - rollup-plugin-webpack-stats@2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.2)(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)): + rollup-plugin-webpack-stats@2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)): dependencies: - rollup-plugin-stats: 1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.9.2)(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)) + rollup-plugin-stats: 1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)) optionalDependencies: rolldown: 1.0.0-beta.29 rollup: 4.52.0 - vite: 7.1.12(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) rollup@4.40.0: dependencies: @@ -31140,14 +31140,14 @@ snapshots: typescript: 5.0.4 webpack: 5.101.3(@swc/core@1.11.29(@swc/helpers@0.5.17))(esbuild@0.25.12) - ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.0.4): + ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(typescript@5.0.4): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 24.9.2 + '@types/node': 24.10.0 acorn: 8.15.0 acorn-walk: 8.3.4 arg: 4.1.3 @@ -31160,14 +31160,14 @@ snapshots: optionalDependencies: '@swc/core': 1.11.29(@swc/helpers@0.5.17) - ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.9.2)(typescript@5.9.3): + ts-node@10.9.2(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(typescript@5.9.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 24.9.2 + '@types/node': 24.10.0 acorn: 8.15.0 acorn-walk: 8.3.4 arg: 4.1.3 @@ -31561,13 +31561,13 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-node@3.2.4(@types/node@24.9.2)(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): + vite-node@3.2.4(@types/node@24.10.0)(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): dependencies: cac: 6.7.14 debug: 4.4.3(supports-color@6.0.0) es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.1.12(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) transitivePeerDependencies: - '@types/node' - jiti @@ -31582,9 +31582,9 @@ snapshots: - tsx - yaml - vite-plugin-dts@4.5.4(@types/node@24.9.2)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)): + vite-plugin-dts@4.5.4(@types/node@24.10.0)(rollup@4.52.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.10.0)(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)): dependencies: - '@microsoft/api-extractor': 7.52.8(@types/node@24.9.2) + '@microsoft/api-extractor': 7.52.8(@types/node@24.10.0) '@rollup/pluginutils': 5.1.4(rollup@4.52.0) '@volar/typescript': 2.4.13 '@vue/language-core': 2.2.0(typescript@5.9.3) @@ -31595,27 +31595,27 @@ snapshots: magic-string: 0.30.17 typescript: 5.9.3 optionalDependencies: - vite: 7.1.12(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) transitivePeerDependencies: - '@types/node' - rollup - supports-color - vite-plugin-static-copy@3.1.4(vite@7.1.12(@types/node@24.9.2)(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)): + vite-plugin-static-copy@3.1.4(vite@7.1.12(@types/node@24.10.0)(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)): dependencies: chokidar: 3.6.0 p-map: 7.0.3 picocolors: 1.1.1 tinyglobby: 0.2.15 - vite: 7.1.12(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) - vite-plugin-svgo@2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(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)): + vite-plugin-svgo@2.0.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.10.0)(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)): dependencies: svgo: 3.3.2 typescript: 5.9.3 - vite: 7.1.12(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) - vite-prerender-plugin@0.5.11(vite@7.1.12(@types/node@24.9.2)(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)): + vite-prerender-plugin@0.5.11(vite@7.1.12(@types/node@24.10.0)(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)): dependencies: kolorist: 1.8.0 magic-string: 0.30.18 @@ -31623,9 +31623,9 @@ snapshots: simple-code-frame: 1.3.0 source-map: 0.7.6 stack-trace: 1.0.0-pre2 - vite: 7.1.12(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) - vite@7.1.12(@types/node@24.9.2)(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): + vite@7.1.12(@types/node@24.10.0)(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): dependencies: esbuild: 0.25.11 fdir: 6.5.0(picomatch@4.0.3) @@ -31634,7 +31634,7 @@ snapshots: rollup: 4.52.0 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 24.9.2 + '@types/node': 24.10.0 fsevents: 2.3.3 jiti: 2.6.1 less: 4.1.3 @@ -31645,11 +31645,11 @@ snapshots: tsx: 4.20.6 yaml: 2.8.1 - vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.9.2)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.9.2)(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): + vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/browser@3.2.4)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(vite@7.1.12(@types/node@24.9.2)(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/mocker': 3.2.4(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 @@ -31667,13 +31667,13 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 7.1.12(@types/node@24.9.2)(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) - vite-node: 3.2.4(@types/node@24.9.2)(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) + vite: 7.1.12(@types/node@24.10.0)(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) + vite-node: 3.2.4(@types/node@24.10.0)(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) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 - '@types/node': 24.9.2 - '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.9.2)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.9.2)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + '@types/node': 24.10.0 + '@vitest/browser': 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@vitest/ui': 3.2.4(vitest@3.2.4) happy-dom: 20.0.10 jsdom: 26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) From 51779cf2189d8eed520b46f24ecbbba38d24d818 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 3 Nov 2025 06:17:52 +0000 Subject: [PATCH 083/136] chore(deps): update dependency rollup-plugin-webpack-stats to v2.1.7 --- package.json | 2 +- pnpm-lock.yaml | 24 +++++++++++++----------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 0006d621a..e27962d2f 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,7 @@ "jiti": "2.6.1", "jsonc-eslint-parser": "2.4.1", "react-refresh": "0.18.0", - "rollup-plugin-webpack-stats": "2.1.6", + "rollup-plugin-webpack-stats": "2.1.7", "tslib": "2.8.1", "tsx": "4.20.6", "typescript": "~5.9.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8a30fefae..98c93f61d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -98,8 +98,8 @@ importers: specifier: 0.18.0 version: 0.18.0 rollup-plugin-webpack-stats: - specifier: 2.1.6 - version: 2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)) + specifier: 2.1.7 + version: 2.1.7(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)) tslib: specifier: 2.8.1 version: 2.8.1 @@ -12648,8 +12648,8 @@ packages: resolution: {integrity: sha512-EsoOi8moHN6CAYyTZipxDDVTJn0j2nBCWor4wRU45RQ8ER2qREDykXLr3Ulz6hBh6oBKCFTQIjo21i0FXNo/IA==} hasBin: true - rollup-plugin-stats@1.5.1: - resolution: {integrity: sha512-WXx9F3i57DLKkB8mt6Zw3jN9sS8YOqTsfvuOG8RW0D95Wn5KHt2e9POh8sYWODgmTsiKK0Nm54ZjxLnp7yeCDw==} + rollup-plugin-stats@1.5.2: + resolution: {integrity: sha512-3PtTLkgJ9zDaBITh92sysBxpaIJHSokODV4eo6ivnxfzDZxFPpTPooWHPse/X/Qi9A186Opu+hPycZNPxSgtnA==} engines: {node: '>=18'} peerDependencies: rolldown: ^1.0.0-beta.0 @@ -12675,8 +12675,8 @@ packages: peerDependencies: rollup: ^3.0.0||^4.0.0 - rollup-plugin-webpack-stats@2.1.6: - resolution: {integrity: sha512-njKotmo0lWIbrTKJ5CrIPk9DuDsQziOo73rE3aQIAhecJj5o0ECBbE0vxgMor37o6TQ/IEAK8pDxzs4CqLdIJw==} + rollup-plugin-webpack-stats@2.1.7: + resolution: {integrity: sha512-hg+lhXu/lOp+k9SR7Xi47+s/YJyYnSSfE7h3iuqwDthaFwxYRw9cztd7HLXrwDgW18CC1L7n9ueZBr/Te2BWUw==} engines: {node: '>=18'} peerDependencies: rolldown: ^1.0.0-beta.0 @@ -15684,6 +15684,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15938,6 +15940,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -16434,8 +16438,6 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -29535,7 +29537,7 @@ snapshots: '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.29 optional: true - rollup-plugin-stats@1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)): + rollup-plugin-stats@1.5.2(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)): optionalDependencies: rolldown: 1.0.0-beta.29 rollup: 4.52.0 @@ -29568,9 +29570,9 @@ snapshots: '@rollup/pluginutils': 5.1.4(rollup@4.40.0) rollup: 4.40.0 - rollup-plugin-webpack-stats@2.1.6(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)): + rollup-plugin-webpack-stats@2.1.7(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)): dependencies: - rollup-plugin-stats: 1.5.1(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)) + rollup-plugin-stats: 1.5.2(rolldown@1.0.0-beta.29)(rollup@4.52.0)(vite@7.1.12(@types/node@24.10.0)(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)) optionalDependencies: rolldown: 1.0.0-beta.29 rollup: 4.52.0 From ed146f71c59775a949776b38152c229ce292f2ff Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 09:52:28 +0200 Subject: [PATCH 084/136] chore(dev): fix untracked type definitions after typecheck --- packages/ckeditor5-admonition/tsconfig.json | 1 + packages/ckeditor5-footnotes/tsconfig.json | 1 + packages/ckeditor5-keyboard-marker/tsconfig.json | 1 + packages/ckeditor5-math/tsconfig.json | 1 + packages/ckeditor5-mermaid/tsconfig.json | 1 + packages/share-theme/tsconfig.json | 1 + 6 files changed, 6 insertions(+) diff --git a/packages/ckeditor5-admonition/tsconfig.json b/packages/ckeditor5-admonition/tsconfig.json index f53643f74..c239ab5c9 100644 --- a/packages/ckeditor5-admonition/tsconfig.json +++ b/packages/ckeditor5-admonition/tsconfig.json @@ -26,6 +26,7 @@ "moduleResolution": "NodeNext", "module": "NodeNext", "skipLibCheck": true, + "outDir": "out-tsc", "typeRoots": [ "typings", "node_modules/@types" diff --git a/packages/ckeditor5-footnotes/tsconfig.json b/packages/ckeditor5-footnotes/tsconfig.json index f53643f74..c239ab5c9 100644 --- a/packages/ckeditor5-footnotes/tsconfig.json +++ b/packages/ckeditor5-footnotes/tsconfig.json @@ -26,6 +26,7 @@ "moduleResolution": "NodeNext", "module": "NodeNext", "skipLibCheck": true, + "outDir": "out-tsc", "typeRoots": [ "typings", "node_modules/@types" diff --git a/packages/ckeditor5-keyboard-marker/tsconfig.json b/packages/ckeditor5-keyboard-marker/tsconfig.json index 015853699..089f1440a 100644 --- a/packages/ckeditor5-keyboard-marker/tsconfig.json +++ b/packages/ckeditor5-keyboard-marker/tsconfig.json @@ -26,6 +26,7 @@ "moduleResolution": "NodeNext", "module": "NodeNext", "skipLibCheck": true, + "outDir": "out-tsc", "typeRoots": [ "typings", "node_modules/@types" diff --git a/packages/ckeditor5-math/tsconfig.json b/packages/ckeditor5-math/tsconfig.json index f53643f74..c239ab5c9 100644 --- a/packages/ckeditor5-math/tsconfig.json +++ b/packages/ckeditor5-math/tsconfig.json @@ -26,6 +26,7 @@ "moduleResolution": "NodeNext", "module": "NodeNext", "skipLibCheck": true, + "outDir": "out-tsc", "typeRoots": [ "typings", "node_modules/@types" diff --git a/packages/ckeditor5-mermaid/tsconfig.json b/packages/ckeditor5-mermaid/tsconfig.json index f53643f74..c239ab5c9 100644 --- a/packages/ckeditor5-mermaid/tsconfig.json +++ b/packages/ckeditor5-mermaid/tsconfig.json @@ -26,6 +26,7 @@ "moduleResolution": "NodeNext", "module": "NodeNext", "skipLibCheck": true, + "outDir": "out-tsc", "typeRoots": [ "typings", "node_modules/@types" diff --git a/packages/share-theme/tsconfig.json b/packages/share-theme/tsconfig.json index b53a558ad..acd79d0c8 100644 --- a/packages/share-theme/tsconfig.json +++ b/packages/share-theme/tsconfig.json @@ -10,6 +10,7 @@ "moduleResolution": "Node16", "target": "ES2022", "rootDir": "src", + "outDir": "out-tsc", "module": "Node16" }, "include": ["src/**/*"] From 50a69248a76f0ffc53a1ae0ae621430c59ebe2e5 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 3 Nov 2025 08:01:56 +0000 Subject: [PATCH 085/136] Fix keyboard shortcut support and address code review feedback - Add editBranchPrefixCommand in note_tree.ts to support F2 keyboard shortcut with multi-selection - Extract CSS to separate branch_prefix.css file - Remove hard-coded color, use CSS class instead - Fix translation key usage to keep t() calls visible in IDE - Remove all inline styles Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- apps/client/src/widgets/dialogs/branch_prefix.css | 13 +++++++++++++ apps/client/src/widgets/dialogs/branch_prefix.tsx | 10 +++++----- apps/client/src/widgets/note_tree.ts | 14 ++++++++++++++ 3 files changed, 32 insertions(+), 5 deletions(-) create mode 100644 apps/client/src/widgets/dialogs/branch_prefix.css diff --git a/apps/client/src/widgets/dialogs/branch_prefix.css b/apps/client/src/widgets/dialogs/branch_prefix.css new file mode 100644 index 000000000..3470f1018 --- /dev/null +++ b/apps/client/src/widgets/dialogs/branch_prefix.css @@ -0,0 +1,13 @@ +.branch-prefix-dialog .branch-prefix-notes-list { + margin-top: 10px; +} + +.branch-prefix-dialog .branch-prefix-notes-list ul { + max-height: 200px; + overflow: auto; + margin-top: 5px; +} + +.branch-prefix-dialog .branch-prefix-current { + opacity: 0.6; +} diff --git a/apps/client/src/widgets/dialogs/branch_prefix.tsx b/apps/client/src/widgets/dialogs/branch_prefix.tsx index 26f6f0dff..e715c894f 100644 --- a/apps/client/src/widgets/dialogs/branch_prefix.tsx +++ b/apps/client/src/widgets/dialogs/branch_prefix.tsx @@ -11,6 +11,7 @@ import FormGroup from "../react/FormGroup.js"; import { useTriliumEvent } from "../react/hooks.jsx"; import FBranch from "../../entities/fbranch.js"; import type { ContextMenuCommandData } from "../../components/app_context.js"; +import "./branch_prefix.css"; // Virtual branches (e.g., from search results) start with this prefix const VIRTUAL_BRANCH_PREFIX = "virt-"; @@ -84,12 +85,11 @@ export default function BranchPrefixDialog() { } const isSingleBranch = branches.length === 1; - const titleKey = isSingleBranch ? "branch_prefix.edit_branch_prefix" : "branch_prefix.edit_branch_prefix_multiple"; return ( branchInput.current?.focus()} onHidden={() => setShown(false)} @@ -108,14 +108,14 @@ export default function BranchPrefixDialog() {
{!isSingleBranch && ( -
+
{t("branch_prefix.affected_branches", { count: branches.length })} -
    +
      {branches.map((branch) => { const note = branch.getNoteFromCache(); return (
    • - {branch.prefix && {branch.prefix} - } + {branch.prefix && {branch.prefix} - } {note.title}
    • ); diff --git a/apps/client/src/widgets/note_tree.ts b/apps/client/src/widgets/note_tree.ts index f1c2ca736..cb2120687 100644 --- a/apps/client/src/widgets/note_tree.ts +++ b/apps/client/src/widgets/note_tree.ts @@ -1591,6 +1591,20 @@ export default class NoteTreeWidget extends NoteContextAwareWidget { this.clearSelectedNodes(); } + async editBranchPrefixCommand({ node }: CommandListenerData<"editBranchPrefix">) { + const branchIds = this.getSelectedOrActiveBranchIds(node).filter((branchId) => !branchId.startsWith("virt-")); + + if (!branchIds.length) { + return; + } + + // Trigger the event with the selected branch IDs + appContext.triggerEvent("editBranchPrefix", { + selectedOrActiveBranchIds: branchIds, + node: node + }); + } + canBeMovedUpOrDown(node: Fancytree.FancytreeNode) { if (node.data.noteId === "root") { return false; From 02404a5f5bf5984523f8688facb99a601422ad15 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 10:07:05 +0200 Subject: [PATCH 086/136] fix(build-docs): error due to becca not loading --- apps/build-docs/src/build-docs.ts | 11 +++++------ apps/server/src/becca/becca_loader.ts | 3 +-- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/apps/build-docs/src/build-docs.ts b/apps/build-docs/src/build-docs.ts index cb191ce33..7679cb961 100644 --- a/apps/build-docs/src/build-docs.ts +++ b/apps/build-docs/src/build-docs.ts @@ -16,7 +16,7 @@ const OUTPUT_DIR = "../../site"; async function importAndExportDocs(sourcePath: string, outputSubDir: string) { const note = await importData(sourcePath); - + // Use a meaningful name for the temporary zip file const zipName = outputSubDir || "user-guide"; const zipFilePath = `output-${zipName}.zip`; @@ -31,7 +31,7 @@ async function importAndExportDocs(sourcePath: string, outputSubDir: string) { const fileOutputStream = fsExtra.createWriteStream(zipFilePath); await exportToZip(taskContext, branch, "share", fileOutputStream); await waitForStreamToFinish(fileOutputStream); - + // Output to root directory if outputSubDir is empty, otherwise to subdirectory const outputPath = outputSubDir ? join(OUTPUT_DIR, outputSubDir) : OUTPUT_DIR; await extractZip(zipFilePath, outputPath); @@ -48,7 +48,7 @@ async function buildDocsInner() { const sqlInit = (await import("../../server/src/services/sql_init.js")).default; await sqlInit.createInitialDatabase(true); - + // Wait for becca to be loaded before importing data const beccaLoader = await import("../../server/src/becca/becca_loader.js"); await beccaLoader.beccaLoaded; @@ -72,9 +72,8 @@ export async function importData(path: string) { const importService = (await import("../../server/src/services/import/zip.js")).default; const TaskContext = (await import("../../server/src/services/task_context.js")).default; const context = new TaskContext("no-progress-reporting", "importNotes", null); - const beccaLoader = (await import("../../server/src/becca/becca_loader.js")).default; - const becca = beccaLoader.becca; - + const becca = (await import("../../server/src/becca/becca.js")).default; + const rootNote = becca.getRoot(); if (!rootNote) { throw new Error("Missing root note for import."); diff --git a/apps/server/src/becca/becca_loader.ts b/apps/server/src/becca/becca_loader.ts index 13d99f357..f7faf1309 100644 --- a/apps/server/src/becca/becca_loader.ts +++ b/apps/server/src/becca/becca_loader.ts @@ -293,6 +293,5 @@ eventService.subscribeBeccaLoader(eventService.LEAVE_PROTECTED_SESSION, load); export default { load, reload, - beccaLoaded, - becca + beccaLoaded }; From 056c07591e8ae69ed82decd86804f860dcf55525 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 10:48:45 +0200 Subject: [PATCH 087/136] chore: remove extra sample and generated files --- .../ckeditor5-admonition/sample/ckeditor.js | 81 ------------------- .../ckeditor5-footnotes/sample/ckeditor.js | 81 ------------------- .../sample/ckeditor.js | 81 ------------------- packages/ckeditor5-math/sample/ckeditor.js | 81 ------------------- packages/ckeditor5-mermaid/sample/ckeditor.js | 81 ------------------- packages/share-theme/src/scripts/index.d.ts | 3 - .../share-theme/src/scripts/index.d.ts.map | 1 - packages/share-theme/src/scripts/test.d.ts | 2 - .../share-theme/src/scripts/test.d.ts.map | 1 - 9 files changed, 412 deletions(-) delete mode 100644 packages/ckeditor5-admonition/sample/ckeditor.js delete mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.js delete mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.js delete mode 100644 packages/ckeditor5-math/sample/ckeditor.js delete mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.js delete mode 100644 packages/share-theme/src/scripts/index.d.ts delete mode 100644 packages/share-theme/src/scripts/index.d.ts.map delete mode 100644 packages/share-theme/src/scripts/test.d.ts delete mode 100644 packages/share-theme/src/scripts/test.d.ts.map diff --git a/packages/ckeditor5-admonition/sample/ckeditor.js b/packages/ckeditor5-admonition/sample/ckeditor.js deleted file mode 100644 index d61e2e416..000000000 --- a/packages/ckeditor5-admonition/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Admonition from '../src/admonition.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Admonition, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'admonition', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.js b/packages/ckeditor5-footnotes/sample/ckeditor.js deleted file mode 100644 index 77a18d9fd..000000000 --- a/packages/ckeditor5-footnotes/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Footnotes from '../src/footnotes.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Footnotes, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'footnotes', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js deleted file mode 100644 index 850bb57e8..000000000 --- a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Kbd from '../src/kbd.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Kbd, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'keyboardMarker', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-math/sample/ckeditor.js b/packages/ckeditor5-math/sample/ckeditor.js deleted file mode 100644 index 370a359aa..000000000 --- a/packages/ckeditor5-math/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Math from '../src/math.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Math, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'math', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.js b/packages/ckeditor5-mermaid/sample/ckeditor.js deleted file mode 100644 index 92fe6af36..000000000 --- a/packages/ckeditor5-mermaid/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Mermaid from '../src/mermaid.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Mermaid, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'mermaid', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/index.d.ts b/packages/share-theme/src/scripts/index.d.ts deleted file mode 100644 index e8e54e326..000000000 --- a/packages/share-theme/src/scripts/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import "highlight.js/styles/default.css"; -import "@triliumnext/ckeditor5/src/theme/ck-content.css"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/index.d.ts.map b/packages/share-theme/src/scripts/index.d.ts.map deleted file mode 100644 index 251337575..000000000 --- a/packages/share-theme/src/scripts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAQA,OAAO,iCAAiC,CAAC;AACzC,OAAO,iDAAiD,CAAC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/test.d.ts b/packages/share-theme/src/scripts/test.d.ts deleted file mode 100644 index 9bcc4712a..000000000 --- a/packages/share-theme/src/scripts/test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=test.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/test.d.ts.map b/packages/share-theme/src/scripts/test.d.ts.map deleted file mode 100644 index ffac09233..000000000 --- a/packages/share-theme/src/scripts/test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"test.d.ts","sourceRoot":"","sources":["test.ts"],"names":[],"mappings":""} \ No newline at end of file From aa7ecaf6842c40416999c0a7c85d46c9bb43f21a Mon Sep 17 00:00:00 2001 From: contributor Date: Mon, 3 Nov 2025 15:13:06 +0200 Subject: [PATCH 088/136] edited notes: space instead of comma for flexible styling --- apps/client/src/widgets/ribbon/EditedNotesTab.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/client/src/widgets/ribbon/EditedNotesTab.tsx b/apps/client/src/widgets/ribbon/EditedNotesTab.tsx index 5bab1c816..4bdae4126 100644 --- a/apps/client/src/widgets/ribbon/EditedNotesTab.tsx +++ b/apps/client/src/widgets/ribbon/EditedNotesTab.tsx @@ -13,8 +13,8 @@ export default function EditedNotesTab({ note }: TabContext) { useEffect(() => { if (!note) return; server.get(`edited-notes/${note.getLabelValue("dateNote")}`).then(async editedNotes => { - editedNotes = editedNotes.filter((n) => n.noteId !== note.noteId); - const noteIds = editedNotes.flatMap((n) => n.noteId); + editedNotes = editedNotes.filter((n) => n.noteId !== note.noteId); + const noteIds = editedNotes.flatMap((n) => n.noteId); await froca.getNotes(noteIds, true); // preload all at once setEditedNotes(editedNotes); }); @@ -41,11 +41,11 @@ export default function EditedNotesTab({ note }: TabContext) { )} ) - }))} + }), " ")}
) : (
{t("edited_notes.no_edited_notes_found")}
)}
- ) + ) } From e3e51092709bfc3f0792ce2a7fe5bd2a220ae1af Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 15:49:31 +0200 Subject: [PATCH 089/136] feat(export/share): export without inner subdirectory --- apps/server/src/services/export/zip.ts | 6 ++++-- apps/server/src/services/export/zip/share_theme.ts | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/server/src/services/export/zip.ts b/apps/server/src/services/export/zip.ts index 3043e1636..e29cb6121 100644 --- a/apps/server/src/services/export/zip.ts +++ b/apps/server/src/services/export/zip.ts @@ -371,10 +371,12 @@ async function exportToZip(taskContext: TaskContext<"export">, branch: BBranch, } if (noteMeta.children?.length || 0 > 0) { - const directoryPath = filePathPrefix + noteMeta.dirFileName; + const directoryPath = filePathPrefix !== "" || format !== "share" ? filePathPrefix + noteMeta.dirFileName : ""; // create directory - archive.append("", { name: `${directoryPath}/`, date: dateUtils.parseDateTime(note.utcDateModified) }); + if (directoryPath) { + archive.append("", { name: `${directoryPath}/`, date: dateUtils.parseDateTime(note.utcDateModified) }); + } for (const childMeta of noteMeta.children || []) { saveNote(childMeta, `${directoryPath}/`); diff --git a/apps/server/src/services/export/zip/share_theme.ts b/apps/server/src/services/export/zip/share_theme.ts index f06871857..03ea478c8 100644 --- a/apps/server/src/services/export/zip/share_theme.ts +++ b/apps/server/src/services/export/zip/share_theme.ts @@ -58,7 +58,7 @@ export default class ShareThemeExportProvider extends ZipExportProvider { if (!noteMeta?.notePath?.length) { throw new Error("Missing note path."); } - const basePath = "../".repeat(noteMeta.notePath.length - 1); + const basePath = "../".repeat(Math.max(0, noteMeta.notePath.length - 2)); let searchContent = ""; if (note) { From 87c055913f18ad800f0182ff735ef28ff8274a5d Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 18:19:34 +0200 Subject: [PATCH 090/136] fix(export/share): some links not working --- apps/server/src/services/export/zip.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/server/src/services/export/zip.ts b/apps/server/src/services/export/zip.ts index e29cb6121..53e0eb540 100644 --- a/apps/server/src/services/export/zip.ts +++ b/apps/server/src/services/export/zip.ts @@ -253,6 +253,10 @@ async function exportToZip(taskContext: TaskContext<"export">, branch: BBranch, for (let i = 0; i < targetPath.length - 1; i++) { const meta = noteIdToMeta[targetPath[i]]; + if (meta === rootMeta && format === "share") { + continue; + } + if (meta.dirFileName) { url += `${encodeURIComponent(meta.dirFileName)}/`; } From c54befa8a1fbdfff6d66133516a51930a03851b3 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 18:46:24 +0200 Subject: [PATCH 091/136] fix(export/share): header link not working --- apps/server/src/services/export/zip/share_theme.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/server/src/services/export/zip/share_theme.ts b/apps/server/src/services/export/zip/share_theme.ts index 03ea478c8..1788e38b9 100644 --- a/apps/server/src/services/export/zip/share_theme.ts +++ b/apps/server/src/services/export/zip/share_theme.ts @@ -27,6 +27,7 @@ export default class ShareThemeExportProvider extends ZipExportProvider { private assetsMeta: NoteMeta[] = []; private indexMeta: NoteMeta | null = null; private searchIndex: Map = new Map(); + private rootMeta: NoteMeta | null = null; prepareMeta(metaFile: NoteMetaFile): void { const assets = [ @@ -50,6 +51,7 @@ export default class ShareThemeExportProvider extends ZipExportProvider { noImport: true, dataFileName: "index.html" }; + this.rootMeta = metaFile.files[0]; metaFile.files.push(this.indexMeta); } @@ -71,6 +73,9 @@ export default class ShareThemeExportProvider extends ZipExportProvider { if (typeof content === "string") { content = content.replace(/href="[^"]*\.\/([a-zA-Z0-9_\/]{12})[^"]*"/g, (match, id) => { if (match.includes("/assets/")) return match; + if (id === this.rootMeta?.noteId) { + return `href="${basePath}"`; + } return `href="#root/${id}"`; }); content = this.rewriteFn(content, noteMeta); From 53e459d0d589edfe6e71cd2ba757f6b7e1512201 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 19:16:23 +0200 Subject: [PATCH 092/136] feat(build-docs): add redirect to user-guide --- apps/build-docs/src/build-docs.ts | 2 +- apps/build-docs/src/index.html | 10 ++++++++++ apps/build-docs/src/main.ts | 5 ++++- 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 apps/build-docs/src/index.html diff --git a/apps/build-docs/src/build-docs.ts b/apps/build-docs/src/build-docs.ts index 7679cb961..788e4a924 100644 --- a/apps/build-docs/src/build-docs.ts +++ b/apps/build-docs/src/build-docs.ts @@ -55,7 +55,7 @@ async function buildDocsInner() { // Build User Guide console.log("Building User Guide..."); - await importAndExportDocs(join(__dirname, DOCS_ROOT, "User Guide"), ""); + await importAndExportDocs(join(__dirname, DOCS_ROOT, "User Guide"), "user-guide"); // Build Developer Guide console.log("Building Developer Guide..."); diff --git a/apps/build-docs/src/index.html b/apps/build-docs/src/index.html new file mode 100644 index 000000000..47a0bfb34 --- /dev/null +++ b/apps/build-docs/src/index.html @@ -0,0 +1,10 @@ + + + + + Redirecting... + + +

If you are not redirected automatically, click here.

+ + \ No newline at end of file diff --git a/apps/build-docs/src/main.ts b/apps/build-docs/src/main.ts index 8e6804fe5..19d533420 100644 --- a/apps/build-docs/src/main.ts +++ b/apps/build-docs/src/main.ts @@ -1,7 +1,7 @@ import { join } from "path"; import BuildContext from "./context"; import buildSwagger from "./swagger"; -import { existsSync, mkdirSync, rmSync } from "fs"; +import { cpSync, existsSync, mkdirSync, rmSync } from "fs"; import buildDocs from "./build-docs"; import buildScriptApi from "./script-api"; @@ -21,6 +21,9 @@ async function main() { await buildDocs(context); buildSwagger(context); buildScriptApi(context); + + // Copy index file. + cpSync(join(__dirname, "index.html"), join(context.baseDir, "index.html")); } main(); From aa526d973537f7c80208661f07f6c1313e7912d2 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 19:28:03 +0200 Subject: [PATCH 093/136] fix(build-docs): favicon missing --- apps/build-docs/src/build-docs.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/build-docs/src/build-docs.ts b/apps/build-docs/src/build-docs.ts index 788e4a924..5d1a0cdd6 100644 --- a/apps/build-docs/src/build-docs.ts +++ b/apps/build-docs/src/build-docs.ts @@ -63,6 +63,8 @@ async function buildDocsInner() { // 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!"); } From d784acaf13429730229fb0ccac755886773f8c04 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 20:13:21 +0200 Subject: [PATCH 094/136] docs(dev): add frontpage --- .../Advanced Usage/ETAPI (REST API).html | 16 +++--- .../Note Types/Mermaid Diagrams.html | 55 +++++++++---------- docs/Developer Guide/!!!meta.json | 18 +++++- docs/Developer Guide/Developer Guide.md | 4 ++ docs/User Guide/!!!meta.json | 34 ++++++------ 5 files changed, 71 insertions(+), 56 deletions(-) create mode 100644 docs/Developer Guide/Developer Guide.md diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/ETAPI (REST API).html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/ETAPI (REST API).html index 3d922c880..3a3c2fdf8 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/ETAPI (REST API).html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/ETAPI (REST API).html @@ -1,5 +1,5 @@

ETAPI is Trilium's public/external REST API. It is available since Trilium v0.50.

@@ -7,7 +7,7 @@

As an alternative to calling the API directly, there are client libraries to simplify this

Obtaining a token

@@ -25,10 +25,10 @@ Authorization: ETAPITOKEN

Since v0.56 you can also use basic auth format:

GET https://myserver.com/etapi/app-info
 Authorization: Basic BATOKEN
    -
  • Where BATOKEN = BASE64(username + ':' + password) - this is +
  • Where BATOKEN = BASE64(username + ':' + password) - this is a standard Basic Auth serialization
  • -
  • Where username is "etapi"
  • -
  • And password is the generated ETAPI token described above.
  • +
  • Where username is "etapi"
  • +
  • And password is the generated ETAPI token described above.

Basic Auth is meant to be used with tools which support only basic auth.

Interaction using Bash scripts

@@ -44,10 +44,10 @@ NOTE_ID="i6ra4ZshJhgN" curl "$SERVER/etapi/notes/$NOTE_ID/content" -H "Authorization: $TOKEN"

Make sure to replace the values of:

    -
  • TOKEN with your ETAPI token.
  • -
  • SERVER with the correct protocol, host name and port to your +
  • TOKEN with your ETAPI token.
  • +
  • SERVER with the correct protocol, host name and port to your Trilium instance.
  • -
  • NOTE_ID with an existing note ID to download.
  • +
  • NOTE_ID with an existing note ID to download.

As another example, to obtain a .zip export of a note and place it in a directory called out, simply replace the last statement in diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types/Mermaid Diagrams.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types/Mermaid Diagrams.html index a312fef93..3699a257b 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types/Mermaid Diagrams.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types/Mermaid Diagrams.html @@ -1,7 +1,6 @@

Depending on the chart being edited and user preference, there are two layouts supported by the Mermaid note type:

    -
  • Horizontal, where the source code (editable part) is on the left side +
  • Horizontal, where the source code (editable part) is on the left side of the screen and the preview is to the right.
  • -
  • Vertical, where the source code is at the bottom of the screen and the +
  • Vertical, where the source code is at the bottom of the screen and the preview is at the top.

It's possible to switch between the two layouts at any time by pressing @@ -25,48 +24,44 @@ icon in the Floating buttons area.

Interaction

    -
  • The source code of the diagram (in Mermaid format) is displayed on the +
  • The source code of the diagram (in Mermaid format) is displayed on the left or bottom side of the note (depending on the layout).
      -
    • Changing the diagram code will refresh automatically the diagram.
    • +
    • Changing the diagram code will refresh automatically the diagram.
  • -
  • The preview of the diagram is displayed at the right or top side of the +
  • The preview of the diagram is displayed at the right or top side of the note (depending on the layout):
      -
    • There are dedicated buttons at the bottom-right of the preview to control +
    • There are dedicated buttons at the bottom-right of the preview to control the zoom in, zoom out or re-center the diagram:
    • -
    • The preview can be moved around by holding the left mouse button and dragging.
    • -
    • Zooming can also be done by using the scroll wheel.
    • -
    • The zoom and position on the preview will remain fixed as the diagram - changes, to be able to work more easily with large diagrams.
    • -
    +
  • The preview can be moved around by holding the left mouse button and dragging.
  • +
  • Zooming can also be done by using the scroll wheel.
  • +
  • The zoom and position on the preview will remain fixed as the diagram + changes, to be able to work more easily with large diagrams.
  • +
-
  • The size of the source/preview panes can be adjusted by hovering over +
  • The size of the source/preview panes can be adjusted by hovering over the border between them and dragging it with the mouse.
  • -
  • In the Floating buttons area: +
  • In the Floating buttons area:
      -
    • The source/preview can be laid out left-right or bottom-top via the Move editing pane to the left / bottom option.
    • -
    • Press Lock editing to automatically mark the note as read-only. +
    • The source/preview can be laid out left-right or bottom-top via the Move editing pane to the left / bottom option.
    • +
    • Press Lock editing to automatically mark the note as read-only. In this mode, the code pane is hidden and the diagram is displayed full-size. Similarly, press Unlock editing to mark a read-only note as editable.
    • -
    • Press the Copy image reference to the clipboard to be able to insert - the image representation of the diagram into a text note. See Image references for more information.
    • -
    • Press the Export diagram as SVG to download a scalable/vector rendering - of the diagram. Can be used to present the diagram without degrading when - zooming.
    • -
    • Press the Export diagram as PNG to download a normal image (at +
    • Press the Copy image reference to the clipboard to be able to insert + the image representation of the diagram into a text note. See Image references for more information.
    • +
    • Press the Export diagram as SVG to download a scalable/vector rendering + of the diagram. Can be used to present the diagram without degrading when + zooming.
    • +
    • Press the Export diagram as PNG to download a normal image (at 1x scale, raster) of the diagram. Can be used to send the diagram in more traditional channels such as e-mail.
    • -
    -
  • + +

    Errors in the diagram

    If there is an error in the source code, the error will be displayed in diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index 93338db97..71c009cbd 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -14,8 +14,24 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "label:shareAlias", + "value": "promoted,alias=Slug,single,text", + "isInheritable": true, + "position": 10 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-code-alt", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", + "dataFileName": "Developer Guide.md", "attachments": [], "dirFileName": "Developer Guide", "children": [ diff --git a/docs/Developer Guide/Developer Guide.md b/docs/Developer Guide/Developer Guide.md new file mode 100644 index 000000000..2dd9f42de --- /dev/null +++ b/docs/Developer Guide/Developer Guide.md @@ -0,0 +1,4 @@ +# Developer Guide +This documentation is intended for developers planning to implement new features or maintain the Trilium Notes application, as it describes the architecture of the application. + +For the user-facing documentation, including how to write scripts and the various APIs, consult the [user guide](https://docs.triliumnotes.org/user-guide/) instead. \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index 7c23b54d6..b3d3f98af 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -55,7 +55,7 @@ "name": "iconClass", "value": "bx bx-help-circle", "isInheritable": false, - "position": 40 + "position": 30 } ], "format": "markdown", @@ -8814,17 +8814,24 @@ { "type": "relation", "name": "internalLink", - "value": "XpOYSgsLkTJy", + "value": "WWgeUaBb7UfC", "isInheritable": false, "position": 10 }, { "type": "relation", "name": "internalLink", - "value": "0Ofbk1aSuVRu", + "value": "XpOYSgsLkTJy", "isInheritable": false, "position": 20 }, + { + "type": "relation", + "name": "internalLink", + "value": "0Ofbk1aSuVRu", + "isInheritable": false, + "position": 30 + }, { "type": "label", "name": "shareAlias", @@ -8838,13 +8845,6 @@ "value": "bx bx-selection", "isInheritable": false, "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "WWgeUaBb7UfC", - "isInheritable": false, - "position": 30 } ], "format": "markdown", @@ -12589,6 +12589,13 @@ "type": "text", "mime": "text/markdown", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "9qPsTWBorUhQ", + "isInheritable": false, + "position": 10 + }, { "type": "label", "name": "shareAlias", @@ -12602,13 +12609,6 @@ "value": "bx bx-extension", "isInheritable": false, "position": 30 - }, - { - "type": "relation", - "name": "internalLink", - "value": "9qPsTWBorUhQ", - "isInheritable": false, - "position": 40 } ], "format": "markdown", From 4a47ff2ea0b488777f59c44b697f5206ec9bc145 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 20:31:53 +0200 Subject: [PATCH 095/136] docs(dev): add shareAlias to all notes --- docs/Developer Guide/!!!meta.json | 962 +++++++++++++++++++++++++++--- 1 file changed, 886 insertions(+), 76 deletions(-) diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index 71c009cbd..82f5ac999 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -28,6 +28,13 @@ "value": "bx bx-code-alt", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "developer-guide", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -55,6 +62,13 @@ "value": "bx bx-cog", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "environment-setup", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -81,6 +95,13 @@ "value": "bx bx-list-ul", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "project-structure", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -116,6 +137,13 @@ "value": "bx bx-package", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "ckeditor", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -138,7 +166,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "plugin-migration", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Plugin migration guide.md", "attachments": [] @@ -167,6 +203,13 @@ "value": "bx bx-bug", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "troubleshooting", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -187,7 +230,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "better-sqlite3", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "better-sqlite3 was compiled ag.md", "attachments": [] @@ -207,7 +258,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "architecture", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Development and architecture", @@ -240,6 +299,13 @@ "value": "bx bx-globe", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "i18n", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -262,7 +328,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "guidelines", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Guidelines.md", "attachments": [] @@ -289,6 +363,13 @@ "value": "ky5zpmxXZhhr", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "i18n-ally", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -310,7 +391,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "server-translation", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Server translations.md", "attachments": [] @@ -331,7 +420,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "live-reload", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Live reload.md", "attachments": [] @@ -350,7 +447,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "themes", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Themes.md", "attachments": [] @@ -369,7 +474,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "sync", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Synchronisation", @@ -389,7 +502,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "content-hashing", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Content hashing.md", "attachments": [] @@ -417,6 +538,13 @@ "value": "PXzm2t3sCdsP", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "build-info", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -437,7 +565,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "database", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Database", @@ -492,6 +628,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "attachments", + "isInheritable": false, + "position": 50 } ], "format": "markdown", @@ -541,6 +684,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "attributes", + "isInheritable": false, + "position": 40 } ], "format": "markdown", @@ -569,6 +719,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "blobs", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -618,6 +775,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "branches", + "isInheritable": false, + "position": 40 } ], "format": "markdown", @@ -646,6 +810,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "entity-changes", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -681,6 +852,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "etapi-tokens", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -730,6 +908,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "notes", + "isInheritable": false, + "position": 40 } ], "format": "markdown", @@ -758,6 +943,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "options", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -793,6 +985,13 @@ "value": "bx bx-table", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "recent-notes", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -816,16 +1015,16 @@ "mime": "text/html", "attributes": [ { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", + "type": "label", + "name": "iconClass", + "value": "bx bx-table", "isInheritable": false, "position": 10 }, { "type": "relation", "name": "internalLink", - "value": "VIcWnKGs0sMh", + "value": "DSkl8C325tEC", "isInheritable": false, "position": 20 }, @@ -837,11 +1036,18 @@ "position": 30 }, { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", + "type": "relation", + "name": "internalLink", + "value": "VIcWnKGs0sMh", "isInheritable": false, - "position": 10 + "position": 40 + }, + { + "type": "label", + "name": "shareAlias", + "value": "revisions", + "isInheritable": false, + "position": 50 } ], "format": "markdown", @@ -885,6 +1091,13 @@ "value": "s7ZBiaJVNumK", "isInheritable": false, "position": 30 + }, + { + "type": "label", + "name": "shareAlias", + "value": "protected-entities", + "isInheritable": false, + "position": 40 } ], "format": "markdown", @@ -905,7 +1118,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "deleted-notes", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Deleted notes.md", "attachments": [] @@ -924,7 +1145,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "special-notes", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Special notes.md", "attachments": [] @@ -943,7 +1172,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "branch-prefix", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Branch prefixes.md", "attachments": [] @@ -962,7 +1199,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "revisions", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Revisions.md", "attachments": [] @@ -981,7 +1226,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "backlinks", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Backlinks.md", "attachments": [] @@ -1007,6 +1260,13 @@ "value": "DSkl8C325tEC", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "note-types", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -1027,7 +1287,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "safe-mode", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Safe mode.md", "attachments": [] @@ -1060,6 +1328,13 @@ "value": "oLhKpfi2kGON", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "icons", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -1082,7 +1357,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "removed-icons", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Removed icons.md", "attachments": [] @@ -1102,7 +1385,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "mac-icons", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Icons on Mac.md", "attachments": [ @@ -1141,7 +1432,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "slightly-blurry-icon", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Slightly blurry icon on Mac.md", "attachments": [ @@ -1187,7 +1486,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "adaptive-icon", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Adaptive icon.md", "attachments": [ @@ -1267,7 +1574,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "demo-document", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Demo document.md", "attachments": [] @@ -1286,7 +1601,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "docker", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Docker.md", "attachments": [] @@ -1305,7 +1628,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "options", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Options.md", "attachments": [], @@ -1326,7 +1657,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "checkbox-options", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Check box option.md", "attachments": [] @@ -1346,7 +1685,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "ui-refresh", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Trigger UI refresh.md", "attachments": [] @@ -1366,7 +1713,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "in-settings", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Displaying the option in setti.md", "attachments": [] @@ -1386,7 +1741,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "refreshing-with-options", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Refresh widget with option cha.md", "attachments": [] @@ -1406,7 +1769,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "new-option", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Creating a new option.md", "attachments": [] @@ -1427,7 +1798,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "new-note-type", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Adding a new note type", @@ -1461,6 +1840,13 @@ "value": "oLhKpfi2kGON", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "first-steps", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -1526,6 +1912,13 @@ "value": "bx bx-list-check", "isInheritable": false, "position": 40 + }, + { + "type": "label", + "name": "shareAlias", + "value": "checklist", + "isInheritable": false, + "position": 50 } ], "format": "markdown", @@ -1554,6 +1947,13 @@ "value": "OGYpAbrmEXbX", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "saving-data", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -1582,6 +1982,13 @@ "value": "PoxUNujeKJ7T", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "loading-data", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -1603,7 +2010,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "svg-rendering", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "SVG rendering.md", "attachments": [] @@ -1623,7 +2038,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "copy-image-reference", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Copy image reference to the cl.md", "attachments": [] @@ -1650,6 +2073,13 @@ "value": "OGYpAbrmEXbX", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "export-to-svg", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -1672,7 +2102,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "printing", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Printing.md", "attachments": [] @@ -1691,7 +2129,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "launchers", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Launchers.md", "attachments": [] @@ -1710,7 +2156,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "syntax-highlighting", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Syntax highlighting.md", "attachments": [] @@ -1729,7 +2183,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "hidden-notes", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Hidden notes.md", "attachments": [] @@ -1755,6 +2217,13 @@ "value": "bx bx-share-alt", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "share", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -1776,7 +2245,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "building", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Building and deployment", @@ -1795,7 +2272,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "nix-flake", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Nix flake.md", "attachments": [] @@ -1815,7 +2300,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "old-documentation", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Old documentation", @@ -1834,7 +2327,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "build-deliveries", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Build deliveries locally.md", "attachments": [] @@ -1853,7 +2354,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "releasing", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Releasing a version.md", "attachments": [] @@ -1872,7 +2381,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "dev-build", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Running a development build.md", "attachments": [] @@ -1891,7 +2408,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "building", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Building and deployment", @@ -1927,7 +2452,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "documentation", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Documentation.md", "attachments": [] @@ -1947,7 +2480,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "ci", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "CI", @@ -1975,6 +2516,13 @@ "value": "PXzm2t3sCdsP", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "main", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2055,6 +2603,13 @@ "value": "bx bx-package", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "deps", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2076,7 +2631,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "new-client-library", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Adding a new client library.md", "attachments": [] @@ -2096,7 +2659,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "packaging-system", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Having a simpler packaging sys.md", "attachments": [] @@ -2117,7 +2688,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "project-maintenance", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Project maintenance", @@ -2144,6 +2723,13 @@ "value": "Xfi1ScuBTKJf", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "updating-deps", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2174,6 +2760,13 @@ "value": "PXzm2t3sCdsP", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "bettersqlite-binaries", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2196,7 +2789,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "nodejs-electron-bettersqlite3", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Node.js, Electron and `better-.md", "attachments": [] @@ -2217,7 +2818,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "compatibility-matrix", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Testing compatibility.md", "attachments": [] @@ -2240,7 +2849,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "scripting", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Scripting", @@ -2260,7 +2877,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "widgets", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Widgets.md", "attachments": [], @@ -2282,7 +2907,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "right-pane-widget", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Right pane widget.md", "attachments": [] @@ -2303,7 +2936,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "css", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "CSS.md", "attachments": [] @@ -2325,7 +2966,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "server-imports", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Server-side imports.md", "attachments": [] @@ -2346,7 +2995,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "documentation", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Documentation.md", "attachments": [ @@ -2376,7 +3033,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "doc-references", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Documentation references in th.md", "attachments": [] @@ -2397,7 +3062,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "testing", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Testing.md", "attachments": [], @@ -2418,7 +3091,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "integration", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Integration testing", @@ -2439,7 +3120,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "auth", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Setting up authentication.md", "attachments": [ @@ -2477,7 +3166,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "test-database", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Test database.md", "attachments": [] @@ -2498,7 +3195,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "running-tests", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Running tests.md", "attachments": [] @@ -2521,7 +3226,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "subprojects", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Sub-projects", @@ -2541,7 +3254,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "ckeditor", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "CKEditor", @@ -2569,6 +3290,13 @@ "value": "CaInsmrlZhR6", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "environment-setup", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2598,6 +3326,13 @@ "value": "5yWZVlKPjLCC", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "building-the-editor", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2634,6 +3369,13 @@ "value": "", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "differences-from-upstream", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2677,6 +3419,13 @@ "value": "yAFSS6awVbaZ", "isInheritable": false, "position": 30 + }, + { + "type": "label", + "name": "shareAlias", + "value": "updating", + "isInheritable": false, + "position": 40 } ], "format": "markdown", @@ -2706,6 +3455,13 @@ "value": "lY19SLxUMj3J", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "external-plugin-and-versions", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2750,6 +3506,13 @@ "value": "CaInsmrlZhR6", "isInheritable": false, "position": 30 + }, + { + "type": "label", + "name": "shareAlias", + "value": "ckeditor5-math", + "isInheritable": false, + "position": 40 } ], "format": "markdown", @@ -2789,6 +3552,13 @@ "value": "UMN2ABrBU5D7", "isInheritable": false, "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "updating-upstream", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -2811,7 +3581,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "release-management", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Release management & continuou.md", "attachments": [] @@ -2834,7 +3612,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "troubleshooting", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Troubleshooting", @@ -2854,7 +3640,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "esbuild-error", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Error [TransformError] The pac.md", "attachments": [] @@ -2875,7 +3669,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "installation", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Installation", @@ -2895,7 +3697,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "download-nightly", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Download latest nightly and in.md", "attachments": [] From d9071f2d8e77069a3e8214d4083b3b5adf7b3561 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 22:16:15 +0200 Subject: [PATCH 096/136] docs(dev): update recent technical documentation --- .../doc_notes/en/User Guide/!!!meta.json | 2 +- .../User Guide/Advanced Usage/Safe mode.html | 15 + .../Desktop Installation/Nix flake.html | 64 + .../Server Installation/Nix flake.clone.html | 1 + docs/Developer Guide/!!!meta.json | 2584 ++++++++--------- .../Backlinks.md | 0 .../Branch prefixes.md | 0 .../Database structure}/attachments.md | 0 .../Database structure/attributes.md | 2 + .../Architecture/Database structure/blobs.md | 2 + .../Database structure}/branches.md | 0 .../Database structure}/entity_changes.md | 0 .../Database structure}/etapi_tokens.md | 0 .../Database structure}/notes.md | 0 .../Database structure}/options.md | 0 .../Database structure}/recent_notes.md | 0 .../Database structure}/revisions.md | 0 .../Deleted notes.md | 0 .../Architecture/Demo document.md | 22 + .../Hidden notes.md | 0 .../Icons.md | 0 .../Internationalisation Translat.md | 0 .../Guidelines.md | 0 .../Server translations.md | 0 .../i18n-ally.md | 0 .../Launchers.md | 0 .../Note Revisions.md} | 0 .../Copy image reference to the cl.md | 0 .../Export diagram as SVG.md | 0 .../Adding a new note type/First steps.md | 2 +- .../First steps/mind_map.js | 0 .../Adding a new note type/Loading data.md | 0 .../Note type checklist.md | 0 .../Adding a new note type/SVG rendering.md | 0 .../Saving data via spaced update.md | 0 .../Developer Guide/Architecture/Options.md | 43 + .../Options/Creating a new option.md | 0 .../Printing and exporting to PDF.md | 18 + .../Architecture/Protected entities.md | 6 + .../Share.md | 0 .../Synchronisation/Content hashing.md | 0 .../Syntax highlighting.md | 0 .../Themes.md | 0 .../Building/Build information.md | 4 + .../Developer Guide/Building/Docker.md | 8 + .../Building/Live reload (HMR).md | 10 + .../Build information.md | 4 - .../Database/attributes.md | 2 - .../Database/blobs.md | 2 - .../Demo document.md | 19 - .../Development and architecture/Docker.md | 18 - .../Icons/1_Icons on Mac_image.png | Bin 238448 -> 0 bytes .../Icons/Icons on Mac.md | 8 - .../Icons on Mac/1_Adaptive icon_image.png | Bin 238448 -> 0 bytes .../1_Slightly blurry icon on Ma.png | Bin 765762 -> 0 bytes .../Icons on Mac/2_Adaptive icon_image.png | Bin 7596 -> 0 bytes .../2_Slightly blurry icon on Ma.png | Bin 84679 -> 0 bytes .../Icons on Mac/3_Adaptive icon_image.png | Bin 6630 -> 0 bytes .../Icons on Mac/4_Adaptive icon_image.png | Bin 255559 -> 0 bytes .../Icons on Mac/5_Adaptive icon_image.png | Bin 7263 -> 0 bytes .../Icons on Mac/6_Adaptive icon_image.png | Bin 257482 -> 0 bytes .../Icons/Icons on Mac/Adaptive icon.md | 15 - .../Icons on Mac/Adaptive icon_image.png | Bin 6936 -> 0 bytes .../Slightly blurry icon on Ma.png | Bin 733661 -> 0 bytes .../Slightly blurry icon on Mac.md | 50 - .../Icons/Icons on Mac_image.png | Bin 344478 -> 0 bytes .../Icons/Removed icons.md | 27 - .../Live reload.md | 20 - .../Note types.md | 30 - .../Development and architecture/Options.md | 14 - .../Options/Check box option.md | 37 - .../Options/Displaying the option in setti.md | 36 - .../Options/Refresh widget with option cha.md | 10 - .../Options/Trigger UI refresh.md | 12 - .../Development and architecture/Printing.md | 15 - .../Protected entities.md | 6 - .../Special notes.md | 0 .../Developer Guide/Environment Setup.md | 7 +- .../Developer Guide/Project Structure.md | 33 +- .../CKEditor/Plugin migration guide.md | 2 +- .../better-sqlite3 was compiled ag.md | 2 +- docs/User Guide/!!!meta.json | 85 + .../User Guide/Advanced Usage}/Safe mode.md | 0 .../Desktop Installation}/Nix flake.md | 0 .../Server Installation/Nix flake.clone.md | 2 + 85 files changed, 1449 insertions(+), 1790 deletions(-) create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Safe mode.html create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake.html create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone.html rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Backlinks.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Branch prefixes.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture/Database => Architecture/Database structure}/attachments.md (100%) create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Database structure/attributes.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Database structure/blobs.md rename docs/Developer Guide/Developer Guide/{Development and architecture/Database => Architecture/Database structure}/branches.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture/Database => Architecture/Database structure}/entity_changes.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture/Database => Architecture/Database structure}/etapi_tokens.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture/Database => Architecture/Database structure}/notes.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture/Database => Architecture/Database structure}/options.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture/Database => Architecture/Database structure}/recent_notes.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture/Database => Architecture/Database structure}/revisions.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Deleted notes.md (100%) create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Demo document.md rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Hidden notes.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Icons.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Internationalisation Translat.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Internationalisation Translations/Guidelines.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Internationalisation Translations/Server translations.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Internationalisation Translations/i18n-ally.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Launchers.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture/Revisions.md => Architecture/Note Revisions.md} (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture/Note Types}/Adding a new note type/Copy image reference to the cl.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture/Note Types}/Adding a new note type/Export diagram as SVG.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture/Note Types}/Adding a new note type/First steps.md (95%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture/Note Types}/Adding a new note type/First steps/mind_map.js (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture/Note Types}/Adding a new note type/Loading data.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture/Note Types}/Adding a new note type/Note type checklist.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture/Note Types}/Adding a new note type/SVG rendering.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture/Note Types}/Adding a new note type/Saving data via spaced update.md (100%) create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Options.md rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Options/Creating a new option.md (100%) create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Printing and exporting to PDF.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Protected entities.md rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Share.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Synchronisation/Content hashing.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Syntax highlighting.md (100%) rename docs/Developer Guide/Developer Guide/{Development and architecture => Architecture}/Themes.md (100%) create mode 100644 docs/Developer Guide/Developer Guide/Building/Build information.md create mode 100644 docs/Developer Guide/Developer Guide/Building/Docker.md create mode 100644 docs/Developer Guide/Developer Guide/Building/Live reload (HMR).md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Build information.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Database/attributes.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Database/blobs.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Demo document.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Docker.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/1_Icons on Mac_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/1_Adaptive icon_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/1_Slightly blurry icon on Ma.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/2_Adaptive icon_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/2_Slightly blurry icon on Ma.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/3_Adaptive icon_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/4_Adaptive icon_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/5_Adaptive icon_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/6_Adaptive icon_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Adaptive icon.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Adaptive icon_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Slightly blurry icon on Ma.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Slightly blurry icon on Mac.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Icons/Removed icons.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Live reload.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Note types.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Options.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Options/Check box option.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Options/Displaying the option in setti.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Options/Refresh widget with option cha.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Options/Trigger UI refresh.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Printing.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Protected entities.md delete mode 100644 docs/Developer Guide/Developer Guide/Development and architecture/Special notes.md rename docs/{Developer Guide/Developer Guide/Development and architecture => User Guide/User Guide/Advanced Usage}/Safe mode.md (100%) rename docs/{Developer Guide/Developer Guide/Building and deployment => User Guide/User Guide/Installation & Setup/Desktop Installation}/Nix flake.md (100%) create mode 100644 docs/User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone.md diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 352732be4..54c139517 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Safe mode.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Safe mode.html new file mode 100644 index 000000000..a169f3800 --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Safe mode.html @@ -0,0 +1,15 @@ +

    Safe mode is triggered by setting the TRILIUM_SAFE_MODE environment + variable to a truthy value, usually 1.

    +

    In each artifact there is a trilium-safe-mode.sh (or .bat) + script to enable it.

    +

    What it does:

    +
      +
    • Disables customWidget launcher types in app/widgets/containers/launcher.js.
    • +
    • Disables the running of mobileStartup or frontendStartup scripts.
    • +
    • Displays the root note instead of the previously saved session.
    • +
    • Disables the running of backendStartup, hourly, daily scripts + and checks for the hidden subtree.
    • +
    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake.html new file mode 100644 index 000000000..6436cfbe8 --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake.html @@ -0,0 +1,64 @@ +

    Since TriliumNext 0.94.1, the desktop and server applications can be built + using Nix.

    +

    System requirements

    +

    Installation of Nix on Mac or Linux (download page). + About 3-4 gigabytes of additional storage space, for build artifacts.

    +

    Run directly

    +

    Using nix run, + the desktop app can be started as: nix run github:TriliumNext/Trilium/v0.95.0 +

    +

    Running the server requires explicitly specifying the desired package: nix run github:TriliumNext/Trilium/v0.95.0#server +

    +

    Instead of a version (v0.95.0 above), you can also specify + a commit hash (or a branch name). This makes it easy to test development + builds.

    +

    Install on NixOS

    +

    Add to your flake.nix:

    {
    +  inputs = {
    +    nixpkgs.url = # ...;
    +    trilium-notes = {
    +      url = "github:TriliumNext/Trilium/v0.95.0";
    +      inputs.nixpkgs.follows = "nixpkgs";
    +    };
    +  };
    +
    +  outputs =
    +    {
    +      self,
    +      # ...
    +      trilium-notes,
    +      ...
    +    }:
    +    {
    +      nixosConfigurations = {
    +        "nixos" = nixpkgs.lib.nixosSystem {
    +          system = "x86_64-linux";
    +          modules = [
    +            ./configuration.nix
    +          ];
    +          specialArgs = {
    +            inherit
    +              trilium-notes
    +              ;
    +          };
    +        };
    +      };
    +    };
    +}
    +
    +

    Add to your configuration.nix:

    {
    +  # ...
    +  trilium-notes,
    +  ...
    +}:
    +
    +{
    +  # ...
    +
    +  services.trilium-server.package = trilium-notes.packages.x86_64-linux.server;
    +
    +  environment.systemPackages = [
    +    trilium-notes.packages.x86_64-linux.desktop
    +  ];
    +}
    +

    The flake aims to be compatible with the latest NixOS stable and unstable.

    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone.html new file mode 100644 index 000000000..e9944f59e --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone.html @@ -0,0 +1 @@ +

    This is a clone of a note. Go to its primary location.

    \ No newline at end of file diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index 82f5ac999..244b6be5f 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -50,7 +50,7 @@ "T2W7WCZrYZBU" ], "title": "Environment Setup", - "notePosition": 50, + "notePosition": 260, "prefix": null, "isExpanded": false, "type": "text", @@ -69,12 +69,149 @@ "value": "environment-setup", "isInheritable": false, "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "TLXJwBDo8Rdv", + "isInheritable": false, + "position": 30 } ], "format": "markdown", "dataFileName": "Environment Setup.md", "attachments": [] }, + { + "isClone": false, + "noteId": "a0mkxxB4Uvbf", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf" + ], + "title": "Building", + "notePosition": 270, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "building", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-terminal", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "Building", + "children": [ + { + "isClone": false, + "noteId": "mXFYlhuEr1mZ", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "mXFYlhuEr1mZ" + ], + "title": "Docker", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "docker", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bxl-docker", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Docker.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "aGlhNBEA9wwo", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "aGlhNBEA9wwo" + ], + "title": "Build information", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "build-info", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-info-circle", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Build information.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "fI16A7NrT713", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "fI16A7NrT713" + ], + "title": "Live reload (HMR)", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "live-reload", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Live reload (HMR).md", + "attachments": [] + } + ] + }, { "isClone": false, "noteId": "cxfTSHIUQtt2", @@ -83,7 +220,7 @@ "cxfTSHIUQtt2" ], "title": "Project Structure", - "notePosition": 190, + "notePosition": 280, "prefix": null, "isExpanded": false, "type": "text", @@ -92,7 +229,7 @@ { "type": "label", "name": "iconClass", - "value": "bx bx-list-ul", + "value": "bx bxs-component", "isInheritable": false, "position": 10 }, @@ -102,6 +239,13 @@ "value": "project-structure", "isInheritable": false, "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "mXFYlhuEr1mZ", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -185,75 +329,13 @@ }, { "isClone": false, - "noteId": "YjerxU7Aii8X", + "noteId": "yeqU0zo0ZQ83", "notePath": [ "jdjRLhLV3TtI", - "YjerxU7Aii8X" + "yeqU0zo0ZQ83" ], - "title": "Troubleshooting", - "notePosition": 200, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "iconClass", - "value": "bx bx-bug", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "troubleshooting", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Troubleshooting", - "children": [ - { - "isClone": false, - "noteId": "g9nFZ6dRz1Cg", - "notePath": [ - "jdjRLhLV3TtI", - "YjerxU7Aii8X", - "g9nFZ6dRz1Cg" - ], - "title": "better-sqlite3 was compiled against a different Node.js version", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "better-sqlite3", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "better-sqlite3 was compiled ag.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "wbVIolLKDhe2", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2" - ], - "title": "Development and architecture", - "notePosition": 220, + "title": "Architecture", + "notePosition": 290, "prefix": null, "isExpanded": false, "type": "text", @@ -264,22 +346,36 @@ "name": "shareAlias", "value": "architecture", "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-arch", + "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "sorted", + "value": "", + "isInheritable": false, + "position": 30 } ], "format": "markdown", "attachments": [], - "dirFileName": "Development and architecture", + "dirFileName": "Architecture", "children": [ { "isClone": false, - "noteId": "TLXJwBDo8Rdv", + "noteId": "3mz4ZYhi9Cy8", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "TLXJwBDo8Rdv" + "yeqU0zo0ZQ83", + "3mz4ZYhi9Cy8" ], - "title": "Internationalisation / Translations", + "title": "Backlinks", "notePosition": 10, "prefix": null, "isExpanded": false, @@ -287,134 +383,33 @@ "mime": "text/html", "attributes": [ { - "type": "relation", - "name": "internalLink", - "value": "ky5zpmxXZhhr", + "type": "label", + "name": "shareAlias", + "value": "backlinks", "isInheritable": false, - "position": 10 + "position": 20 }, { "type": "label", "name": "iconClass", - "value": "bx bx-globe", + "value": "bx bx-link-alt", "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "i18n", - "isInheritable": false, - "position": 20 + "position": 30 } ], "format": "markdown", - "dataFileName": "Internationalisation Translat.md", - "attachments": [], - "dirFileName": "Internationalisation Translations", - "children": [ - { - "isClone": false, - "noteId": "ky5zpmxXZhhr", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "TLXJwBDo8Rdv", - "ky5zpmxXZhhr" - ], - "title": "Guidelines", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "guidelines", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Guidelines.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "VTebBD3jZjdp", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "TLXJwBDo8Rdv", - "VTebBD3jZjdp" - ], - "title": "i18n-ally", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "ky5zpmxXZhhr", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "i18n-ally", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "i18n-ally.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "KhDvxPlQQybs", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "TLXJwBDo8Rdv", - "KhDvxPlQQybs" - ], - "title": "Server translations", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "server-translation", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Server translations.md", - "attachments": [] - } - ] + "dataFileName": "Backlinks.md", + "attachments": [] }, { "isClone": false, - "noteId": "fI16A7NrT713", + "noteId": "h8AsuFjSD4fB", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "fI16A7NrT713" + "yeqU0zo0ZQ83", + "h8AsuFjSD4fB" ], - "title": "Live reload", + "title": "Branch prefixes", "notePosition": 20, "prefix": null, "isExpanded": false, @@ -424,131 +419,13 @@ { "type": "label", "name": "shareAlias", - "value": "live-reload", + "value": "branch-prefix", "isInheritable": false, "position": 20 } ], "format": "markdown", - "dataFileName": "Live reload.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "7BCukQTCm7fv", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "7BCukQTCm7fv" - ], - "title": "Themes", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "themes", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Themes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "n9wYW9nUTynV", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "n9wYW9nUTynV" - ], - "title": "Synchronisation", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "sync", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Synchronisation", - "children": [ - { - "isClone": false, - "noteId": "wA6tm9xcWWaB", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "n9wYW9nUTynV", - "wA6tm9xcWWaB" - ], - "title": "Content hashing", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "content-hashing", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Content hashing.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "aGlhNBEA9wwo", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "aGlhNBEA9wwo" - ], - "title": "Build information", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "PXzm2t3sCdsP", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "build-info", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Build information.md", + "dataFileName": "Branch prefixes.md", "attachments": [] }, { @@ -556,11 +433,11 @@ "noteId": "vNMojjUN76jc", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc" ], - "title": "Database", - "notePosition": 60, + "title": "Database structure", + "notePosition": 30, "prefix": null, "isExpanded": false, "type": "text", @@ -572,18 +449,25 @@ "value": "database", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-data", + "isInheritable": false, + "position": 30 } ], "format": "markdown", "attachments": [], - "dirFileName": "Database", + "dirFileName": "Database structure", "children": [ { "isClone": false, "noteId": "e6GnYOXeIWjg", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "e6GnYOXeIWjg" ], @@ -646,7 +530,7 @@ "noteId": "ciL84vNBNi9y", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "ciL84vNBNi9y" ], @@ -657,13 +541,6 @@ "type": "text", "mime": "text/html", "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "r11Bh3uxFGRj", - "isInheritable": false, - "position": 10 - }, { "type": "relation", "name": "internalLink", @@ -702,7 +579,7 @@ "noteId": "VIcWnKGs0sMh", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "VIcWnKGs0sMh" ], @@ -737,7 +614,7 @@ "noteId": "GskLPkgY5n6E", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "GskLPkgY5n6E" ], @@ -793,7 +670,7 @@ "noteId": "ohhExR078MPU", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "ohhExR078MPU" ], @@ -828,7 +705,7 @@ "noteId": "bRqbIg633nCs", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "bRqbIg633nCs" ], @@ -870,7 +747,7 @@ "noteId": "DSkl8C325tEC", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "DSkl8C325tEC" ], @@ -926,7 +803,7 @@ "noteId": "4oeftEmy77Bt", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "4oeftEmy77Bt" ], @@ -961,7 +838,7 @@ "noteId": "VyFirdgAOoh5", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "VyFirdgAOoh5" ], @@ -1003,7 +880,7 @@ "noteId": "s7ZBiaJVNumK", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vNMojjUN76jc", "s7ZBiaJVNumK" ], @@ -1056,16 +933,795 @@ } ] }, + { + "isClone": false, + "noteId": "tM3rIZQzlum4", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "tM3rIZQzlum4" + ], + "title": "Deleted notes", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "deleted-notes", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-trash", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Deleted notes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "oLhKpfi2kGON", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "oLhKpfi2kGON" + ], + "title": "Demo document", + "notePosition": 50, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "demo-document", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bxs-file-archive", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Demo document.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "UzRirf46Xi46", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "UzRirf46Xi46" + ], + "title": "Hidden notes", + "notePosition": 60, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "hidden-notes", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-low-vision", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Hidden notes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "m2W35hwSDUeh", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "m2W35hwSDUeh" + ], + "title": "Icons", + "notePosition": 70, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "PXzm2t3sCdsP", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "oLhKpfi2kGON", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "icons", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Icons.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "TLXJwBDo8Rdv", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "TLXJwBDo8Rdv" + ], + "title": "Internationalisation / Translations", + "notePosition": 80, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "ky5zpmxXZhhr", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-globe", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "i18n", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Internationalisation Translat.md", + "attachments": [], + "dirFileName": "Internationalisation Translations", + "children": [ + { + "isClone": false, + "noteId": "ky5zpmxXZhhr", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "TLXJwBDo8Rdv", + "ky5zpmxXZhhr" + ], + "title": "Guidelines", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "guidelines", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Guidelines.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "VTebBD3jZjdp", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "TLXJwBDo8Rdv", + "VTebBD3jZjdp" + ], + "title": "i18n-ally", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "ky5zpmxXZhhr", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "i18n-ally", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "i18n-ally.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "KhDvxPlQQybs", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "TLXJwBDo8Rdv", + "KhDvxPlQQybs" + ], + "title": "Server translations", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "server-translation", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Server translations.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "Usiyzn9C4WFv", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "Usiyzn9C4WFv" + ], + "title": "Launchers", + "notePosition": 90, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "launchers", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Launchers.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "qjQNyaYXSNWu", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "qjQNyaYXSNWu" + ], + "title": "Note Revisions", + "notePosition": 100, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "revisions", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-history", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Note Revisions.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "7RBJMqVz2EsJ", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ" + ], + "title": "Note Types", + "notePosition": 110, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Note Types", + "children": [ + { + "isClone": false, + "noteId": "AdNRgGrYeTCy", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy" + ], + "title": "Adding a new note type", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "new-note-type", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "Adding a new note type", + "children": [ + { + "isClone": false, + "noteId": "UFtOg3sLumZM", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy", + "UFtOg3sLumZM" + ], + "title": "First steps", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "lgFwLJT72mdf", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "oLhKpfi2kGON", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "first-steps", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "First steps.md", + "attachments": [], + "dirFileName": "First steps", + "children": [ + { + "isClone": false, + "noteId": "aSO1wqK7L1ma", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy", + "UFtOg3sLumZM", + "aSO1wqK7L1ma" + ], + "title": "mind_map.js", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "code", + "mime": "application/javascript;env=frontend", + "attributes": [], + "dataFileName": "mind_map.js", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "lgFwLJT72mdf", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy", + "lgFwLJT72mdf" + ], + "title": "Note type checklist", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "UFtOg3sLumZM", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "OGYpAbrmEXbX", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-list-check", + "isInheritable": false, + "position": 40 + }, + { + "type": "label", + "name": "shareAlias", + "value": "checklist", + "isInheritable": false, + "position": 50 + } + ], + "format": "markdown", + "dataFileName": "Note type checklist.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "PoxUNujeKJ7T", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy", + "PoxUNujeKJ7T" + ], + "title": "Saving data via spaced update", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "OGYpAbrmEXbX", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "saving-data", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Saving data via spaced update.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "xYVE7qA3EBwb", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy", + "xYVE7qA3EBwb" + ], + "title": "Loading data", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "PoxUNujeKJ7T", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "loading-data", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Loading data.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "OGYpAbrmEXbX", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy", + "OGYpAbrmEXbX" + ], + "title": "SVG rendering", + "notePosition": 50, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "svg-rendering", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "SVG rendering.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "Q8hgB8EEen80", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy", + "Q8hgB8EEen80" + ], + "title": "Copy image reference to the clipboard", + "notePosition": 60, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "copy-image-reference", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Copy image reference to the cl.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "AwWq8bJRl6XD", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7RBJMqVz2EsJ", + "AdNRgGrYeTCy", + "AwWq8bJRl6XD" + ], + "title": "Export diagram as SVG", + "notePosition": 70, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "OGYpAbrmEXbX", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "export-to-svg", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Export diagram as SVG.md", + "attachments": [] + } + ] + } + ] + }, + { + "isClone": false, + "noteId": "6dC7ha5vjqqS", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "6dC7ha5vjqqS" + ], + "title": "Options", + "notePosition": 120, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "options", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-cog", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Options.md", + "attachments": [], + "dirFileName": "Options", + "children": [ + { + "isClone": false, + "noteId": "NcHcYOEn4ol5", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "6dC7ha5vjqqS", + "NcHcYOEn4ol5" + ], + "title": "Creating a new option", + "notePosition": 50, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "new-option", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Creating a new option.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "W0msUwLxm40d", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "W0msUwLxm40d" + ], + "title": "Printing and exporting to PDF", + "notePosition": 130, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "printing", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "k7RavjuXQt8z", + "isInheritable": false, + "position": 40 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-printer", + "isInheritable": false, + "position": 50 + } + ], + "format": "markdown", + "dataFileName": "Printing and exporting to PDF.md", + "attachments": [] + }, { "isClone": false, "noteId": "UvXpeSqfYc6d", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "UvXpeSqfYc6d" ], "title": "Protected entities", - "notePosition": 80, + "notePosition": 140, "prefix": null, "isExpanded": false, "type": "text", @@ -1098,1114 +1754,29 @@ "value": "protected-entities", "isInheritable": false, "position": 40 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-lock-alt", + "isInheritable": false, + "position": 50 } ], "format": "markdown", "dataFileName": "Protected entities.md", "attachments": [] }, - { - "isClone": false, - "noteId": "tM3rIZQzlum4", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "tM3rIZQzlum4" - ], - "title": "Deleted notes", - "notePosition": 90, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "deleted-notes", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Deleted notes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "r11Bh3uxFGRj", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "r11Bh3uxFGRj" - ], - "title": "Special notes", - "notePosition": 100, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "special-notes", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Special notes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "h8AsuFjSD4fB", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "h8AsuFjSD4fB" - ], - "title": "Branch prefixes", - "notePosition": 110, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "branch-prefix", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Branch prefixes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "qjQNyaYXSNWu", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "qjQNyaYXSNWu" - ], - "title": "Revisions", - "notePosition": 120, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "revisions", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Revisions.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "3mz4ZYhi9Cy8", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "3mz4ZYhi9Cy8" - ], - "title": "Backlinks", - "notePosition": 130, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "backlinks", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Backlinks.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "ItZRqNGeGSU0", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "ItZRqNGeGSU0" - ], - "title": "Note types", - "notePosition": 140, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "note-types", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Note types.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "64ZTlUPgEPtW", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "64ZTlUPgEPtW" - ], - "title": "Safe mode", - "notePosition": 150, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "safe-mode", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Safe mode.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "m2W35hwSDUeh", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "m2W35hwSDUeh" - ], - "title": "Icons", - "notePosition": 160, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "PXzm2t3sCdsP", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "oLhKpfi2kGON", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "shareAlias", - "value": "icons", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", - "dataFileName": "Icons.md", - "attachments": [], - "dirFileName": "Icons", - "children": [ - { - "isClone": false, - "noteId": "rUkJPiX0sJSk", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "m2W35hwSDUeh", - "rUkJPiX0sJSk" - ], - "title": "Removed icons", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "removed-icons", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Removed icons.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "GzrBXey1UTUW", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "m2W35hwSDUeh", - "GzrBXey1UTUW" - ], - "title": "Icons on Mac", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "mac-icons", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Icons on Mac.md", - "attachments": [ - { - "attachmentId": "gMQM37l1tgDc", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "Icons on Mac_image.png" - }, - { - "attachmentId": "KBbeDSs1hueu", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "1_Icons on Mac_image.png" - } - ], - "dirFileName": "Icons on Mac", - "children": [ - { - "isClone": false, - "noteId": "0btkkp7llQdO", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "m2W35hwSDUeh", - "GzrBXey1UTUW", - "0btkkp7llQdO" - ], - "title": "Slightly blurry icon on Mac", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "slightly-blurry-icon", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Slightly blurry icon on Mac.md", - "attachments": [ - { - "attachmentId": "6USSTMu15E6N", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "Slightly blurry icon on Ma.png" - }, - { - "attachmentId": "KEkBj1bOyfQ5", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "1_Slightly blurry icon on Ma.png" - }, - { - "attachmentId": "XaG2VbiqKYtR", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "2_Slightly blurry icon on Ma.png" - } - ] - }, - { - "isClone": false, - "noteId": "8zAJ5J8SFEp8", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "m2W35hwSDUeh", - "GzrBXey1UTUW", - "8zAJ5J8SFEp8" - ], - "title": "Adaptive icon", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "adaptive-icon", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Adaptive icon.md", - "attachments": [ - { - "attachmentId": "38usIA7IJTpY", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "Adaptive icon_image.png" - }, - { - "attachmentId": "4eQa9Eqkuekv", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "1_Adaptive icon_image.png" - }, - { - "attachmentId": "gM1I22x3bYDv", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "2_Adaptive icon_image.png" - }, - { - "attachmentId": "Im2xMquSwizu", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "3_Adaptive icon_image.png" - }, - { - "attachmentId": "l2xu0BHxfPfq", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "4_Adaptive icon_image.png" - }, - { - "attachmentId": "wM6YPPsas7tA", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "5_Adaptive icon_image.png" - }, - { - "attachmentId": "zPLIBv0Xvgwm", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "6_Adaptive icon_image.png" - } - ] - } - ] - } - ] - }, - { - "isClone": false, - "noteId": "oLhKpfi2kGON", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "oLhKpfi2kGON" - ], - "title": "Demo document", - "notePosition": 170, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "demo-document", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Demo document.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "mXFYlhuEr1mZ", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "mXFYlhuEr1mZ" - ], - "title": "Docker", - "notePosition": 180, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "docker", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Docker.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "6dC7ha5vjqqS", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "6dC7ha5vjqqS" - ], - "title": "Options", - "notePosition": 190, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "options", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Options.md", - "attachments": [], - "dirFileName": "Options", - "children": [ - { - "isClone": false, - "noteId": "Qk5Q0Xty3ITv", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "6dC7ha5vjqqS", - "Qk5Q0Xty3ITv" - ], - "title": "Check box option", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "checkbox-options", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Check box option.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "VnqYvYEuMMvb", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "6dC7ha5vjqqS", - "VnqYvYEuMMvb" - ], - "title": "Trigger UI refresh", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "ui-refresh", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Trigger UI refresh.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "3TbiQZODAp6y", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "6dC7ha5vjqqS", - "3TbiQZODAp6y" - ], - "title": "Displaying the option in settings", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "in-settings", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Displaying the option in setti.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "1TVWljchsc0t", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "6dC7ha5vjqqS", - "1TVWljchsc0t" - ], - "title": "Refresh widget with option change", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "refreshing-with-options", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Refresh widget with option cha.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "NcHcYOEn4ol5", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "6dC7ha5vjqqS", - "NcHcYOEn4ol5" - ], - "title": "Creating a new option", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "new-option", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Creating a new option.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "AdNRgGrYeTCy", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy" - ], - "title": "Adding a new note type", - "notePosition": 210, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "new-note-type", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Adding a new note type", - "children": [ - { - "isClone": false, - "noteId": "UFtOg3sLumZM", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy", - "UFtOg3sLumZM" - ], - "title": "First steps", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "lgFwLJT72mdf", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "oLhKpfi2kGON", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "shareAlias", - "value": "first-steps", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", - "dataFileName": "First steps.md", - "attachments": [], - "dirFileName": "First steps", - "children": [ - { - "isClone": false, - "noteId": "aSO1wqK7L1ma", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy", - "UFtOg3sLumZM", - "aSO1wqK7L1ma" - ], - "title": "mind_map.js", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "code", - "mime": "application/javascript;env=frontend", - "attributes": [], - "dataFileName": "mind_map.js", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "lgFwLJT72mdf", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy", - "lgFwLJT72mdf" - ], - "title": "Note type checklist", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "UFtOg3sLumZM", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "OGYpAbrmEXbX", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-list-check", - "isInheritable": false, - "position": 40 - }, - { - "type": "label", - "name": "shareAlias", - "value": "checklist", - "isInheritable": false, - "position": 50 - } - ], - "format": "markdown", - "dataFileName": "Note type checklist.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "PoxUNujeKJ7T", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy", - "PoxUNujeKJ7T" - ], - "title": "Saving data via spaced update", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "OGYpAbrmEXbX", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "saving-data", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Saving data via spaced update.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "xYVE7qA3EBwb", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy", - "xYVE7qA3EBwb" - ], - "title": "Loading data", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "PoxUNujeKJ7T", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "loading-data", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Loading data.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "OGYpAbrmEXbX", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy", - "OGYpAbrmEXbX" - ], - "title": "SVG rendering", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "svg-rendering", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "SVG rendering.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "Q8hgB8EEen80", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy", - "Q8hgB8EEen80" - ], - "title": "Copy image reference to the clipboard", - "notePosition": 60, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "copy-image-reference", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Copy image reference to the cl.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "AwWq8bJRl6XD", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "AdNRgGrYeTCy", - "AwWq8bJRl6XD" - ], - "title": "Export diagram as SVG", - "notePosition": 70, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "OGYpAbrmEXbX", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "export-to-svg", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Export diagram as SVG.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "W0msUwLxm40d", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "W0msUwLxm40d" - ], - "title": "Printing", - "notePosition": 220, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "printing", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Printing.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "Usiyzn9C4WFv", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "Usiyzn9C4WFv" - ], - "title": "Launchers", - "notePosition": 230, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "launchers", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Launchers.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "k7RavjuXQt8z", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "k7RavjuXQt8z" - ], - "title": "Syntax highlighting", - "notePosition": 240, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "syntax-highlighting", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Syntax highlighting.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "UzRirf46Xi46", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "UzRirf46Xi46" - ], - "title": "Hidden notes", - "notePosition": 250, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "hidden-notes", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Hidden notes.md", - "attachments": [] - }, { "isClone": false, "noteId": "vphziLmQeQHY", "notePath": [ "jdjRLhLV3TtI", - "wbVIolLKDhe2", + "yeqU0zo0ZQ83", "vphziLmQeQHY" ], "title": "Share", - "notePosition": 260, + "notePosition": 150, "prefix": null, "isExpanded": false, "type": "text", @@ -2229,44 +1800,183 @@ "format": "markdown", "dataFileName": "Share.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "n9wYW9nUTynV", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "n9wYW9nUTynV" + ], + "title": "Synchronisation", + "notePosition": 160, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "sync", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-sync", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "Synchronisation", + "children": [ + { + "isClone": false, + "noteId": "wA6tm9xcWWaB", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "n9wYW9nUTynV", + "wA6tm9xcWWaB" + ], + "title": "Content hashing", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "content-hashing", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Content hashing.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "k7RavjuXQt8z", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "k7RavjuXQt8z" + ], + "title": "Syntax highlighting", + "notePosition": 170, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "syntax-highlighting", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-highlight", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Syntax highlighting.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "7BCukQTCm7fv", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "7BCukQTCm7fv" + ], + "title": "Themes", + "notePosition": 180, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "themes", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-palette", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Themes.md", + "attachments": [] } ] }, { "isClone": false, - "noteId": "VHhyVRYK43gI", + "noteId": "YjerxU7Aii8X", "notePath": [ "jdjRLhLV3TtI", - "VHhyVRYK43gI" + "YjerxU7Aii8X" ], - "title": "Building and deployment", - "notePosition": 230, + "title": "Troubleshooting", + "notePosition": 330, "prefix": null, "isExpanded": false, "type": "text", "mime": "text/html", "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-bug", + "isInheritable": false, + "position": 10 + }, { "type": "label", "name": "shareAlias", - "value": "building", + "value": "troubleshooting", "isInheritable": false, "position": 20 } ], "format": "markdown", "attachments": [], - "dirFileName": "Building and deployment", + "dirFileName": "Troubleshooting", "children": [ { "isClone": false, - "noteId": "Un4wj2Mak2Ky", + "noteId": "g9nFZ6dRz1Cg", "notePath": [ "jdjRLhLV3TtI", - "VHhyVRYK43gI", - "Un4wj2Mak2Ky" + "YjerxU7Aii8X", + "g9nFZ6dRz1Cg" ], - "title": "Nix flake", + "title": "better-sqlite3 was compiled against a different Node.js version", "notePosition": 10, "prefix": null, "isExpanded": false, @@ -2276,13 +1986,13 @@ { "type": "label", "name": "shareAlias", - "value": "nix-flake", + "value": "better-sqlite3", "isInheritable": false, "position": 20 } ], "format": "markdown", - "dataFileName": "Nix flake.md", + "dataFileName": "better-sqlite3 was compiled ag.md", "attachments": [] } ] @@ -2295,7 +2005,7 @@ "ibAPHul7Efvr" ], "title": "Old documentation", - "notePosition": 260, + "notePosition": 340, "prefix": null, "isExpanded": false, "type": "text", diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Backlinks.md b/docs/Developer Guide/Developer Guide/Architecture/Backlinks.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Backlinks.md rename to docs/Developer Guide/Developer Guide/Architecture/Backlinks.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Branch prefixes.md b/docs/Developer Guide/Developer Guide/Architecture/Branch prefixes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Branch prefixes.md rename to docs/Developer Guide/Developer Guide/Architecture/Branch prefixes.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/attachments.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/attachments.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Database/attachments.md rename to docs/Developer Guide/Developer Guide/Architecture/Database structure/attachments.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/attributes.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/attributes.md new file mode 100644 index 000000000..959073ec8 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Database structure/attributes.md @@ -0,0 +1,2 @@ +# attributes +
    Column NameData TypeNullityDefault valueDescription
    attributeIdTextNon-null Unique Id of the attribute (e.g. qhC1vzU4nwSE), can also have a special unique ID for Special notes (e.g. _lbToday_liconClass).
    noteIdTextNon-null The ID of the note this atttribute belongs to
    typeTextNon-null The type of attribute (label or relation).
    nameTextNon-null The name/key of the attribute.
    valueTextNon-null""
    • For label attributes, a free-form value of the attribute.
    • For relation attributes, the ID of the note the relation is pointing to.
    positionIntegerNon-null0The position of the attribute compared to the other attributes. Some predefined attributes such as originalFileName have a value of 1000.
    utcDateModifiedTextNon-null Modification date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
    isDeletedIntegerNon-null 1 if the entity is deleted, 0 otherwise.
    deleteIdTextNullablenull 
    isInheritableIntegerNullable0 
    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/blobs.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/blobs.md new file mode 100644 index 000000000..63bf8c24d --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Database structure/blobs.md @@ -0,0 +1,2 @@ +# blobs +
    Column NameData TypeNullityDefault valueDescription
    blobIdTextNon-null 

    The unique ID of the blob (e.g. XXbfAJXqWrYnSXcelLFA).

    contentTextNullablenull

    The content of the blob, can be either:

    • text (for plain text notes or HTML notes).
    • binary (for images and other types of attachments)
    dateModifiedTextNon-null Creation date with timezone offset (e.g. 2023-11-08 18:43:44.204+0200)
    utcDateModifiedTextNon-null 

    Creation date in UTC format (e.g. 2023-11-08 16:43:44.204Z).

    Blobs cannot be modified, so this timestamp specifies when the blob was created.

    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/branches.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/branches.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Database/branches.md rename to docs/Developer Guide/Developer Guide/Architecture/Database structure/branches.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/entity_changes.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/entity_changes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Database/entity_changes.md rename to docs/Developer Guide/Developer Guide/Architecture/Database structure/entity_changes.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/etapi_tokens.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/etapi_tokens.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Database/etapi_tokens.md rename to docs/Developer Guide/Developer Guide/Architecture/Database structure/etapi_tokens.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/notes.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/notes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Database/notes.md rename to docs/Developer Guide/Developer Guide/Architecture/Database structure/notes.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/options.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/options.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Database/options.md rename to docs/Developer Guide/Developer Guide/Architecture/Database structure/options.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/recent_notes.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/recent_notes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Database/recent_notes.md rename to docs/Developer Guide/Developer Guide/Architecture/Database structure/recent_notes.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/revisions.md b/docs/Developer Guide/Developer Guide/Architecture/Database structure/revisions.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Database/revisions.md rename to docs/Developer Guide/Developer Guide/Architecture/Database structure/revisions.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Deleted notes.md b/docs/Developer Guide/Developer Guide/Architecture/Deleted notes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Deleted notes.md rename to docs/Developer Guide/Developer Guide/Architecture/Deleted notes.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Demo document.md b/docs/Developer Guide/Developer Guide/Architecture/Demo document.md new file mode 100644 index 000000000..90429bdb1 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Demo document.md @@ -0,0 +1,22 @@ +# Demo document +The demo document is an exported .zip that resides in `apps/server/src/assets/db/demo.zip`. + +During on-boarding, if the user selects that they are a new user then the `demo.zip` is imported into the root note. + +## Modifying the document + +1. In the Git root, run `pnpm edit-docs:edit-demo`. +2. Wait for the desktop application to show up with the docs. +3. Simply make the needed modifications. +4. Wait for a few seconds for the change to be processed in the background. +5. Commit the change in Git. + +## Testing the changes + +1. Run: + + ``` + rm -r data + pnpm server:start + ``` +2. And then do the on-boarding again. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Hidden notes.md b/docs/Developer Guide/Developer Guide/Architecture/Hidden notes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Hidden notes.md rename to docs/Developer Guide/Developer Guide/Architecture/Hidden notes.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons.md b/docs/Developer Guide/Developer Guide/Architecture/Icons.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Icons.md rename to docs/Developer Guide/Developer Guide/Architecture/Icons.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translat.md b/docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translat.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translat.md rename to docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translat.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translations/Guidelines.md b/docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/Guidelines.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translations/Guidelines.md rename to docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/Guidelines.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translations/Server translations.md b/docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/Server translations.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translations/Server translations.md rename to docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/Server translations.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translations/i18n-ally.md b/docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/i18n-ally.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translations/i18n-ally.md rename to docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/i18n-ally.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Launchers.md b/docs/Developer Guide/Developer Guide/Architecture/Launchers.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Launchers.md rename to docs/Developer Guide/Developer Guide/Architecture/Launchers.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Revisions.md b/docs/Developer Guide/Developer Guide/Architecture/Note Revisions.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Revisions.md rename to docs/Developer Guide/Developer Guide/Architecture/Note Revisions.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Copy image reference to the cl.md b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Copy image reference to the cl.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Copy image reference to the cl.md rename to docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Copy image reference to the cl.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Export diagram as SVG.md b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Export diagram as SVG.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Export diagram as SVG.md rename to docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Export diagram as SVG.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/First steps.md b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps.md similarity index 95% rename from docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/First steps.md rename to docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps.md index f60138817..fa860fe59 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/First steps.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps.md @@ -41,7 +41,7 @@ Go to `src/becca/entities/rows.ts` and add the new note type to `ALLOWED_NOTE_TY ## Final steps -* Update the Demo document to showcase the new note type. +* Update the Demo document to showcase the new note type. ## Troubleshooting diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/First steps/mind_map.js b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps/mind_map.js similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/First steps/mind_map.js rename to docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps/mind_map.js diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Loading data.md b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Loading data.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Loading data.md rename to docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Loading data.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Note type checklist.md b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Note type checklist.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Note type checklist.md rename to docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Note type checklist.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/SVG rendering.md b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/SVG rendering.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/SVG rendering.md rename to docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/SVG rendering.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Saving data via spaced update.md b/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Saving data via spaced update.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Saving data via spaced update.md rename to docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Saving data via spaced update.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Options.md b/docs/Developer Guide/Developer Guide/Architecture/Options.md new file mode 100644 index 000000000..ce0d348f5 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Options.md @@ -0,0 +1,43 @@ +# Options +## Read an option + +Add the import to the service (make sure the relative path is correct): + +```javascript +import options from "../../services/options.js"; +``` + +Them simply read the option: + +```javascript +this.firstDayOfWeek = options.getInt("firstDayOfWeek"); +``` + +## Adding new options + +### Checkbox option + +Refer to this example in `backup.tsx`: + +```javascript +export function AutomaticBackup() { + const [ dailyBackupEnabled, setDailyBackupEnabled ] = useTriliumOptionBool("dailyBackupEnabled"); + + return ( + + + + + + {t("backup.backup_recommendation")} + + ) +} +``` + +> [!TIP] +> To trigger a UI refresh (e.g. `utils#reloadFrontendApp`), simply pass a `true` as the second argument to `useTriliumOption` methods. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Creating a new option.md b/docs/Developer Guide/Developer Guide/Architecture/Options/Creating a new option.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Options/Creating a new option.md rename to docs/Developer Guide/Developer Guide/Architecture/Options/Creating a new option.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Printing and exporting to PDF.md b/docs/Developer Guide/Developer Guide/Architecture/Printing and exporting to PDF.md new file mode 100644 index 000000000..ad057206b --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Printing and exporting to PDF.md @@ -0,0 +1,18 @@ +# Printing and exporting to PDF +Note printing is handled by `note_detail.js`, in the `printActiveNoteEvent` method. Exporting to PDF works similarly. + +## How it works + +Both printing and exporting as PDF use the same mechanism: a note is rendered individually in a separate webpage that is then sent to the browser or the Electron application either for printing or exporting as PDF. + +The webpage that renders a single note can actually be accessed in a web browser. For example `http://localhost:8080/#root/WWRGzqHUfRln/RRZsE9Al8AIZ?ntxId=0o4fzk` becomes `http://localhost:8080/?print#root/WWRGzqHUfRln/RRZsE9Al8AIZ`. + +Accessing the print note in a web browser allows for easy debugging to understand why a particular note doesn't render well. The mechanism for rendering is similar to the one used in Note List. + +## Syntax highlighting + +Syntax highlighting for code blocks is supported as well: + +* It works by injecting a Highlight.js stylesheet into the print. +* The theme used is hard-coded (the _Visual Studio Light theme_, at the time of writing) in order not to have a dark background in print. +* Syntax highlighting is handled by the content renderer. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Protected entities.md b/docs/Developer Guide/Developer Guide/Architecture/Protected entities.md new file mode 100644 index 000000000..f7d4e5b2e --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Protected entities.md @@ -0,0 +1,6 @@ +# Protected entities +The following entities can be made protected, via their `isProtected` flag: + +* attachments +* notes +* revisions \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Share.md b/docs/Developer Guide/Developer Guide/Architecture/Share.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Share.md rename to docs/Developer Guide/Developer Guide/Architecture/Share.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Synchronisation/Content hashing.md b/docs/Developer Guide/Developer Guide/Architecture/Synchronisation/Content hashing.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Synchronisation/Content hashing.md rename to docs/Developer Guide/Developer Guide/Architecture/Synchronisation/Content hashing.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Syntax highlighting.md b/docs/Developer Guide/Developer Guide/Architecture/Syntax highlighting.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Syntax highlighting.md rename to docs/Developer Guide/Developer Guide/Architecture/Syntax highlighting.md diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Themes.md b/docs/Developer Guide/Developer Guide/Architecture/Themes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Themes.md rename to docs/Developer Guide/Developer Guide/Architecture/Themes.md diff --git a/docs/Developer Guide/Developer Guide/Building/Build information.md b/docs/Developer Guide/Developer Guide/Building/Build information.md new file mode 100644 index 000000000..b1fd0437b --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Building/Build information.md @@ -0,0 +1,4 @@ +# Build information +* Provides context about when the build was made and the corresponding Git revision. +* The information is displayed to the client when going in the about dialog. +* The build information is hard-coded in `apps/server/src/services/build.ts`. This file is generated automatically via `chore:update-build-info` which itself is run automatically whenever making a build in the CI. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Building/Docker.md b/docs/Developer Guide/Developer Guide/Building/Docker.md new file mode 100644 index 000000000..ea5782ad2 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Building/Docker.md @@ -0,0 +1,8 @@ +# Docker +To build the server for Docker: + +* Go to `apps/server` and run: + * `pnpm docker-build-debian` or + * `pnpm docker-build-alpine`. +* Similarly, to build the rootless versions: `pnpm docker-build-rootless-debian` or `pnpm docker-build-rootless-alpine`. +* To not only build but also run the Docker container, simply replace `docker-build` with `docker-start` (e.g. `pnpm docker-start-debian`). \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Building/Live reload (HMR).md b/docs/Developer Guide/Developer Guide/Building/Live reload (HMR).md new file mode 100644 index 000000000..8ae38f99a --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Building/Live reload (HMR).md @@ -0,0 +1,10 @@ +# Live reload (HMR) +Trilium uses Vite's HMR (hot module reloading) mechanism. + +## Server live reload + +If running the server using `pnpm server:start`, the server will watch for changes. For React components, they will be hot-reloaded without requiring a refresh. For other services, it will reload the page. + +## Desktop live reload + +`pnpm desktop:start` acts the same as `pnpm server:start` with hot-reloading for client-side changes. Changes on the desktop side require a complete re-run of the `pnpm desktop:start` command. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Build information.md b/docs/Developer Guide/Developer Guide/Development and architecture/Build information.md deleted file mode 100644 index 475d902f5..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Build information.md +++ /dev/null @@ -1,4 +0,0 @@ -# Build information -* Provides context about when the build was made and the corresponding Git revision. -* The information is displayed to the client when going in the about dialog. -* The build information is hard-coded in `src/services/build.ts`. This file is generated automatically via `npm run update-build-info` which itself is run automatically whenever making a build in the CI, or a [local delivery](../Old%20documentation/Build%20deliveries%20locally.md). \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/attributes.md b/docs/Developer Guide/Developer Guide/Development and architecture/Database/attributes.md deleted file mode 100644 index 4e7ca6a4c..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Database/attributes.md +++ /dev/null @@ -1,2 +0,0 @@ -# attributes -
    Column NameData TypeNullityDefault valueDescription
    attributeIdTextNon-null Unique Id of the attribute (e.g. qhC1vzU4nwSE), can also have a special unique ID for Special notes (e.g. _lbToday_liconClass).
    noteIdTextNon-null The ID of the note this atttribute belongs to
    typeTextNon-null The type of attribute (label or relation).
    nameTextNon-null The name/key of the attribute.
    valueTextNon-null""
    • For label attributes, a free-form value of the attribute.
    • For relation attributes, the ID of the note the relation is pointing to.
    positionIntegerNon-null0The position of the attribute compared to the other attributes. Some predefined attributes such as originalFileName have a value of 1000.
    utcDateModifiedTextNon-null Modification date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
    isDeletedIntegerNon-null 1 if the entity is deleted, 0 otherwise.
    deleteIdTextNullablenull 
    isInheritableIntegerNullable0 
    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/blobs.md b/docs/Developer Guide/Developer Guide/Development and architecture/Database/blobs.md deleted file mode 100644 index d0efc5434..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Database/blobs.md +++ /dev/null @@ -1,2 +0,0 @@ -# blobs -
    Column NameData TypeNullityDefault valueDescription
    blobIdTextNon-null The unique ID of the blob (e.g. XXbfAJXqWrYnSXcelLFA).

    Important: this ID is actually a hash of the content, see AbstractBeccaEntity#saveBlob! It is a logic error to modify an existing blob.

    contentTextNullablenull

    The content of the blob, can be either:

    • text (for plain text notes or HTML notes).
    • binary (for images and other types of attachments)
    dateModifiedTextNon-null Creation date with timezone offset (e.g. 2023-11-08 18:43:44.204+0200)
    utcDateModifiedTextNon-null Creation date in UTC format (e.g. 2023-11-08 16:43:44.204Z).

    Blobs cannot be modified, so this timestamp specifies when the blob was created.

    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Demo document.md b/docs/Developer Guide/Developer Guide/Development and architecture/Demo document.md deleted file mode 100644 index 5987385de..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Demo document.md +++ /dev/null @@ -1,19 +0,0 @@ -# Demo document -The demo document is an exported .zip that resides in `db/demo.zip`. - -During on-boarding, if the user selects that they are a new user then the `demo.zip` is imported into the root note. - -## Modifying the document - -On a dev server, remove all your existing notes in order to ensure a clean setup. Right click → Import to note and select the .zip file in `db/demo.zip`. Make sure to disable “Safe import”. - -After making the necessary modifications, simply export the “Trilium Demo” note as “HTML in ZIP archive” and replace `db/demo.zip` with the newly exported one. - -## Testing the changes - -``` -rm -r data -npm run start-server -``` - -And then do the on-boarding again. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Docker.md b/docs/Developer Guide/Developer Guide/Development and architecture/Docker.md deleted file mode 100644 index a39be7526..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Docker.md +++ /dev/null @@ -1,18 +0,0 @@ -# Docker -To run a Docker build: - -``` -./bin/builder-docker.sh -``` - -To run the built Docker image: - -``` -sudo docker run -p 8081:8080 triliumnext/trilium:v0.90.6-beta -``` - -To enter a shell in the Docker container: - -``` -sudo docker run -it --entrypoint=/bin/sh zadam/trilium:0.63-latest -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/1_Icons on Mac_image.png b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/1_Icons on Mac_image.png deleted file mode 100644 index 4fa4deed179c04620fdfa83e8d9498af4c2a4b86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 238448 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 V

    - -Looks great in Dock: - -
    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/1_Adaptive icon_image.png b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/1_Adaptive icon_image.png deleted file mode 100644 index 4fa4deed179c04620fdfa83e8d9498af4c2a4b86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 238448 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 VCCl?pj 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%0ABSeMN3^-Z>7lgD$E4QHSLCCVAJ~ zaFx};Jl47+Q9kMkb5$0j21Nj$dxB>|?&&Wj?&Tv3d6k5?V+pHq0SUx~j=o~|_Rwlp z^&qo~_GgYbge`%VH;p_R3ITa$Gpid5jW)7_@sg1H}whf}sleU!qo4nWO=M&~kbUsJ>o zlNHp8Gox;sm?HiZWFZ|dxyGESQ}RyPqtXAH+TfeD`4_e06^Ooivf@Gp=;Azt(Ai*kW3f?4+bX^CU={K!2ui6_Clk;~CrVb{!G6(Sfp&pZV?NzDyl`nk)C?~3< zX2;j|4q+-G#yMI@VW<<*QuvV8O@A}$h1tus6gvX3DcNR{8OZ3vJwpfew9f)`-3cUi z8x?mwHC}@lWTEPy?CaX#mbF~_n2#G(i>iON3%mh(w99px*n?C?PLPD1&2TAsbv;Sn z?aYvH(Bxvi?P<@IM&`{~f8)t|n!vgEE{ z@*~B0tHJXhFJ5p}sqW-Dc9`p))Nl0hH#3=1Ti-Iay^&bN`F@&A<(1;Pw@%!N)py)4jfW2GRb3sP$02)kV@DHfEP(k=jF` z57;zhv~9%H%jplCy@uJEUbfTM=aPlDw{vaTbd+l=ytN5_X>Aht_x8n2(p=md`!{oO zg*tL=`RAN#@H^)x27Ym_`TNfO>KPXg{OJJv@_o1YUuW;Id&m8+?QL4{F|Kn)+LtfG z??%=SY;9dV9NauR1`2P%J9gZ^bjyQ_>+mtoYtv;ziADJSJ&rd_Jx%rX)U4fHS?25-99dRmJ3x;VRfsQGG&ZJeP7Z*z8|#6&hu@pRG@Gu1Z`(RO=a zE21QSQvRfv)=m)-5se2nc4~$fF8*^l{7F;H!PE1;8Vcp(<0J2*DDU>b9;KkFs){;! z3U%t#3HXc?9)7N#mcA!kJ;eXsVC!N1!12DPqnoP;=f0L!ZeE_6Vq%;x`uES@ z=d|^8{LeSJdi*micz`I*5tM@bNz}jZ4PUCk*{f#Y=xghI>w=>TtTXsKv=q*$s%UIn z@c%pXpRfF{OHKcC>8aBvmHzwE|2p*lz0}yl_JOvW3;d;?TK}1_e=h#-ga2Hpf#Qt) zzjX0e(HnbVO>6DcK>d5xw07RaEkKD9Ky<;$vbe!^1{xW`|eput6X_0%X{>|W9#0#>YL&& zxU;?Iok;zw0p0X@`(!ViJ;feZOlnglxR=rb1w5iuA*U9FI0u9}zKR&-Ps}#HU+2w^>-pdM`eKgyq~fp$f&^f*3^b|FygLFhK5d=?y6T6sH(fjuMdbUw~?5y<3FLb!9p(bh!-XDmcN~^e(v`Rf7VW2Be zGM><`FueNi%1|htDhWg{AI2;`{wd4qM0>txm-ip;#ckc@l2?}8rRI5zSveDiw|6pH zM$?gAVo+tdP|tpM8PGJy6@CuBfcNW8tJ!w~vQwnNo_fJrY{2mz^*cC2R%yLWC9ceL z9H64a!#VNFrcovf-#Qs@Q!i~lblf?tL}k(!1r{*o3is* zv1`RH6XEDEbk`xH)$H~3b?d&J)LJA*eE*ChSX-k(tG=BcQuXkeoECv!A9 zG#uUIaecel&P~dsk7~878={}9^R)QTt2~)_P3dnrmZ5yY^xfNsUrr%=#PmG3UC#vO33JijqcNJTV1AiV(q$Q_cp*`n@jiN!)T%7ReUy&%s;R!gx(-WW zd2HyMBj{6_(zp8xoy09tNzErp8Ey`*Y$FRTq<67U^U*Z|F~+At0)yj6kS85J$^3Q|z&Xd}ZD=Omyc$b9vzdMwlm4}UGVHYg2cS^lOST5x}hH;$0J)}^1yLOmw~lp@HSWPrxq z+j80pb7nhcWYpbYz#`R#KSd;Zi7`r@>Y3Ps^_6Z{q7Fr2i|qaC-s>0PsJZ3ItVIme z2lV3R+`!3m$ee-}=rC|ZSKnM3>;t|X2p?@9rL-aaqpAm2s%*o@IqOyp@B(L8f9N^O zCX)s9NTR7_s;b@48v(85S`tSVl1JUoSskyE!MZC>Cy1So8DXn*dm!%CH6p znfqy5;~;bQ;mkJ+v2)-w< z`fInOi-(|L{lf$Wk#+JJOf}oN7&T5tKNs*lH$te_slFcln?S=UJ*j@h-t?3moLCm( zzZS{7G*?7`?Sc}*e8%3~s!7JXBVSg84!432e}t$!=0`}lj!JvSbrN{o`!{(b6%}}u z-SyzfTM%72#w=bqy0(j1qj6$EVC`kk^)_&>@PL%UL2dWqlpDK8^r5pO=LBn`{M`@g z7N#eInw%%OEBS0xGHM#jY}b5}Zv&jQBw#0o(uRV@v<_6lYF37phw+w#vmS`AZUed> z7DRoE(eD;TqVCplzerLE6B=KkoEz|dI9RW@yH;PY6CO{%cGz*{R@Sk9fG08G%(@^6 z@3>-gK<>}WEk6wgoTUzF`*xxYeD}eRU@`FX`kXZOBPc58zj@zTh4=LWo0K#GMy$^? zE?NnbZah?_(ayC3Ew4AugE|K&&~k7Z_n$4>}T-z zpuC>vJU#kVxtURcG%04fe9ZZ&r*Z6CFZUfhIoh%CrlJ5|vq;bLL1zOp@TM4{zdlvu z>91Wf%t|p)$-6((2hVt6IUcr`#EPbI%__`4UF~|=4%^6|t%lpHW2gkV16G?aYB0== z){Hl-sujA2_$=IM!MPo5KPKiIw}bw<9SOeO_=d@_3jTdNppT7OzYs0DS^ECUy6C&_ zBc!`26a#S`b(ffVmD4k#+^H^~6w<+cw{WaO#6{99ALA967m&kFU^jyK!V*yN=tD{i zv{3lVq@`rt`p^Ec+(UV6%xpLzjL@T8i>t*kOmd%;m8=)T;<1{v5ItJJS-@VH&wML~ z6iR#kYw--d-?Lgk z-qf1nmh;0`_AQFE+y(hHjQV$T@m{KQ>6+#pUdA8{QAocA_r@Bh%CUaePrLi4d0d#s zfZAg$*epmDd>JX9FIJvcWiH=Vm(|MXB^hI==!JJ@TA{;`gTSxnqXk}AUf>Wcc>#}b zj2%u9a?*Uj{E`BGAJWJrcmAMme^xV?-(bU;9&FyvA-rk2d0H}ia4bFO(Eo)q{>1!- zL&a6`hnqTj-rkGgcRqT%iCUwbbg>st#aK}HY0%QD=4X#I@}$K7G;+S=_X8-nYPH#F zR42Im&NYa3q!beF+P|{33CvYl>|{$QEo8&XN%zjDYkEPV=-CtfxMOJ*`N?+Wp*bWajCGv5H@7^}f4MkC zW7{D5T*Q9n4{C$<9jZyhH^c$m&!TSpEh6xmpUYB4_cvk>L)K#w$haC{CZS@p{Dge~ zoR~L*W^IsAziux!SC8h?XX3Thtfid>XFkfzBzAQRefEt|BXrkx8Qn?9k{h-PF55_P zaB$vZzbcR!2x-{qE)#qcS(KH6nVnzW;N~}cI>-69LZiFF(DERASpmH>_}5AS)zB@t zEVdmS%4d%Ynbm=BWlp!1{pZpGfRx$u*TtbLC zLM;|v&m_*G%mX`2KP}r&wzuIBsfucVHz@IJfyExi|FU0Ud-zmMv8um4%u6OgOz_uQ zC?1_lOCv#Z1QQzjBLx)%Of#Fu*4a9M_Z3z%BO)||tt{V{kMpNJwZEnj`XDAC3#?ja z$~V~W={OoQX^U&8`d*Sa!kmJ2uTWuueZ1PXA`>wbr)Cbb)tV>}mFYLgy&L zJVCRzY&g^S9{u5;32KI%H%&V=@&UZSFzU~XQG|DG$RvFyCivO^iPShVoD$omz9pHv%u|Sl_}>MaLe$ zy2MlQFrVYg^aZZ7j9E`z9QHuwcEVeW0I&{`V#I8o+1!3^z-YLY#%!zZzF5$9>f-2cAV^Wo%lGDJH)-s%hi?f<+?pU zUHoNNVdLXzOy%FLdUV^koYB_|^^xZ2yg<4=P?#3I+O_}qS#s?Ox?IMnMCzz(1-C1G zKZsaBFTGv=2;|J4wg36?Z&12<8pehvV8BqL%o*STBLOLX%u%1D{M7XIN>18GXV)bvv() z;^S&xYDp?>9`fVa#oY&&t!G91=IeVF8|TBz*Ty<506 zDuTEC?A??0UOcf1ArPTIy6qwGO5pj8x2y#qGhBs+|H8GY zI1T$(-k{mM%_ODz<_bHFf(R~{Wj6b#T45Z}Ot5P$6OYaV-%~I_zz=yE+a>bj(!n5L zhG|5?F~BE#SJ-)!XbfY`1gt;6hF)n_GT(vilpS@gi|0yO@!djdz~l6)55JVa4^c`; zMzSmtKlOIs;#2d^Ma=4FSJ{)P-&IzfxeWUZ?kjh^8vJwJuDJIiTO!zfc-xxLZ=MG& zx-TgcH?*?HUWq~D_J;9=7I0=A-CzzFHEq`kY{7D<`MVS)K&-{?IEah#=tmo&13FP%meYX}f}eer6b+ zunG^!EeM!p-XW0~U>QSa^kSRAdL8FL>oT{0$67giXo}gtM2Vi-ae6*xJmMbVg z79q1CRI0*i%Z+Dp!nADRsJmNhmA3AtN`JmGw?}t&FyccOJuS{%MCpCfPanIa2bUaU z+Zi8c%;+U<;~vw^s=vKova|_P@6aALTI9=qB27*2>1&?0gxX|Q7oCz$)qZfj#Nm!GlUu%58}K-m5Ix154bvszZVIXas3hyOHWKql`m)a?MSGIs2aLU6--YHT zfc4asj;Y=f^tv=d@He`D4hUn}W=(zCH>`8fB;;Yz_CvG^km>53qU0v1V(j66m>QF?v?@hwso4+{)!}sDnNS(BL(6 ztpT)$mH|4%B9P1{m77O#ql8hC)GQONfLQ`yL93^&6E*}|3Wxmc=gddFoK2 z+x#Q9xky)+9~e&`s!Do@Cr@UGB1qoWGNHT=a&MKTYESx6UDPpJ8ZpbN7%h*HN0(6I zNKkv0AVaTT#AvxKGf2RCCNvNI8M3x6E$_vp&{b>3Dp(jeZ8B*S?q@|onioSu@rYf9WJV%}; z#Jg!~l=RlSXX{FiNt37wbfXNvJ>&WfCeNHK_cUTj1wB~+aS4py4>H*a;74F?*V;v< z+p2jl?oYvJ`ma4M6Y1+%ua?3i>KiJs0ZRA4uo9ug0kgG-&vLB2E}|AUn>w6Hs_c;> zpFlFfkI{#&)=9$%fg{~YyZ|389Qe)w`h5Ez!0896+yk^IrTDL6)S=HyNVW!WK-mC4 z#cEVF_9Kfn*WtSR?T~e^<9t#B{jOrpo(%yuJ00iV6vwx9-0-Eq6`j|uMMp5fjO@jd zoH;T-=7Gn{z6r@UV;zzOLD?Y*yl+{V4VkFGCL{dV8{s>IWj|ATL_4U|%J7qe+5G?jD(+E>ue&F(et^XV=9?qbw)PHe1%rwhPLh$tcm$27-*jbKC z#IVSviK8yLUVqp8Y}6at`*r3h2@Xbosfv1YG_Z*78Xn7611$#;9?;|982DMB<|9KR zZQW+;+rz4n_A3pV_byxKe92XY#) z2d}fSaInF$iW$i;j)TPu#gnf%9Ou5W{ebTeTJkiGN@?aswjgv5D zN&O{aa<gE)#Cn2X`j+_$>-FoAO?NKf*dTFvqy#9rS`{G7 z_@Vwn>lJ$`Ge1(PUJ4Oy9aHWsoI15-i?3)$?e?rH*`AyHQc;U%sRm^!o@Lg%^FokM z%d2dB{F*aXlzX1oSEf1OG|1DtRJZw&g<>fh!{yPlY4b{C_2^1TWZ?IU74j^~48!dT zbQ`KDpu7dwz<#I~od;Fu7Sup?P!TX?Oe4VXHK25>>EJ)}hu9D2xP2Fcw)pN-KVKI^ z?o~{ngVrSYD8g%(=3ioP?nyj{^YlC`khqbL+;&MainmQk|_j`Up0 z4f^7D^wQAlgb77$ZHu?-?W@>}T2*)a`cF~GMoNyhTovgDyv(EPTx*K<@%3=N`B7tS5JnkUE<=f%D<%WFR z^fUulc%9F0 zaKy%NLj6~~VoB)m|E&;xht(*^eLke8OvF&iT~hJTY#)>#@1;FN5Q)~CI46|7{7x^m z=SiGWW7TRgf#GxoIo{vyeuYQn(bDZL1}7bJG+rZQM7>;P5A~m7`|e$hCGsA79jDyf z^<8^r{evtz+q!ozD%wdLg_tJC+Ghvf<-YwaVHY;xr5nk5mf%YFU{AO`U^h9lbA}%3 zt{0dN`~n_QpWE()#>HC; z$RHq3(IAm=OvwFDfsB)>38hCUF@ZB_x-T(UhkPuZFAtcfJ5Yth>2guS`$4(G(%@ja7UuUTi7_kd#hI1m z@lzK;``Y181oRxYXhW` zPus>H;gT45df%HQ_Z#TaTk!}p1IZ>?+`FujZa3zysP_kMT(e+cwt5}xM7~FOX{?BU zyr%jgO7|YykLnof)0nzyX{Ics5#jYRaAM5Yqh*<_j;#w#UN&yDuQD1}wCc%7LF!FEFWONDFG?3{6^a6#Oe5hAX;BG0QP$pnpE;V(u{+0g`jdUie*&D98={j&l#RpWxTUT^=;Ta0zN= zNlS0PF#KV&KKCX&=PeGdC*!VawB~#%9@78t+sIDPaQ*8Z#QvUJg!uLW5nnc8XWUmO z(_oQhF?xfBBsBgpa>)f-RJnA7j~>BhQ3YR7%<`{*Ec6yvZBUd2ua!pZs(y8aBYPLL zsJr%?@TZ^za_xp}Va98tDj@}R(kCa{asNf=a0)>|kZI6&{l9~kg%$8G@$Xu9q8ktO z4(_EW$5>&jfWm6%zA+g3HN9r&#Mhnlh)fqVxc)H{qpf~{-!HRa%_4L;X*P4On7oH3 zLXM>BT0gME_cpNpBei?A*j4%Yku37^$%oWSUFjEAjAW*36q{wKhSlPJ(!WU5Ib8u; zIKWdogY`gfttRD|{9(Hu8XCeAGGYoA{ma?~wNTYzsdQ{I)vLZo_^ z${4xj8ezNOIuDIl9SeILD+CqIq+FbfbkuEhQrGWQUPxoLZ>|f{kaX=H2jn3p^un6q zbA}lm6ee$B&kAY7jmn48#>Pw!%*Bgr`0GbAv zXlD5gSHOrQ8?IMu_zgRlBc9@lgL-i$nkGnfAcUwhi4B|!RD<%>y!qNlwP=U?APSD7 z%}`#M2t-&T(xEeW8Ss|Z@Yoty?*k~`hxu&Pn| z{;4cgzU9n(2zIQ#f@5W55{(f{m^nv*ylGfQ0%#cuM-@W0bvQnpa(+gRzgJ zM}hAbAGpSq(~W32jk!A$7x=A?*DI#1lG9xJb(kbt>6#JsU`*=8w^y`?7|kcAo<}zM zTslWii@tbQ_S5R((yuy|q1*7PypUABTXT1Z$~f}XBv(DT@-Xw162#Nut(n%Es?zO38m27 z*3{5y;D?&T#QVs!YZ}SvF8ypN3)quOsy09$5bX+_GZXA2 ztRS}Z0Xa}NEyfO@1=Or#DzCGOA(7zTb-o+53d~BP!ssMiYz>)fw@@xZ&nDifdx*Ao6@+|vz1)3h?yt&ss7P-4RRTE2%YaM5rU9FMtDPj1JPHBC<<##Nt~ifkH@s*Is#1T`2fFFD7Vb%$IpmPEgfIg zhq9NHoz7%D*gca>@|(@nFQV9v*AyJDzpJ-A*=VAa?O~}wtzRHD=;EYabB#E@JfCJ&bw4oI1JQ<~NG&#{@w%+`7;mNDxiWk$;Zt zIXk1fj|fWuTn*yg9p20J|F=^IySpan@71u;0yLtDrz*I8e>*-5d(1 zu{@ghHwqbH1RAYy85*IWMV<^!G3%#EB-m&wK7hP1>%x&kK)yTN8U%}S$9FCK9Fr3E zbZIQCO&Es<7TESA=;rYObRF@h=?uc}c^8dE`NP02Ca+uYfK@fRnm{M+t2vEbi4T3* zUX}KuU4cF&6>!wTMyQXp&cj6B%cR8V2*34OnM{LL2wj>T5=SsAVhOc$t6K%pP0^cQ zhThmoHA-|AACx`jrDD1Jc#uflb-!VgZS#|jnS)=mdanM7n&Q!?H+%r;<9>dA^5Qu6 zso8`2_?U5{i5;~DYyPDL47kBIv4b6S_O5BtQ0R=n zB?KKVgQmmnF7j~hdYz9`i*7&JOImg2G)o-@a!LHp52*nK-f1xKUA~S7_&pB6>`TtB zzc~KFfSjd38ixP~hCE6MK<6Y!cUikQ%{v$;*7u46L#UdVM*7|MN~~Vfo^9wQN%A=> z;CY3`jbjg+)ag*CC(VSt*$uWFBamNyH^ie#PU(L&7(Ws+HFhL!wE+aCw3CDb)F^ zNcwpC0vx00Z|-4@eB(9iJ}S!}HxP&0*~ z+X1coWjyZkyyIjgrY$S)*HO^&)RNl<_T%I}%LImbCyPQS;lkkFr5-sA1e09|vmgJG z<}b}9@Q3jAZ}lYmw|_~zp}h5gNIRlt2;1(oa;RRLza~E=t=ge_J039C<`~Xn45(y*d4e z)N}kDdX)VP!$)W@>mfo7gP(80ow6VL+IEB9)Vre+($=ca3~XX#wj}ygC8kOtzqW{GjMDjhyR1I3O>vBo^eGSmoQTmlUO~)hE&|fm&wrd?5oSnlf-Uq(WgvmvNf3IPF>N zYr%&|gu)Z>C2(2V&E)k7_Yn$Q-|>etN)8-@I}&k8i|C%!N|1>PR^}F}gxv4J$$6>( zh7JB)d!xOE7PJolZK6ufHKgwrVuH5)w!zS8;z*@ODqk&urdbj^`5r0^>|i+B3o`&4 zjqBvAfv*mKJYOVv==F`-cSBzN*Lu|~s5g{+9mI|KU(emLuwdSKR=>m_idBqZn?S}XS{z1L%^1Iqd_{R1)yN0UzG^@E zj!aqYTMN*GoC#rTuxio zC#;H03WCUFOTk*=6bd;&?bO1l6B`?Ffp_oSgAA~=F08K}53RD>mpjKmcC1$xF~ejU zs{TbTzdNSCRNS(+ziCozzgK1-($~){_EffFfrj64)bWCs=y{xVjV^W)m}7^hIjKnC z3Zoh`Qx!yP6?mq2=^m{s?iviWy{nilJANH3e8UXCuU~Z>tK!#OWe^vx6c-+OG1VKZ zBxBnUOf{JNGBGl8Jv&>OFz@pzuNghF8II-Hh!yoB1pg|TQB;->fp zXMJ}Um5}4IqG8M`th2nwvdLO(L23FN(xJ~JNPcy~UY*VfvPog`W-DxW%SLdh z-mx-TTDy2iQ@5JldkxPff=+Oj@_B17DI9=ISXfw~yUCB{haX*Hf&**zp5NXatUife z4Plvwp%a^R*3j2Vpjkh^m^=_aVNu9#1Shd&SNaRJt&?fxoHhny|_{#cQ{MD3>hF{-xCJB>q+ z6-F}6w`Qb(tTWQQ5#G<$e0{Srg&tV&HTvL<@Y}4KLMck)is)|74o0nQWiUelsCzlA z>cu8Lg1j2gWx+FURxlk<>XZYF;9xc8li;4>BD6>h+kCChZwb3p|EHb|h{Te)*ZwRKXqKwqmn7fwm4(*dcc(sLVj8z;qBwDf! zSAAo-G=_3a?c1*=qT)49V+9{&a66_6|*8`u!>N^tYy`@ zp`zko=LeXW^9$nbHVddV0~pTzZ6h@a$PVgqh0~4zYsRi+k()57dTS$6n6m~cK=+X! z#fOiLZJ&)m!G$Tp-)>K@q)Ak}N{`%ptao#nV?j#|Arf-z?Cw}l=~l&Ce|EL~=2ppe z_ApzY-v!;&@`@Flg!6%Gg@m8wO)y5xZ)HdC7H;rsRvhnK@SiyPX7aV5F5ZP{ZS36< z{pW*n?6~dn`@q7}v7tA(`b`T^7PX%v#D2@8WX4WuZ9!^mnV|OhG-XCS|6vM5=u;xuC8|{M= zUQ*Q6+}K1JAaS9Wf$@X*Mu6T`DKu*km?pLM<2Fb)pJ3KYsP;-OQv!kmz%5qsOrv+Z z0qyvvi*beO2Jl+$g!>~h_;wktMKC2`R9W3bLCnOf`E-)duW&G3~%dt9|G& zFHFiDh6pqtzgj{7)^g5sYK>6W9qe{J;rJSR>yt3TpEMT5X$%1-R?nBW%$A{lo~;TG zU4nWx4NZEth2jZf+!a%7MZ|V3h9F!G)5750K^+oMYTuW;Ocpl@p77BF$>%_s+45+r zP!hi3W6N8zhaU0kY0cE1qryJaW1kOW52GTgTr%?GPoa#qz65BYq5cj2%169pm0e_? z1k2^(`O6zU0nEttT-=;Gkh2Cor;TVCBr+m3XU;JHWP8gFR zuJF=F6^Otkt!+Dpnj5e^KAuAiOnf_QBW0OpLLg0@2$n$C$_f80Q;&PBc((a|X;57l z;&jl$Y$hj@`zsbqcGQs?ibV#;`-vF93iq3125jJgwGaX%R%e5C2B5D0^be~6`;2C# zCfM9wA!^f>V{Q!hTRYUo*PxdAuVxa+Ayr6w4SDTlw4m(|x8Nq-Hl3x+AinNmKcQv9 z-OW%k+P40r`6urSet16i7q$%CFCvZ$-ZxLPc3EuDWn1eXC%a2xpP(X&P%R1L&DJTh zPuN-F6m8`CAnzjPK`woC+@vGUEm1+pzRBKP_)BaJMp%{HRl-wEYz=rFVdi02o zfs+sCWN?fV`g0D}5!zJqa+#`nvKtX%{g`Dd0utB%s3erYrFWdlCe4@zAMn=v)}H%z z+YYWFz%Gx|GOJeGkzR3rVQ@3(U!l=F6vFMFRCjsbPTas5b7Ns}%?xe{t%iH67T_ih zr^wf8Fwl}vdNuir-tT+9InAP(`V7a@q-ERP6M-#YXK>RRPrZ6su+5c*S3uKR zQI{W$sKi(@m`I#N)+IF5l;;^~1y1JS%H|pId91Ig*0X3yoI+f?n(!Sf(P%}w;jIwV zV>OFpR6O;@wwaM*@d>B=8r0$<-5tbBQ+aF0+vim4UJWjF)M+Cb+HskI@o(ak>N0}b z62Jx(3|=4_4(8H0@YhYP2g4uPaL*Z>wqy94${}ZK%?3VPI2l(Syu?>N&uEWDP;}Ni zgTn&5xsCyUGL44d&H$Jp3!itRO?pC{GRtTHOnR<|ec7ThAW(<>hf)rA`6hW6p`okK zyag8t+?(jYb(|tnaW#~|Y8OsoQSRCQ%V6PmLKr%npuW+q)#&ILxr4=an549kQV7H& zjixVGezA82Zgu34yFMq)E_T^^o^0PRMc=9_tqN^iX>qE)X@A0&~Iu9|a$CyXyi*mR^nHmh5 z+GJ6LX!w#F*u7an>B23)hS1|~<8tBjFBfOc`kk$lwP!OI-UQYqQ4>ac8IBfYo&w*2{($hFkPzFSS?Qkj#BVZD%ole58meVhaLlMY1dZ}6n6q#7Fsnezo(HLuK~Tt~ z7&Lo38us#S`@fP!$754{z(YAuRB$dd%Ga+uu-T)z{M81Hmn!FrxTe zlv$7br}h(0XoO%q%c4wgbT%Ny4TUCE)crbdcz1gwZI%_gy#( z;m<=+U~4bTaa6Ei>!F>v-** zs`>LUA2A(&j$gPzt4sz*|Kt$GgOCsoCD%ByZ{lYSC9MpbgyFgy_4rb`b;!%HQ6v+y99jC7coNBw3+Fni>3tm#{WLpnddJ(8tZXD>hq^ zkpbsXoUG}4J%@@|=N^k3jXsmQ4>5M!@Dkx(&=OHN0XAKfwcc9efMQvp&p&>G<0H^Z zJauLis5{X5E&emG`g{W zLciF2jP)Z&L_QQLf;)9NgLcVX~GKkqsvRHQcJ8UbfGPZaG|;I!2G- zE)oCzE4P|gZYZB!Vi%tkvj264;>UDk*tMO=3&Iw&+3As|!p6T`^;T}HYWOKAtxXk* zMd6Yxn=&C$IxS7eaL5d;(J<5$isg@(HwEdc{d@C}7EBfSF@1X19W4o*nr%bkbyzT-1BhHWE}Bc=6$PH=SGIb!0oG?= zP(mnLHwxTuYiXb^39wun=EA=p;YNU;QhCvMky#`CQ}Smk;JD+v-9H%)JRKK>>)EpM zVX4gn$rn;;wH?~MdS$~>nvPoy$=o2#bS5Cn;=$I-63`uY?3dee+4Ag+{e10dlSTQ- zbSnQBZKPst7=kvpD_MwJU+Rw~rZd5Dh7>5!QVYlf@g))Kk7i}F=Tz^IR+^~nbg)6^ zYb_OnH0Gff z9n|4?QodUaJ7fk#_S4SfOk`tRJ{`1E3cwi8R(j&y1X^*&Suv>f0l?1(?7jJcTBen+ z4upCK<9X6V0J+lk@H4SxfV9zkQd{TSLJGj@Ym$oBh}=Y=<^f}wROM9@z$~DFy~o}+ z@A7A4t}P;@=`VREDv!5We@V49H!%B94Smt1VqBI$bV zjN~N9s0u@w-%Ih56b*j&f>o0zu>ZU{+%8U|3*%xf$4;<%EBmHc`LYvq4$io`TPMM9 z&fg4cV1HzPdhLJh0$}x75}A&A=nhVlz%xsm*ujZQ4Ku3qqt zWO2Z^etx}wC*Pr;R{U)qy((76CDAu-k*oK!+3HbIdH%TH_uin)vFx=qO^E?hLg{)8D4-PwNYIgy~5K+U;5|7OBKtPuQzL7UvM^Ba2 zbF!B}z?>R07QV1Ct2KB6G_sP#D-uu!S(dbfD_Ad9VZaG;wI!=_<8H&K?C}7xn93yT8siP#89FoO zzXKnXJpE*0=ExRF6UDeaJ~LF&MDKo%^|h@-h~&ALvG_5Y-{Us$v2l$>SiVopEG%+5 z;DrRwoN=WxiS{-R%@}t%Faxw=rKDnW1$b8i-Z%{JW>|>CyUDE%;&U?q?>jb|ZHe{I z7MF9!N1C$eohw9NN6Ft6Vaf5Da1~>^S=*EiGKrC7`gYxL|2Xm|513`Z%@J8Vrq(Lb z+jqkyTc@+(Hi(?y16g`wbjFYdkV?L6RtU{^W5jHA=*l1eRe5D*7+)2zoc#Sjd;{N= zrqUk0$UbHdCR~tVyg|LfU6^Pf^TV(6+_>rffBvpILq4G{HoqA;w4UmQme)hRJ1l=f zk1Mw7pWFq&+|)M=^K#r80`JeQNNXfG4_-^{lz-!`_GKx;^rQT2C0~I9NuR`1t72TZ zQ^u{yv3i`in^-L4`^^o9A5AcQ5R23VDj~$thggj4tOS~4c#!j8`be| zPjZWxGWM0r^`{csCf8qUOmZDv)|*Un30S_2e2>A}So~;S!B^r`xE)P| zCiqY9*NHMAcwyNN&HK3-Z3b+l8P7UYO7|f!R)O4xq<-u?8>3apFeFxm5!uVnDj04^ zGT6YM3j`EV5S+)ojQU)A+1_Vi=pkI>8)8$bC1>^Mr+r!2ebACniIs?(pw=>6sM*n> zag%WcPCT1op5$EXpDp)s?m!X*OlcDAs7&r>z!~Y0&iZmL_i$egI@3j+HDU}r`Um)zxx&d6D_2=Pg$L1j?oV63q9qZQlr$!sNxW!(*>0E0MG z5(qbyrx*&)ni`KMWAVA3vdAj{+`^V=N>I;l@6uUBc~fkW*1|HPb0{g_Rz66I#dY)FzJDf2M^lMp=g12~jAli4#St4~t0l>^Y?ih8IS? z6#6va@CZ-&^2zM}^sYPW19b}l`P^#nTJa$qhuv;VR9n5IZ-QJ}23VZoZr*57rhK4Pt-0K# zur(mFv4bj5PLjwnpoQ8wyfHvI<4>0d=JZ)mX9??1YtBfe4UIzeFHyqv+NjmKn&;OWgbOiy-@?Pu8d?TgV&6~%f?_s) z!1>9QZGBR~gnly4VcH}@44WNbiI9UBy28>O8ozVp1k!L$ErN9P?qX1?z#HiXMOJS? zWScbP;5_Dx)6CRSZ~39?TV1ZSo$)Wo6X@gIl@Yy*F=kX(l_zO{f8W3c*nr>~j}=T= z-3{eukOQWGHoACbjC99LyeDR^O+%JkwD3 z3@aGYG;9D1Xm1bS3A?oO&=rT|8c``!)D<+6MG3L+dE{Lj1rZTY17?o@!4{>$ec_bC zhVPe1`C}9MaO(vpSoO*vCH6F8oPvV#ewl*V{Pne1{#tAppNZs?*<-@sH4P~YsM^4x zmr-~pbk9UH zP;*{8Y+MH0ihpGyW-0*o)psrv0sEqu&iIlmzrNEyhnRj;DHLTcko)AM+qrC#v;p)T z9C~2VC^7V9%w@am_vulVJ6{o7jt#p{Ud3XL9daJbIh@jak;J$G0!rGw#tEjA4Xv4DhG-ypOSPi5ycGq#3ko|o zE6`6J8k-Nbe)5sB%C3VT+25I@mBJuHF@pE&jfelir|yf#(v|Bsn?RgFBCl5%L=VTU zJCau%kt{`dRy)`}hw+j!z97t>Q(&54ZkF5&3Np5=L!OtBV|}W8n4y1k1RTDP3G}f; z(_Bd!?u`08>6wDd!uZPTKgAtb~UN=pLBXA9tP+f7q?xo6_V@Z5JU| zzf_ZatKs~FO4#hH;_>m$oeWz4rvqjAfD&X@o3C7sDe^Q0sN9|80XA1&Y2h z_42R+EBX#}0P+Al&``BZ^^@U097pkPl9{2nNqsDLnBN?wfn8fAYM_c?Rna@283D^1 zzP~b(F3srICD$1LgE%`s7PxEdO}{?@EVJIpKup{WqX4Ea4Q@7=Z%AG;q(NOIu7rl5ImnUE^U#%Hl`{)I5wYg^YHoM7TpEXm`;Xozy;0&asxk)zd|e9nXd@*?>Q zf-ua{D18W>I)^_DOaP@;=%2G(EsTHFfPtkxey$}@Cg620nYdDKA>VoUf#0vv0i)}stW+Y{9KRJH~qo?_6B`z_`TYZ^w< zg^_f9Bu6*&yS#(CvtbkT>F@LXPb~KUanq;xt)(E>Y0Kt+au|n%y!M8diryj`EX~An zf5vh(a8%}c2H%}!aZ4Vmw313;jWB$4g&0=b;Is^%pnD{6cu)wxSzl>&JZ3xU3x?mg zFV3$$g!Z&g|1`<&!)WmV-~<@JCP^vyoM4eh@#Qe*Q zK!HouD8@XAw*JWmEBjn;h-G2t9XvctTHQY={33@KC2h5H~Qe|N&c8}~YKn$`n$t)>FCcM9VJ`utJXQvggQ@tlM7E@9^e>uU z2Mrxe>yxfXqMfn926TsOJ+j0~mn2H?=OzvIMX;;G@G%y(v&s*@-PDhW2@o zkc0ThHjZvg3!uI&@m@1sratWGLDupB!r7l&rZ4V1a=bduKE3&3)ooF^S4N{kUH@`L zE?Fnz%dXL2$CiNYmLCRDm{%sB4b~3fvG<1)iwabrE*~|V3C4DJ4O;ySrnI((0{XM+ z_g331=xQ#n56yN&&c*TbKX)DQXa{rdCCd^cVv zdJRkCU~$;a-zXH7LRp+hU|vg6httq;)OZa4Je-6a4|~bHJOvC}bxe)|#o`zdn{2Lp zHK%COC->RuPL76!uPNgg5^s&2>{|J5$MT==^Ct9-?yr7fpH?5*(AiWSXLV&uvfhip znK?xb&z%}k(k(4YYZV%IV;P=SkoXp};R(=rmV)O~#*u z1cZW`XDf5O9o$3K!{%`DQQTFm|6*?x_qR3`=NSoXN3!@axZXkDulb?YsN48`ie$a0 zk_#Mmbt(H>Ys=9+LUQsP_TA9%3L8j88^lH{m&Q$uw*V$*%C`RN%gL{+32XB75U%50k*D(qF4ACPw$taIk@9 z(IX?8AG|E00no+MLIv5j4@c^8@H7BKz>X#Knx^(^Tz3P2ZKO{7;<4JT3*XL2!|s>L zt7!c)t&3$i@_WlXB53_DfyB7`RQ(a}P=XYM z!mi~Af?>>mYus*bjX;M(`0Spo^X(=>RhJ7(C5WpPL z0Cxl(OJ^LE2la;^XiZ^!K@C*Lb?YR#=Y>5U3m=QzM?Skg#0NyW7VxqsjuXU}cEATu z%h&}WxPMFF&qF{;6g#x{AHk(VLJNB~uUjn%BY#C=`Cv{AZ4HWg$&I2cHcB!tV*DH5 zRl7~pNm>(fNZR4dD;XdI5-z??vpTI2`t`|ly7Z938s&60iK7u?dhp(0U#$inTHTMP zf3uQ3<>E!%Tm&!)kl_5OEN}naPEU95z)N1M7c!C`zU(P&J1|wX8UYz|H+FYlLaS!I zraq&b{bL&ZE}b0`20sw%dx$WV1jzvIzDy+W<)Eny-YsL9yTWGzi&XecC?pHTm(piQCeHOKHNYUU_A-D8N0 ztdNi&#GDoq<8oiuo+1_b9^mv!fQH8--AK6NScZymba5TBG)aQ2$yy%8N0Jvi6a}k6 zB-|ZK3b3F8#OZBy@JbR|yrEpY%}uU*%VWe~r|4~W#q{@=-=lI$dBXsMFpaoMH;NWf z0bDSMwre16#jEjs46VW}gtZyV<98Ke;PQ50{zUdyOA-5XQ81It0t!}W5eASh%Rl}N zZqc2;?)GmH_;KJLbqxwWv)d5kqR_QOeezSNS)ZC@#drQ5ShH znO8BjjdfDP9h`4gbxg=7W#SeUS}p8m3#0c@KN*{~yaE!1|4Km&O)0xP>_1PcK1S43 zQ55z=aBgW7&Es<=3}W2%S9C8~(JwwDNk4xGRcDE0)Yo6CtB*&!3{kS3uH@;`ewG2$ z7GV?*{T%4I8X^C&(|~$rN=CRO0~6Zi&AH5)qOyM*r!x|X4%I?BlsM|$etZ5DdOd;9 zlV@cjmvL~)-Wrp?c~4pai210UpAG+E0jSson@)9G;8ue&uJYoYkwa6oz6 zvWxb`=ff)u6OueP$dz5Ij-231!s^-@_w{{8wHc_yY5^4?=+48NAgx0beJQ_6hKhUw zao_57kh4*@O9g~ACDD;fb^uS3&S+K-A9=iK?X1M(uam#wD=-jB!!jsTJM{B;8HJfdU5X8L&7M`7p_w8XunJC$j18O$5t&=D z;1T$2@|rApDT9fjGFPQbrB40124^+_AUIvXTJ>)@{EuHNW9lL6&5-pZZ`QOo59@N6 zj{s;KxrIz0m6x?jBMRY|$O*^2G!%?41X`*UCrHrH7zD1d7HHFMMH;m0u)S#HpRSkW z+fEWOhguDl(1A4Kfdm?xig5+AA*qZ8|H-MtUJmrbR|c1|uP7U3VYXRs1Ia-PxytDJ zM!^QiDCVkZYT(cj7b_NhZJ=Vz2IQ={71P}Yx0blfV!%p$@IgDKnsO10zCpJR&>{4y zG>Ym8AXW~)wum)U#BEh~-E{R&=9At)z)_m76#rr92kwF`R8tqYonT%Yl1UCGhVYhL zl;rK@_;;m(%rVqP?jG7_7_C`fZRDJSgogCjX-6rIi(OdyRc~->ri6+FCK0gQMtVjORuwR&2;1ql0|LlHWCf7B}P*pRG{z};aK>T8Sqcm`d^Fj zTrGBDEh8rx>ue-lg4ZCiKBU1ZDWcu&e{%895h!m|JV~QhNB`jw^zT~BhO)EK@V1+X z7WrFB6D_LK&FQ<_Yn4c;A2K5Kl?=+h>(Fv+A?ZjpLg3H=j}GiKNX$8e+!Bb#A4)Pk zn{2KyTgN|t(D~$m3KYb#(V^K|{19X!KLs7&MD@%W<75?;{A7;^v@6jR%`lGv0XjnH zTb~|FrcK%vdG7hmXDN)lG)Af*-{AunSaCY1ZL@zL@;G3ah%``{k7H1Zix?_RwCs~> zhlV~>OY!dZ>m%8@NH!ALBuieKMTg$#KL`c?ZFyogUb|xbwS)ig`n&BMW4=YNB|%xg zhRM8Da;@bIT8-$I+@^oRVfVO`XtU#PIa)?sFTe`%8-G}rPijAtkn7;6EeEK!uJEE& z*4y12))Hwgd)uyKC)EnvrV#TMf~=(l{z*A!V_>ShFP<456hj^PguCk3sH>9LQgX$5 z)7!DDrZQhQ{oZ-Z;oZb^hO_Em`eDn*zr6=hov`H(ofKt?cM@Png_}!s1c@==GEpU- zOWEJM9X=WJrckkck-mp|rIUquMZ7^I1Hy}yh9VXRR9XL8sw@Ox-hjb;4bk|A<*fb1}S4K`w zee}9@GHO*T@wRC9wFBqIP3o0n$F#j!l^R1hJrnRbB?%RBa2qh2-r^f0-Qni6ED2#> z4dmhN00*R<+;sDP2U$;iWlYrVLg=$#t~E0W%={q1Z5P$R(52M(|KSmLZvKD0|Es&! z8UaqeqmuU-x>nY8e3TBR5LOfNLQD)q+5TuLBmU zQ%WLm{G*;HB8Q#`+HNMSj}>>VBX-e^bIL@jG&%y=`dba~>7j9ymckD35TZq7oUQD&S- zH6A@c;OH{WNK=R$T^lU$!X>P+@Ox)&wm!E^*Pm~j(v}mF;J%A=X^R8i{sAk?37vLn z;eC%M3_3ZxKPiLHWojS<#Je=-G^(}B# z$Tn8(v;Jm{QnQ)tIAi%2~J50 zA@H{#V`&%zNE81lK_dm05xP1Ed=rMC1r&vhsv{@Ilu!O!zFau7xw*?bcv2QQtkor< zL3Be!a*i16%ws|^{w2V=0G~D?22T`D``F1*?}Ptt)-=mges+KmhzHrThC%os%Y_EO zT$_oYwI6efF(Cy{D;eUsiUSnefj2cTJY*2spQKZ4_rcpyUKxEA#*f*%G2ev1&1d?0 zA`P^rc9~H$F1u;Ls#ljFwJOlCy-&jELy;vvSq=5>hH>m@zu_ZK)$snxf%l9l1!AROOX{TRLZhZcC zrd@Co&lC{F)+Th-uFK!bfM~=9Sz%c`ck_xiMpDnE1M8Qj z5%(i<5Ul~+vIJ$y9RoH2cTfI)W(IPa-a=swQSSD~25NeoJNzdoBsXrwOQRO4|8y&S zJh#!MOPqp#X9Fe+XUDAC*Tp?r3TL+`8q;{cNhinGv8_CZl8;51m$rB#)UTaMAX zR0l^LC23!;C`rTz^IJHo%M{+r4UM^!qcc@4Jjs>C$8i%Oc87_h((FShUY`oNLWR6I zmMcHSm1W>7#XwYx&xoN)2I})c1(aqIZKS{7WBqql(bZ-_W6}PCEUzcp!%E*aANjQT z1Z+7o1|`w}kqKk0>e3v35htVUON!t<{$Vk>2*R@S4oEaUbv|0K$CZRyaQH&jB=I#V z`2`N0?9Z`bbI!;#e(CYQ_vDP&21a~t`F{Uza8F`rpKNh(#VqCUMG^ZHQwfeI^V0UdL%PyC#*@9u9C{4##MDsvD?C3oF#O$QcQCt)F=hW& z4knT)LlnJEXO|S1@*V~u;A+G^&E&$`#R~uTav$Z+9@}#v)!>zxA*whLcaK)*4kuNw z+dQYy&{{$<|KubN*W(a$fMd-;V(AxbS<3dLwN_nH$f_Nv*!15*i2mrX4oy!gHU)ClfhuX#@#y>)~a(i#}CE&Vu*Jy$-?E# zNU6bm7slbVU>g4nxGkX5?gn=9%Jam!m|cXWBzexywy@mNKc#Z^gjF~FDle*{F%2!zb6II6c%A?f+ksbVBduQR}wto zI55>Ms^XzGPvc+7iS<9?Vmae5{HD%n$ZA0^TO>vFXnIsoPYzvPkrRA&`!|db#o|an z!57Om&=E5H%_|ASH&vT9QDsUvGG8dhMPCJQG7M^_=X>V#LqO~aM_?mVlpWseEQeIlKq`F6W}ae~Rf?-np?*S_rw0iQ{ttO?Lsw zB_SE|{Du%Bm`FbH5;&TSBSH&&o9E<`g5LoD@!<*K3P}-A+k!020C_eePy^CYdM$m_ zdvRfVK-p3!M|Zh0h5!Lrw;=oxBCPCekqTOehKoa&pe9lgH1f%q$%GPd$_dld#H6!J z{i(;1caTQBK=m@{Sh#zwv;(`-XaZ0v)J60rKMB}iHT+LR z^7hmitslsugeJbya(66$oyh+s zjU78$pRM$-#45d!SVbYP|Ls=%&6;10A0z!FCeUx97$&dS@#i9c}Ixo9P#!ZgG98>eEX9QWc^6={Zh7tlVjTR^nTE6=CT&^2|k zR9oXdl|Iz>#OKm(fSegVwvO zt~G!ZuNE9r^M(_?i#6~4!Yf5{=jwRE!;yle$Zq<$PyWD)B3&E2q|F4aHAtxA8sICW z6NDu|92p65tv=Ae1Y94NiKPT&5vGPG?#7HlQ`#EK*L&UEas1(9?0H5lbjue{eWzrf zWV;fgx-+h%9qtNG_JulHvwQfu>(9wPv=i8g6NShga{y;nNp8FCM&jHgh0v6FJV*h~ z#Pvo>dW$P&@&t}S3PNxy$&+{eA8Br0*ZvM(u>l9rq>+o#v_*ZUc3L#|;04R|1;Cd? zLLoX((L*H)KHA&fr$HIOkLz7JJl{lE8l)(^vJK=e03dufEq9-xPwrD4T1y<$Ydf4^ z5h(3@#nlo9tgm!lN1-AOBrtLQDWSj)jkRf807C}LvAZ;rAZe3vjg^jMV7~&|H(s!T za0ZWd9=uq4ieeu`Q8{0jCM0?Gi7M>z$%bdbj}JYT+y~u>S>Ah1!)S0Jc*@?E=%fUv zXsb&w;M3X17|{`T?I4$+a%=^(0Y6QAyV1d{_0-(g!E$Yfz ztEroSO1nY;Ql9<6UqMyNf7lqS^FXOpZrEe<-%4%0O$?A|3vX-!t>i(zpiUPC{>;65 zig&&~jl4dcd-sbPWAXf0Esj%*!aZg7YPpAbmVR5%>i3&}!1CPraZzsiqAI|fTOZ0!x))$&Tr8M5a>i=1<_`V%pex&8Y6KQmwME&ka0X4_p2mg?=O zx{u2_PcH7vs^s!;)ii?zP#{W;*0A6wF_IoQ-Pu{q9MxJv``5eO=~H@^yWK^+ck?F` zgU`>tPN=+kvX=PpjN+?Xn-Wjot`{I$HvV`Y4h>_q9;4|D);hSk!1Sij~DcHE7?uLCSEGfO~!)7Z-0|g>#u;ic77`@d8uZ9>)w)dXQ}x7 z(C|y;^n0%#i78#H*_smu{vj7Ub}lWCtj7G2G@39gI=4y%^9L&iUDJA>DILwfAc(Q& zFMo$LTtD;vXyMAr0F>D8RNHdg9eG{%O_8*SofgSrKIVJ4jFXeVp|;wcK?g+P&2^o{ z>M_VovlF&^QIl)Zu!917>+W6fgpaszEJRsT=N5Ggt>CU4^$0Cg+8}79&a&s*^Gfqn z-1deD%rE5wEgeg%dmT3+g>aKm7%_Rl^|J~zAFHQs+X7tT<^`7wAT}4}w)?omnN~A@ zXzWhx5bYur!Q!Olg6pszq5-U!DyV`qsAdys601{br})?!R}~Z}!-ZVr|oyc>hq3(Z}!$f-kr3 z7CZ9i!GC>&(kCFgNws-`9qZj~x%t{e{Ttw1z@=xh+=v;Ts=w6jKmRsaRE*SH+?g*d z`|xYSasSH+0;QJ>t|xUr3cYcw{?c(j?&UNcwJM9{*^^;n&t%-ttYlSO#ZKASNLOoM zImCmD$@`)l(R6ls-S~6aTi62D)T`YD&+6WXhbxco7udJhH9!{n`eS#v0;3qQw-#CZ zFf4e}r@aM^6pvk(P8P(aPMGm4%Hpn>N>#w5=poy2Cj0EFCaQPZksIGyT(y;cm7FlM zU7(DhUTYUC7m_Wc)bP2t{;7!MTxKjtt01?lx76UBnpZ}TyG2l@Rk~jPhfv{RFV6ht z_nCK$A8H&)y#Ib;|5)A9Vw+qg5yV%$2AYa9e)zGl3HXD<Z7fG7FdV_I2z{>44ZD6A9Y}D!6=ZarLF*iBj&GdDIfeoW45AU8%T_^7BSx zTZV6HjS5e+Ux*n{CJr-err^+cf-MG`sE}D46Z5h~wJ-k4-$=t3ZBmlujw!m1H$K~R z6~~%RLqW~d#+ru?OA31qmDwqRI?oKKK04*z+dOl$_WOf|z3+A?{D&}I`6ghLA}ohE zWUJCXFmd_n$;gi?AfAU#EDdtwQOdI7(1-UC>Bk1Nyy_k^+%n*;BqYD?N_S)Jfln9K zKO5Ik8W{!Wxa|Jf7f$`z7N{$42w?FemjpBidrD@t^?Q>o#`hzp#v>y{Gy1kgRC!#*Fw6i@t0 zK)XQ)hgRnXZBObc(sujVXcCnr8W!I(Wmplt7BG>l9&O(w4u9*tO;7NcqU#~uM0#yo z`N4iMfp2?MqE98gk$iONfL!VG*Zb{d)#MhczFSo+w#vHMhrYyYT-lO>@SaT5VL}n+ zVS*B*f?>ditBhqdPAI%D7!4Z!u{u&}Kk-1FK+Ud*vOoT9Ix|*Wgm_%;G-si%a^;&Z zUr^#_B{{m+0I68Z_?$mCTZF4Hm4hF7Tzbp%=MX!6NTV}qAdq|Q9zqLoH)5e~U|KCj zo-{aI=IIeKUw+f}#LEmmX48cW4}ZUDS&dgs4E-Dd)ixRdi@qy29uRs*3C6p$>ybQ) z>Rc5~qrUGQ{TJAqh4b_Cfit^#RvES8YjISYfv zQ&`=!08Hr6^6GfD`i0uX2n1exI0#Ovuzg~Hq5w*FVTKPDH$aaVp}O z*5nQnXKKY^{FtFrEaE2i1tMhh_E{-?JgQ zsJsOYW>DvCBCDt&zvi0>FDLg^eea{;kV(S6=l?5{UIB@ngip7<-QIau3-&EEVy;ad zSvKu)x>8iV>U}?CGlE4y=}e;d9Zz9(UmwS>g=>&$N5?M#>G{8<arw#HULCRtwK;GG*g?+J^FU3qbFB{TY$ zchhsRxmPE)P9wg*6nyC?_Tpvi7o9do^x%QX9o1?z*9!ZlJ5$qYdS6)(g|3+lbUo2 z^;Ml}ORihygv2ycEe^_y+@xM+C#19f?`|h`@h(`OFp!>cS{ct!aleiC9P3>7S~n$8w^32 zWWMy%P|i0PaaxWfhel0%2;VlPcBfs-+@<80*S&vjB1&T}ULp4B?0upk3I`FFGx&++ zuG)tqWCu^*gdTiOA9OXrmX;xWftK+Dj>!M)ZIfe}e7(3q2MMA<;Qhs4 zzgfK*ZetG#6l?9*nX{8U>-V%f{J~7!3o%K@+CWFU@+{2u{bQlbaNz}%%g@AT1$6P_ z0?!{`lJ)x8+V6!;2DLDnTG!=^38P>LYq$tor*= z;k6}*IQp5ES=hTcz0~z7-@ES|)D@;yCg&4~A^}29i1j}IL^O0q*!g4r)vumQn!MGS z(83f=vCeV2O%L{#O)@4{WF*{izxIeZKh^DyHJE#+RIjR{@Zm3XxOPEM9DmqBGTbgD zxQ?0;GDk%tUuCGiy)Tq<{jL7%SHCLsmSXm4YRzT6kDVK7NmR>8m;9Wv^&~AiB)U6Y z|7O9*Drxu1#hXKLOovjM?e`qmJ*#8?A?0@s)VD}O??p+em!wY}&$O@fy7k@;^rI~( z*Ix3jGbI56a+hq4t!#_|!t^^tA_DoFf|>^x;ap$u*A?&I@imL`e&4>sGMnM%3qj;i zH;CcNqZjCa{?z^(`W%0A@gw-7ho19F-CtDLs@@6Du6Q%6oi-U_n_R+MV$a^WSZx({ za5!+-({psCUv$8%YInfsQx7wnZi3K(U{*Hj{L<`8w@5NqJv20%BlPR|^+@lkL-xmM??^Xk@#-Nxy%)dMgYCWB*3l z)dqS-Bwf;wK>&}>2MLt!&keUr9AB8{^22T$GDio7D!plQ9*@qrF!p%fLS+}QM3?ud zm&6>@w?kt?kC*v!2k$gJY}TherRvdy>Vl7s6*xFvYbZ%|@b6BGq+)+v|9p8^r-CXM z@-rvR>utsPx%s88(}8pQLa6CM^RwPl4^l1*u}oS+w5Tsb0xlmdELVChTic?#XSd;{ zk2{U_u1TI$ibI84j0;Acav2Xey*D`HO}Lr=nb=(T9TTf}24Wfr5{Q+R{=!DyZ~ZlO zS8^*&YXZ|wU;Siikm34{q)}8<@QCBowgey~U%%8vOhNOmcPH-BeYez3>?=d{V9`79 z=CzFu@QmjYatsBAVJrd#k@3Z?y%P>&Y^w{!pE*=Sn{OFrhSfN%X%8z)*nzfs6DXOY z4!eWF4!Tatq%e%(n&FrG`vlz|+Z}Y#oK0%JEA_zqUja|~E+F3!R^VQ*8Yng5PaM@* zLZ$ZP+%R;i81WOG9jy&wCEkpv&aq1WD9!K<{u$}scXCkTOuk8!)M?nY{EAuTNN6RO z%;!Symt{&>7S^o}-HlQL7`2bwViGsa-3f{dMe$s2Eq93J+LjXV8XY<{kkDDE5-4~CG7_dL$Le@?%|V0Y;JCPYVqN9wOywE6YRnNQx1t6t5iifngI z=uJLUo3e%JX4FE7;6wsPfGbDQSIjK$SomiNM|G2-6Ulw^UOS^kj(wH}(# zE&CrrJH6WD6rS%j43pr{25fE<7xHUl%|rI~3H0|nN!2GWwQ`SFm5SlaO4(xjg-)mn z%fW6Ji#-?-bwVs|*|fjSL|wZHzmusXX;vBUnMYm(apr91oYtBo!266y@~3d+wnkVz zc8{p!9wS4K(;oXDC)d)jAzMPwUvFLzeEfp;!*$@SzoL&(UGU20ldiFbt8o_E(5oghy)-zbcLm# zw!fvmooLd300x;%4|6%?HF73ouDI>VQ8kCofxMdoR)#CrP8>UCYxm=UU51}aRgs?V z4PmL$`Z$3XpA%j!o!pGvyo)LpA@~GUwbcB*IsV*P-}c!zfp*OexNkYsmQ8l*X$h0c z$4JsULTp5mW?}=Y{6(a zX{Nk&LYc6%O?&UyE0bNm&l+Zb!%|PY(GnL1u|yOl7^|6m3>+Qq2ot!IB&npr4EmmejEI$N~HmS+R& z)LgXP?#G?~QsFSbu=l(lpzrl?Mc>-%U8!FTda}!JhxnQ;4N79+7*o|dgEQ!x5XG8 z-$o&g3Ry2q&vsE!V|JlFtxT7U(007>eqHu@2GFEk&))Pnj|k>tLX}GwR2{m0TzDXB zm-6dKoPtr4W8h%+&kJx9_R8;E^bjocms@YfXw6Y3$};=N@BfcSxFULbXT93n-{6k} z@hzlSi~TdD#O+T{Z@!&uWUF%fhJZ)iN(Je1GBxQM3X`hs_FQbYrDR49b1CMQCI0By zxML__C0}9HVN6=_PwT9M^KAglQPHckKUX;e(FodoGXLlDF<|`clgqPbu&pdzjlsq8 zpbWwP+68b%MQVJrZPc46rJxhr=z2}fn-lz=S7(b-LUef6%i>-jg5yk4ArFs&kR%y@l) znM^5=GYr0V%hlSq>qmWPNy;;q>kjvw{JY9M3J>G=!3A7Kb{WmH{sX5gxVo7zUaqb1iDVpJZw_51Yp1)?G%Wm&a}OGuaV+&h2=kut|zcu0}@N`#MlboL~!K z+?RgsSf4!O$}wdfCo;qc1M)3`7``xo86H`fPiPxw7+Rg3qAVw^D##-fZ;4|**16gjTtbVCbdW;(Hm!U_Y@b!qTuL}y#D+r!467&6i z*Z#01T~u1VER`W>kBoHu!n3NqHENYs_~wp!+F5+ErR*JxFobECd%1;)hSrK~Uy{i0 zn(=#6YIdI;gQGkfo|x!3_iN?j#=UO1MU1N9T3qw9kj`$eOZdF?iqQ4%`pE+Yg*)kD z1y&Kk*3de-X2k`rea-z3YVUC0Ub$)%7s}4L;_Q(@!}q^j|Bk!<@o8541;Ojz>fdhb z-2Bvs_CCaOwP?uhJSa$qyP1{lK|QG5+O!xqQ~!&LPB7 zmq${F0H|?O`Wa7v89kA*yi&q=E>Oz$I4^fHQ?jt~jrL^nyx9>SQTTs9Iv7I8RLd?FhC&Xk> zs?@bJ#eG0zZ8PS@YsvD4yHeyWV16`Z^!`vO6lW6^p0yTJzh8_Zo_}{{j~904@W&%i zINNE{j)u9}fbk!R&xYy+=asH>bmYFXmI`@B@Du6O zqhb83Zx=WYuLe%13LYP+e0aV7@{pLWgN85M&!ReA=lj7VwVs#n4!GYQt3UCu`yJd* zZCFV_uK3-aoOh3IHnvcYd5S;zdbs=W$>d*!HH^MNkzj}+4dEBo=c5df!Sm{rG5N!qu_C(mBH@|!`G-<0C-q0#Ia{iRM&8! zUk~8R+xI`H&zikMstc)Heitazd3*uClb4%;I9^lMJJXr)<3mjY;T+I=Z#_}?`{S(x zsah^2Vl_A47i`&eOq4ko%DK^PeIw_sT8?~tJJ3BiVw>B&Fwm8@~ol*7 z+|R!D_1pXQFfyK@7(H;)8juRddBk%3)a)TH3cR58pksmd(r$j|s|P22ZL{7fk2PK2 zHra^`mvJK)MnV>k6EODfr_xh)bhuJ_eWhd*zdFajdUn*PBwUIZsTuaX|7u<`S93DU za%-Jri;EyzpRYDk^H~T2r0)hpX8h7$IK|~bcXWZ48n8m$_akwj4>6xFgRTh=Olj2v z%FYyZlugHz%I1E)G@Bmm`euA)*B@j#D|~&n_PKBM>n576b~aH7qn0^_QQ;~68Ry~h zB;jF&vs_@K!#+c;>3T@5XBE%B9v-9*on(USg!qXnr`z3_ak34mZMZ7!J9mXE$#qrZ zQ8{@$pX)&&>?rg^ul#Np1lh=y1-GR#MNduRwZ!DmWGbl-v+Y?gTiX|}6(i4-EInTb zV%aaWEr#+(CYzGG5w6y)_a=U0#Zcby<$$tF-2B{C)5?}iPN@z#E@zQU5g48!mYg(l zeQX+E$)Op@^t7h2nL)PGS0vgkt{SN%;|SX6>X6L~<-Rt`>HISfz1lA-3%HlL)`3o| zc6)mm!&m){bf~$V%lP^6g?$s-P@?9GH!GBy+}0mW)>->I<>}JG zQh|Q~Bl$=koe_|N+ci14KdO*aP=W-1IoRTFB}18V~| z4c*`>RsF4gAF+m4T{02VI@-Tiuid{xSOs>|ebp35l0t1RKzXP?K6K}8zZF=&BUK7? z;i$?8JADMk^QMV7W#0(&M_UiI^Z_XdAjJQ&y*lM4x8^#p%?^L)YczG;+%XjA~362XGNlIvd)WV z5Iq_|Wc7aidB+z=usko-bAEqwHZteTRCEC_8Vz0^cMKcp&ktRFAa_oolU1EYp|;t@ ztOn4t;!60|GgrxGcS4toQ0}8U{8XGF?}K<}i}6hHJ9=33!QD<;Ro${X1Ne#qpAIL& z0&zI)L-n@#Dxf`T@r@KM3ucrW0?SDuLtpbJoiSqCGoH(mnuaFK7C17z|5%f^I zC))5h>%@7nz@wEzXTqstHb(5(9nab#wN)59*LAxp_qbWg1DRQ0Vfs5Z9hAKk4Nv91 zEnPldYSJ1_U5%ud_a-KDKg~EL>MM)3hH1M?hE`eijH-`PFqNb6Zts&bgvp;(S0ax1 zvC+0u=SRa(dvhXku_>TkJnf6P9S65WJ6DZ<>2$>E8;)j^2d)p<8%Iz*Ro1*PCo=AiKCRjCV?!MD~c3)ftLx!`HnGPDIHnXnZ+C%`+3kWa=v zuV@z~)i+5Uycj#63g<^9a`RWtmGj`SYN3o#nH0j%B{aDRcv+aQGh;wGsEp`VxJ<*r zr-Z9ODE@UAV{#EpdG(G_*C5&}-dq-&e~9pMC^YS;8!vFagH>Kr-$z?>x~vEv&!;RK znpT`4zqUo|pqchrsuPdRSk7g=ORwbli&w3yzt>PdfeUni{dyuh&+^FWpuZztcVJ75 z^df#&rX^i{jU2ll_4nm3&i6|-Mr#(^*?YBKf7WWPn?$JsHmx&#I92|6fyGDd;D)A} z&-Zlk%+gGYRP{oKtq;fgnS3%bWf`+@ovDHzi5`4XtKcWY70&s+=Dl21w$HjcQwa>; zKpRP1mYN#4`jx!VfaLfSviDRm&nUIj6Z!{63v4Xw2wiScoI9-YT^N83W2|(<3dEkV zT{eYxTJY}HFvQv}KhJr}?YJRNn@=x+x=ECYPAco44`~wh_8O3e$=Wl$l}i{Oa)RkYX_Z0hsoi4 z$$NBRy4pU%jbCu*2#2u>*BtF04~=cQ-$QCz5yWSTD^KS9zpnz)LI1~(se(EyH>awn z>jh>vL`mvtIxKevX*b_3S4Ni~*PLI!v?Fqf4}DKte!&EWd{iD^q@nxk1w}jKzh6r+ z%g~_O>O-@3y<>I;)w%sk{+tlq2Bq`sWjE`M{Lr_H_?3chs$%>fI$W>zOC0I}cQN(p zLGMNGVE-3Y7~Qz#-R)Tep z-E1zYF_8E$)%l0GdRp~{paHv;q5}iIW!u<$94Q!!J6Scy|2UQ2K04HuB*}3QB5m~1 zVl6+g_*<5vL)?@QuejG`nxKE_I7Hk92VKm$pNeE4Zm!E#NXvIvuDsE*D&$v>(o9>A zfYHI*>RR_p6uOXBp1asx5*pxL-b>zhA~Vdj1bBH1X}qLq8YAe5lF!8jgc{1;5a95Q zNx1k^`)v)lk>T%aWg|DI0~0{5y(GHstH0;w1J<=BF~`aC(6`5XCPdEjpAL2Pd>W9A zH{Zmo#u2I^578G{DaDzRFA%m*-#|1K)|`*4E5N-^TbUujKBY9K=bL~p$PMC2d8Q8e z*;1`l4mPm6mO08!qZ-7@v&;+ZzTV_4Xe>a{DYL(+Av_qI#^;@ zW4XYku_(-%s!l3RYx`}+tfnhgzohjO8!`+yKZaN5bF|xwms>>38sUbbh(;=ZJtM0J z+<#k!lwztQ58W%y6fjRAu-Hd6^@qyK+8OUMNiH}?bQiO$rFDZBRrM);qU~7LEzE=o z?(bI0DJrR9akQWOg4|L`l_%B{`^A3W8PqW;QY-n{U94ry8Uk&!e>F2u9e=eZK{l@} z&rcywsxj2a`ulW4Ua;0n@VS2dwFU!TJg0X0O5F;GrRXTYX=DzKg&_&njZxYDv`u8~ z2kk7Wo0~6Jif34N{nIherbC2vz+EoQ)IvS?H=e;*-M-;w#jDMO-CPCEq{ecV%Ufaw zB4Gh*M9GeO>Ok$Y_f{;AzgnuRM3^2cm4&aWAN}U|mh$)pJN4wG<)PH$Yzwyb+>NYR zY~>2gSHO7w_7MX=90SCJxv`>AYWQ&ZvF)J)*!_y}-cx$J{GG?Tjk|f0L5O#pO>s6m zs_(nrZ&i(!`vr8NP9=JKpOVJ3z+sH-_y%#2&>h(fYE93IDR7 zal}m|i=6JUezV7BSO0?TqrAz(X$Rg((csm!0152i3N=#l>GrmNl+YNP-s0znue*`y zaLE0CzC9wO553!Q_he&{-bT#zvhAkqJwW*GKRWnMmLa)*@X8&S?v2TDc>JnI74=Z; z%oY~ZIRrrWDEpj%dwWfDZV(1@F8JEPm%Akk{9vOz{!Y`Z-@dy*py;0yj>*jCkm zvtnquk1;%-p8A$r;dK_$af?jn?{6#UpUtJweiL)NmkEOW#p0{3WpaR;dT_*d_# zsz&52t8rB|GhARwrdbo(XR#d$s!<+4D(v<2#IvH;c?0T3JEW`=AoFT!Gnc z1n;_Im|9U){?j<`HX9X#B+c`_Kvo|m#}uz2W>LkXi=<-!^+`^R$kiFs)qJ_R;oaM} zuUHhdbWQ{#mE(xPG9LH+wAWQ23>)c&f0J^IbMH5V=IjgAxZ;Tc(Eg)4;H82XwiCDJ zhpC-fSZVT*=XthDsg~U@WMzXF_r(9)cVHz>ZM*hm<1BlvEXKYv*6^!;@j+pm3(lF- z2Pih{oQtrNB|Z&5H;HIuIW(3*&Pc!iVFdsr%gKTq!Qt)P>&m!^8jD#rln{o_x-ZR^ zmbO~)mGPW182eNbeMqW9E&666E+=hYN@Fg%6tuJn;<#q!&o~`*a{b<$Et0CU~ z-K>Ez7bO)Ej@9(msP=}}EEskE2qyg^Br9VSC)SmjIcQB$+5~Jj=UsU6NX+l8SP!Tm zuAb{@FPO94vfL{gKT_dH%Dn}YRx*k9dFuqhB6pcRTtzz{Q-{Xg3quwXnX@RKoWz-R-OE4Pn1Iv|Zx$+Mm`Cp#TVQqgK4@#RV%{gmJj=$OFwQ z_M-xMHPkKSn~YVWI8V_>g?FbigxpriOTZLC(G&<~IjTBoO#n+a{v^D8Sb4EhrjfM!nYN#D_8TyJST5$jj>GRcXpha=(2SKAqoQB7G?SZcsW>Ubuz54Y|7SmSWhhxXp565=9 z%pNG*h-ol}M60y=@WBIDAv1vEBjY(G$H*MoSXLi+I<>bA^u zhifME2|mH`qc3+UW;kEj>`nDwQIhjWG$D#tIDRr^I~jFk@0IwOCYh1Rcg}hc#Je6R1<;J-`4x_h*gfW}Bh$W3 z|JQi|I3caSebq%-nWscni)HI7dwNsp-l?R3LJ5r+Vea2T6FEaiP`$xV8^%dXXvrT0 zhu&px@MFCfC2g;G>lz}+q}+x-l4#gAwKBeM?PNF2M~fC7-Z0y$abLk{Hoh1PVn#85 zAILP!cpBrYDH~%3T?Qi~qQ!K-zf7*+VfU(Hx~i?p;!Ro4k&HL}7CPbWTZw8x#S(&3 z9!To?7sR|xLf`02Le2mI6#fpOV=4oi28g@$abH@iHiplmenCrLUq1*gEVxf6wmG3a zYGVEvV5H_#UNt>FZoGZ|Gau@h<0Qee8`unD)btD2Sf|~iLS+fVd$ib_J5~X)989b0 z)%-~$x9Q-&1}M@^Ng{`nmTN$?53lK%>#1_bgm<$`;{MkDmiEDk_;3nN8VVbuXz~ zwli>9<$`4ZgJ@o=9lXuY#oCxJAxh-p1JFDMjC|z2lK~&Z$xN>Oss7UG>{+4B85Vex zoardB|1zQNgjqfSxTLTWCw;W)ixYWpyEH(2BUDrVeAY{bMy&VkJLV^<)7H~RjO!jP zYmJZ^tv=b_?lqlk4vI)lEO5!@0>Sso(L3%C#2__)hEAZ-BI*1egER>cMMQ#zeCF(k zGfV@NtwE0|F2E{94SlFEpP{q58|-KRv~(=X1$$h?PM4j>ZJqOCt`ZKX)LJyT>JS*5 z-2f)YSh7{5Wy_J1)6lpCOkDtN#eAY&ywUo?qwzwH4{~$7G=-t_^`pVXJ8$iCrp8_7 zo<|X*cSrYtnE!*4$DPC~-(N>(PX%aPAFf~1FuqC)L^8Yb#STZ?bxB$jZ}q|;mbyE? zZH%69lDtqCB&YkmrxrT2qI`I5vnB4^=kn5tigKHr)hT)|{6a(j2i@UF+u`zx-`_n% zEK-q2nuJROYUKLemj;Tp8l5QB12l%rakumN+lo&M@>0>0s37ZIn$)YC^TK#FLG~=^ z#o`zpeD<`E0R!y%;)d3!o?(wWOP?wl)7E&bYVVN-`R_{Q@s6>f zb?wp^L4FwjSFqc^8br0NyKNT~VDV1~mAmEaYttCp!|c?E*In1)2mnE>NDU zi0<10{P50=BfO}96=PSoky$Zgr06^uXk?OyV@}RS?_cXWow5|~5)K3S3JyXzc`+rI zToxr#liyUEIbXuUXDQ)>wr&q=ep^L3lK+<$fc$Q6MSs=9bD%j#&c|RgG={J{kG*VVtV{$Z$ z1}Z~Pz%+AEX%y2l%lXK>%eom^W|g7-ged$aPgHXwNnr2$!O9jJ!wz}Tnb5ejpJ@d9pf-mH33&fe!4{0wxv=~*mN zY8P#Da3;X+0ne5kL$q`cAVM6yJ}^Lzt(Y!2&KFxBgBcFV=KX!IswYqfH4nM8v_Or8 zQVH!~VRN`yDXJdt=~9YBKgN)-8Na7L^RfiA#YR|Dx9i@GE>QmEdP%${g{B4Wh2nZ~ z*>)T6FsVs>ZDhU!rYY>EsA8q=J2lYv^9#Ep)ZfZ_@Q616IOm{7gBot{+y6o%n-t*o z5ajUyI=HZ`TS-MuwGDqY*4^!=?)UOUlW$G}u!tzgv+sPH`=Z<;pY9L9Np0U+#Wv^OxsF;CI;Uwz0h}Y+uYTi~ zqNE?Q-?<(flffpe@_!XE0uT+8P^8SM;Hq42u+`P^;j7A5l|kcr+5{qe=ni)Gdm5wk zDZyGp^E#la$||#It)VT)U5piyc?{G@1XsPJOia7EgN z6^7MolI^X|V)w5c7PWDpIO7aaZij8kvWe|709{055Cb!m!--Ajd#aRO&=4*3)24}7 z-R1%^uD`=oye}wGe<1BD&eW1}^!l$M4&SObq7rc|1~3TgQyFzfo@_2Tue4~3tmctk z5QP$+VHS~GHiNgC@3yr*w*?ZP_o}kB4e+$CpELY8euS#k$+eco79o!1RuamNd^hH- zb3M3YFQ8N-o&;49a>nG;SqyM`>vskW%C5Yt*Vc4r1s8nk(xrd>1$3p^<2;h6_r-;1 zxixt5$&Tmj`lE!^Oi+)Vc%Rb;T#-^@WR#5eZ%>}c9sKDD&-;B>>-BP_jIzlq1noP!UZa(3xM8pI*mu#(Kd?P-3Cr|p_P7N;h1iP`XWjgzkpL&rV<~|i#he=+rb=|bRjs@yb@Xp@xq9!)KWWXFOZ#`3us4=A`<&e&*aVWddI_RrVQ-*gLgWG1KA8Z3zp zz6LWmeDq$lv5n8ezn>F&F>ovK@IIP6Rwzpa=8Bp3Sf>wXSzPc{0B^+Z2C%2bSCTW2 z^*Z~bXHwzyc)4tp&Xs=aV)HmYA{kG9V(?1KgSU^)y z%<2ghePcg(oXCPlzWI1oo{LzuZul9;yNq&m{X7b;P;Rd%g9djiZ|QGNvSdPg`q24# zuJj~dd%mk(f%cnUK!&&HtOyKSi(-}2DC`J^B$wM=0Rko$7!P|wsrin3%<;F&+A8@> zc`O0;3O;|Er~X~Da0ut2d$_WItVy|+LsV%E(#0LJwp_^;!W(ZT)jiM9tyq|zT!{Yo z>kt*VvfGkW+a3Zgy;8=M5oICUCsfs( zlHMhL(Q|);OQ$TmkNxGjZc&Oqk_iEGC*%WQ%9O-WNB#GZnxVs5HNOW!AhYqlmX5Of z75Su*f%ZuIpJ)ydO@^5vokvnoBWl z_4=mkCr9}DHD%`7i~9^_{MYbL9|%oYG3vsGa;l?imf2B~6NZ&lC?Hm>ArJkv2sZb1 zU;O>3hl*4Xf80Y?eNZk*c-a@zIuX59Npg)HWI4^JG~!0XDo0qkWwO46Rsyn6MtA|q zU|c}(%3T9ALjkVG>ue+`#YtKAe6Vx_yw^*{LCOHSjk~c7(F}0MC1j7=Ql;Ut&7Ixr zYFgb#Kaj+!T(`wFcBJ@CvD=2{YXi9q=aXd$U83hjj~g8>t3?;AoUb7_JGp5Kf?V6M zcrS)wbR2tn{>k`|e(LR9=(FJxT{P*KdmlFtLU2@k3r>Fr0-03C@TDY=+7%UQvgZ0g zfGC$YJ4#HEwZ;(P)sgee*V!q~N>mk6LS7Xsg%tvVRIlbF(A&2$d73p_LBfz5w3v60 zfq9n=xwTe}d20?WM6^;&z@S_CadTW5KV9{`R;;YT?lk^&Igaa$j@werhh+waqU0p2 zncPIPNztps?G8L|&8z^d8|59^z4#JeZtP`L7oJu9jS!K|ULQ%RT<9;+krOz^eE`gk z#0f*fMX!HrjY7JwBu9MCdur33=BlpMg$CyW zFlZ)IU>;h^N-v3Z8rw-=<{Z_D@HI6PY_oC$aZT)2xGzv4^#a$GSTLM{@NJi5ejcK+ z=rVG~;8}Bfx)2j0G`Zd7;mmcJ`<8uU0R8-llHAV}&yI(bHk24gC$;Y6&M&5WL4|Fp zwHM87uy^#m1}A;;{nHJzF%t`Y+x*yKlXXoTfV17p8np;BCt3z!4Cg#VF~A+^N3xpR2Rt8v#LbTxth~-Vk~%!$pa(LkO!CH zlBZ8icYovSkF~=uR+u~_`?kAH9lV#;sj^y?L7a*1djHce|4Y}AEuKDTj?{vPcdZ0(3BOm+* zOGOLo6J1DoEnJn2&-JchxH(MQ0i`5s?mz_V zhC#TbQ_r95_iC}gGHFA`@zrcFfZXEn*=Q)VPrS8aN&%cKW)=n2kIE-9V-(Kn5HO;5 z_sLxkk#%)9>#S?_oG#7b9bGrzTYAcPViWOJYdAjxGtOR+maux>)d38d9A2(bMJ?YZ z9Mu-bNd15Wfscn((Z@nOt=vVfNtB(@agFN?*C#Tbe-n{Ffv)uZhH&0QDUWp?|C&2| ztBq=3m~GzEW?Zb~vdk=u&qDtkpl_YHl34VA>g1=W%I$`wG|5=?d=Ak)rikkwQ#9jq zhfuHGZ0(q|T+LKzISSl~nIjC@$jz7o==@05 zm&=7-Z2z%*7x#6&%Z(n68E#v;TG7uHTDh+KHbEqa#(_HTv+unf`y|Da96l^Er2e1q z8ghLSdZ|#?b^R#wxAqOH&kds&nX$|ze38NKFXtW88EK-ZpI^q!6+q1OkGtCn3>nyqLd3i(;{BJM7Hxa07fvVk zyMXzxfe8O9PQlq@|C|n zG1owUtzh1ew!WKt-+kjkbB2YLAL2$NM$)RDWI74*1|MrBR0|82?oH+eVl6(qE7W`w zh?LcyOV_&c2*2XXt89nZDu5pA@Avbdzve~M2Q{aQSE`Ro?C)mVo@@SA?X}!2V_4C{ zb{9_?2S*ZV?+ji4CNBhX*0D*g76Q82k7r)iu)SH*u8Pa357%-i$qWgJ#5ZK_mZkzg z3&)=?yk7Dg)ATRV8L;B3 zoRDqVN@J`ybQTq0<2`N+x+3|s;3j4;Y@IFs7WrEhxNWZGW=_jKLV)d4 zl#w`R`{Ma;0`{voJ)@m8x6~SQ#xiXPdFn7s+fEX$hcawMO7zLZ{7sHFft*U(PVPNc zBYZI$MVAFN8E^AfF}MIaYB^GO(s03Fl#5u*3<+`GY+DgwWbVHy7^*ysa{%<+CCQI8 z5QkvZ(^Lqc`bd7=cPW#3QpgEH1xe>6Xks9v(Bzf72$WckfP88cuaj9q1@#vu8wK2X$;Evjts$z;JXh&`=m@X>9%hbx} z=!vw*X%^gSKkti95SKH*A*opJl|tRH#O=fSZ}sJG!w7sCo<-HT(BKad$4^-k_b3}#{-ZWYzv+>w21Lo(nhwY8jUPe9Y!D9 ze4_*h;DucMzLq`aOAH_(%Slgr=miJEscb>2Hf>j?0LmHJ>bjy_^6KaiET;U~@R zEPDc~ZjS8vG|&MePSt-`oZnN3@^Ux-ZQwvkT$=#9^+fRDnh!EGVSTp$H(3KhMOcWH zc9N}4aDKQ!pn->`0NT(?=QPwk=Nj)B6!dtALk%9jzWrMrEUg6xdo%%Vi=kWad^oCF z8X}}U`3%W?)Fc%l=R!ri9YwZHJ?(?5`7y3!-;V!X^pHN5;u}aXr1u~~e$%@EUglkI z;VIgy*HI_ljNun92wra#5Yg8*Y}|u0_Zmk6F|DL^1M4?*7c=AXK3-5Q=k}uMlxF&H zFAF|p2~x1F-73%RmXGwa@U3$|T`%Y%0rU0$l*j}d(9 z73g}UHa6R8&hKUy4_MjZ7;?sJ)^IK_dag{${ZD3@KMG5`v(LR+S_uo7qPX-JEMkOy zIpfGI(E(&|VhB9q)Q+#LFY0r z@RSt(g!i!>IgireJM=*jSw=V4RHgWSKkJ53FCkc-P-v3S*{wQCAfzyb=bTO}&(I>s zuon~BI5mdnk#(f;@H#5AAS!*BLmn=yU&T{*SKae3PoG35^M+S>+sU)MA5F~v8sZo% z47c5>Y@8l$aCA1eYk{!(CaX~1xmaRwG$>0Vd`2Md0h&79Uxv5H)#Yrdu5?LXpa%H{ z;wyJz+@Q*%L8$uIegIe5ufh+Pdy*$7``u6x<5Va4HorGCZL-mh!5v0Jo097FeD`Jv z+qEH3!`uMBRhfpRi26VYSSVYu;=Tu^#n%sJ%cLs^9hrO=DWi-*qp^c|A9h_W-7uYK z9;tN{s?g{YtlRtKCy&KynQizwZ}vs%s+j+6bhJ2_DOo_@(zxs}7By3uaD4dlaI(Ny zw^%9i&WV`J;q(vSzsL1{vFO+b5=s>(Z+i-MJRkf?iq81K8jq?Q&hxrAa~McN!OFQz zW$!&^;{VHjw_0oAG8xY^Bz8K-dXa{vmTliY#xN&T_vItgmb_YD9G6e19~-tP0g#`ee(LbtO#gcp330ED*%HB4!DqNJHC z{4qdZt{hkNkN4vZ!!qc`ennCp&gqYD*QGvOR|9drn@lNx;Pi-@SF^~u7>Ru+!I)iZ z&2ZDW)*)U_QS0NB88{ku)Vp=X11L#sQ>hn`r+d{`(0 zKKOxs<)IE82yea=K{~kjBAk?)Yq#92D%Ta~UOFgAplD(wQ3KYn`aO+^^m2fYskEl* zGf+DDvjs@8zlr^>dHehe&e2BqosV(KaJkO$21$I^+Vk_ zawEN3f9jzJxu3f6k#?YP&M2M&p@?RM)TNh<9`oCagS}ozk`u}0x#UfbCXM9VFQ*il z13Lw2nWhm46hWg!>F^qHAE`D!BC;yy$y9=z1rJpj-XRR_kG;M)GpF97$BlUBjdlOV zHO`!@>LTN0;I~x4m!F>cB071(#%wD@iMTfPXdX6s`9>= zJ*5wVT|nx9ceNcc)IV6JV}J72c4J~rCZeK~U#@skgnSM2ZFVAIg-`y=@RMgglXn*NJ8#LJEwbCgLDz?EQ>TKe&dN+>t>g$Dd z-I7T{Ddn4QYT8wj{QpfM7xNIV65)~aGKKtWLTIJBmZr2aS3FAL?pL zZ1KBpH1%I#;m60x(OQ+&>`Mo10}+p00xI0sAtp;rj(Te(Y%E51;s3Fy6N*D&;X>E) zNsP{l8j$_DsvY#K_U^2v2lPT&20Bjso@AJL#&_D;raS>48Q!}E-F~RQFyV9XFi|eG z&ZP_QE`}T0U*h9f5m&3FQkTrR33#r=4M=qYc4wj~gVF58Z(z$xcT#px5+ID&{ig&g z&hj?EaHz=lFSS!ztN3mAN%N$fQ#=?S+2WjuQ_6wV z&Fya3)@b1F^D$IqZ6x<7dp*?3%5w!h{1uGgjdornf3wkH^99pd-9A_qO&Z~XxHwdf z-DIfzH3A9G^cQJ}U@g$WA`;iRjVwHkWyiYT)pF@HjP@9jNF|K2C~vEdS@HR3gztFj zT*kqwZn-gpgs7P4%bNf!5)&$+#-8sNi*M9*|ejC~i9nOg?Px75i~SS)PZ%axvAD8T@>V=|^LajQvjW zDAO=dHc6qxxWU;&3la^uW}8sKN2ZmF^&>YPOP7b>fO}Ge^vqNEH-bNdP-^oPLN5E|d9 zPf2?zaU?O8r$V&H#C*d1=)jyTx$(JgH`QSENg>}K?)qEdkPc7^>1q{zMH>r|bw zv|~_)C{R=_v-@$?3wgZGee2;v!akAqz3_&p)n1f%9Jgfx)}zk!J#5@2N`^y$3ZU~A z!siWGF}m4V?ZS)ihT?gsJVV5)#f7*g+D zB&h=VHiO%cWsx4B5eL$a#>H3rjCe0JV5QVe8-6IUY{n1KVFZ{WuT*?>I5dM z$i~A7>B$_h2G+!JQ?Qb%52Tt~DY_LXRS!OfNh9L1eY6V#sjaIJ)?=kc37ggpSQ=|J zl=-C+2`&Ppz?=2QkNr>7cW5jaj6loK|CW8s@MD$Jy`;S~lM=ab=yi&{PI^4QLzazY z%j-`ET$x7<1&N8j$Dxm zo;9aNhv?$pf<4LWFNe8Tj3$jj19wi0VS4%&B{gcA_!`(=>N6ww zW}*8)7$h6TlREs9>6x9I=j{>oy`IZlAhqXL6gvjGwvp`HCxcZROkvxEKM{fa!lQ|ko~=E=to`d zQP2z5il=66(DaENX-;geTU*08&1{+}RuaeScqxwzTc4Rr?)#o-sd3e>4B^jyt=Xl? z5xIf8jC87aKN~x?M^nBdgKHV(y^?5$u z9KVL#6z-1Lf`wMYY>ZVByTSWU($P^s`^XeJ zrBoGez`M`R4ePOu&L^Z!B2Zp-e(|O|$Xmxov2>2brgFqm>y_48;pkF131VA6?d4)r z10b!*9kS=PqvKSeR-)-|4vb8%0td_RWV@=mj%5{6zJ_y)W2iIXGOU9* zvX!BuIc{QT6s%J_CHQp7p2R$ulVsVNaJ4r{iwPosuHUKa!*pJ7-#1GBq)mA;NrPjHrn!~%}pah^nDwS7=%I@165bzLOBuE zlUY$W+OZ*yuM<<-o)z$>FqhEf#rGzw8(NAe$GD^V61UfZI(c^HX)n1;`ODysJ^FnnrXKxOLwB*0 zU741ydH@_!8g!e$(2!D>V?Z>r8|)1cpYierx2xpfE%D6GOn`7{sG=zKj%LuR5Mzz&a-&P&!W%4;9?Zw(`GWb z!kjUyQhrD&blwT2|6t*$W+2$6*a-x9{~?PMoolx6^xg`n-qre4UWzuwSj|=reSaiQ zm0_J|p8Mw$2QDN7eHRYNf$l(aNt5>cB^yj)*W>5tL2qy7p}~iQZDn0wNQ^F#?r`v#jyaIz-opRc|Y($N5Ae7=5c@8t3*)DdjS;%5hoec9Nc&25{V zCuY{OqGi%Nv_TwV4L3*x*)2LE6H^(OMH+tDJk2uW4gxT7Nb;jtW3h{#4rwKYwU90f z^z8a68&8SMyf8}vR28899k`cE*L8-lDYjkSMjs7_)tX5&^;O#O{9 z^Nu`Ax+2AfL8Y*VpawqP(fwq(_T{-=nprM^X`k1!xkATz$;!h~Wv~1eYOIk6_0)QLpI}C56RLd0=y??G~ooZwIdBi4HCN9xEw_q zmV~Uh{iTSGwv7YWAv3_Ww~fs>eoH zZ&rb&IV>EAZL_@0Rv1bU0XDR8u+ultMeq+1jkzn3H^j~uRUA|$$E*w_%l$E&IK8z7 zqS;z$2a2`B{`EKv;Z(fdvVfqX+XJC7bozjo2?(#A*>>zL3B6W!+W>}F{DK+*ToFsS zbS)}tdBG=Rab^_-&h3PE^09cEgRVDgUe8sQD~@i3|2(-Gi*#xh`7+&>SFaZIYk*=E z5>)SDeefp!TxrvZxfg%7xrM;i9z)V$=~PQHpJ)}0Y-mGJuvLT>gwJCCPCG%jQ27qJ zgZ`-mMIsRU=;${)a!ixO&>vN!=NACGs(DQ%;kPqM@HASEjYKlAq~`do>!LfwdGWPF z_u{I5qENAVc+S;gL=!VHgY*-B6On1jR(7;}<jk+G*s_2Q8RGoQ?etBH%k=sGxC!ODUkjY$>{1Qpt?cJ{} zpL5T^t_zs;??ndM`@BUd{NP@9O{PkGB|#xjfPF&Q)Nf{DBk>W|p*?T$*oTt9BksXg!uEED*|4xIjn9Ex=dqcjYHZu zIU>3%mdqP*6Z+}MjVPP_;I>;#(EW@{n`Yq>qgweGNwBbpfiZ<;#NNyn?p4SF$HOvey4W zgJET*wKel)CrcP)=YMYF??E+R^mdV8QoG5n5rm?B5~BmNFYZ2-a8ARCmmyax=WiIa zi_D*t*@3Rsd|SfR)C~#CS0=V1+vc#X^v}MB4`i+3$A*pYZ$WR7qZ^GI3X5!M*)d2+ zOK=LvTGQwy7bPx=OSKoA_9nXRc-E5qtzaK1@#4ETAAyZRt4PW@oZosZn-7!kNn6|d zh;4+U->LaH26_Ke26O%&`k9s618xdA%#ls219XA?T zn3>l|=!zEi-r^j9xrNKrqUSY8=+O_V%D8+gX?woEo|GRfL3p<6CE5CE+>IpT6yKV+ z^iz(nucrNO-c0jNg||ao4=B&e)F4o&09XW-#!{#LcYb<<6_f3Av4tJhkPakgJ8EIw zMU|$vRh>siudTI!Kq*jDMdhpv4sI#YS+rdEk>6a&*f|=5@nBKS>SLBVd7lE(CXAcb zRUIV$suJB6URdb+W5yXUT1={g$VYjtfD)c|ALC$?Dp9hQ4R)`F*j6`b*YGe5I^>}! zhSEtnW} zcvvd3h~ChEgC;VBm>T1_#RJt6^@ftr8c_R~g0dwhBDKG9rS==O-oU|NnghWF=Oc5C z!x5yCpdEI6*P+;<-Mi%PM+-GI@B|mCb3g2N$1<+NxGc_14Lr+51F`4crrAS=h?eaR z7`Z&=<=42Y{Ewx3%?wSLJo8@D9egGdFmW)&kcQBjSv3ICzPbfA{n2l#XD#DPc6)t=eVqSVVXL#O%^D?`vy8Df%|oe zw{63Z2E`oujHvsCbS4{>XLTcEn;dU_$~NIt0slPWUv_H(m*N(GURbR;thdFwFJNVX z_Q)|G2kO;K<`)6rE=&sxH@1-{j{Lex4@^Mc0#<`NPSzqIN3c~DW%A_$BP9X}(sA0~ zy^+TYT)lEF#bmzlaTPQh_{ygsIqs0O2_@O=fv#p*H8XGWklAi_bovlu(^WkIa%hbz zJcJSGR_v4KvP)^kf{6=Quk@|~Q<3Axi`sGvY?gzDeas;xGRx(x8?6gPJq_P&1R*40 zK>h@rD5>=HTEGeHIVy9+iS+XzL4Ix{WsZ_`oLS-5IZU%!P z%Mga_>sZDzmSJWvo^R)QUH5&R_jBFPa~;3mpL6)marl1b{eFF3@9p*8YyYWVv@+)0 zRaB*&SIlKjV`?D?p3gqMz5eihQ6IJP%LOu{O&0DflR1&eNPix-MF>Qh`w_Od;mc z0KMwj$_2H~$cLXNt`%fD)$YU%CWAws8-sleRm5DS<9f#3k&{yw6>nHhS!{aAPX_Ot zzLU-V)9CPS02_oERfCR<%LX{6;!6*EyY@t-$+C&)DM=#R`C) zqIB)!t#)=1JCf_#*E4wvWod*CUbm~*(4zFoYtE3N?89g4yMBsW^{Ji{?CtbA&xuby zo;w!uOT1!A6SpI}_1}Zxz$})%(@Q@#d#l9vBlNBNa<`=_g9!L z3v6M>vDKEm%J`y+?(YIqk#Im|j}SSsSs6kvRrt`=5ZRi3qGH1K<3w2zW6ENhq<_sM zkG0V?UM>r7fW1+k&j!vzgYufiUHzNQ&PxHZz=_1KvfuN?FDBE5djgZa9s$4@dY!<~3) zfkKpPqnuFrQy+i$2lI}i2hKePU{S$QKz~^KVP?kn0KP`S%ayq2f`K*S<$LSOqc2Y` z)}$Cd);(h!wdpvek54$=$M<<}%=l@W(^A$AyVsMz80aU__)@;wo6q``(`LkRf}mij zQ-F;D!o+4kdbYT<)T0U(s=It*6E5kfv2T8=Uw{=s zM8bqRedfG9YTU}*K1^w+2n#FQ!rT%@;C$G6TfcC=n+&afTAQJ_$LQf0EdHqa`czp9s z_pVar9<}AJw^n-XA=_2cI zXlwMLKLffA(h5k&tMi|G7Fn^ni;ppjtamc=1YW2hYScrEQN!N9L`n1XHU4rMF_ZGq5R1}&9*|%8@T9+i!`COZE;wL* zln7|Xou1@f#s8dP{K`8Exq2lv7_6+40^eLx75C52DLH}%*dv0dwT&tRY?DvtV~;d-LjGN@N}56}=P(7&FazCZ4+J{}w=!Prbs`!wUFsYNcAlY>vX z+~f;`gF&0wr3=5^Lh zX%idBzQD*S`=X56jvcH3x+BQ;N^uAq#iGIqi4)X=y>a(-K$CP$tWGSJ zBkp^sO6A-}CVcSH3b5MuBd1S$bJ%VDmH7YBcJhE}hB=X(nhR4Js~!(&xPgwTVk@#~ z3o}JU0|JcW!mcQ6@fx4S$ot#kbEkXelySR*dT?1_ID=T>fT`{)Z!}9QR#^gutN|^> zQsWjc6vI!}^(^uDk(heyr^eO%som;XVWy&XBS8{j~uCOk?*~z_j z^X%ItvQ;!|c(kuYMP@!@PLH(st3G`2E50eU#a%97XF}={`r!7(1y>GH7Awh}z)r2} z&pXMDObhjV0Mr0!R*>R?Py`Ae@U`g2Tfcg*s^k$bMK!tyF+pSVTYW*U+uUEp#&+nx zEiIG-$}caB1%f+IRMNDtun1lS`cUo%Wp%{?v}Fsy4gd<5P9yXJ?e<>d^>zOPDWI=c z0hoaBpI=AO)~WbgWT<&DZE@vcUp0QBU&(_ci&K z@!X6eSts?co=yzz*ZicCQWW`1q$#n261sfS80*+IWbE>%aD=dg(UMN@&F{R5C(je_ zu-VZNl3G1-qz*LeS}zgZf4%}2g)B`O)l8}hshfvRQMc?4Mrxyr>~1?ZJse`nFVz4y zo>ck+8mY&&A2Q&*!u&-lNm8cc*fH8QIQ$6V<9o0)sSR9RvbX=K{nAH^wGv<@*{+$? zof|ESl&(<#$has;;Q;~fYTgp$l;H>FlL{Y*8{D+^k5}|e zuLt3aYkm@qIc-kne{UcwppBXN9H*Bfem$SgR4oQ3jfA>r6*xuakn?Vn^}oIyQ51vd z96E@ADIg56b> zb*>BWc77`3nEAY4dGV$D_}s!^-oiPW?8`fGJqZ%WZZZBJ3&u;gxmsjOeOq#tee+p&2^{I26H7sSbl6!(0v;YqpjVZ9OpjC_~Ro@LssKG=+C z-zcXT43qh2y<2!jvAbKF;nOc9t~2cr27DqlEowT$+~${(1Bd+Pc%yo~)5S{A z6e8Z7?-mM|O3J?|9)On6Zb-je6vAW8EaG;%-k-(P@M?LL-AOzke95$w=~Z-T_WIz` z%C^Y?>sGQ4D{kY&_c;-Uxv{n}V$O_}%rnid+%kBFtS{$yqI-J->H#&eh_M_q8^5up3YdAtEVbrMiC0@!HXXay(r6At^R#HTDp z){0g{{-n9WOzZsDa0Q|0)79shP+FQ>sDPI5tQeYW*Tg!l%O~)P`GDH9;GJYmK)Qm& z*%>hF4NL&AYRTOVommpZh~ib5kjV!r_c=trsCjM{<_M_^08Rbw(+9Y9Wf(sCMP6)F z`E5@{M$T>K2KLSfNvp&gjU_BGm02`%R(jf&KP-Or=}aoL(6Rt(Q3rR`7OzwRgH3l4 zBU>T;2yieUJGZD(c@cT*&B*}miSd1vpPh*{S`*##<+tU|SYuh#sR}C8f&4=!ogFZb zJww#7c}e9Motm+FdaBgbriq+VTVpM!$~6i4yc-&dnpA6E{#{Y$(Tdd)&j(L_zKhjx z9T+VrhKBVp;G>wN;@mGyT+H9Az01V`osZBeq0vC}JsQZl5~#>^wa`Ga(3pUJ*JiA^ z`QaL7bcZ9W{3Aa$nZo1v_(Nazy-F^n3stj^@9>iYd|sUgTO%K4y3wBBEr*U9PMo^? zK{<==&m92Gv{fMIQ&J4WJL&#F#(iBG`q=~g=A4VAsqU$^mwBnOkttV?05@`tdKgZ7 z_K0~AC20ihn7r~vNaLp_ z;LtCuIY$nTB50#w!AD zY0tYLl$>igezBa!S~|{;85gcsc!jg#`iL^$=hFy7SJO;>zr(VYPf7UMGBgNSOLO#! zzEo;sIoBxfWasAxL%DD0WC~xEV?nsJ^NR=aA9&kOtA|=gjTB8^J95d@<2{40pvImC zsAZq0mt7~H7P>WI?MGpWxWU?S#lA@YN3c)ECep1JB0_gx`-vfaM9O>eMZOnI7lzU8{u~x03*zCA#2H%92E+0 z=V@94kA2uq1W4|EssAvG%v4v!Bkt_2{gP=sT$FUj0c)FAjiS_dQTvPamyf<(wlDM5 zn_Ubfc-1f5PUZ}7ees%Kbh2p&HvNlgJ%ZsVfv#4eyfbAed?a95?K)u#c07MIM6CsR z$aP$v(bGG>!=Qf5fSTN&kVOa>4_^~dKax=&)Z@W@DVsj*o#uvOmBGhzl!*G!<0N#} zA5EA0*{wlA?9a8L*HIj+kVT!b`ue+cGhvX$M||p z)kur`VLn>^PFK;kDCSpmvwq{6D1QHF)I*c4g4%nn@xv^zr#o>LeoTR%`+Q-Yg;z0; z>cYA4W@~H&;j3VQiEA`c-zbCeT0LD5zdscBi+8%<4L(YLx<4~$WXP{vofIL-59k&m zQf_XkYSP{MF;}(Kftgg82ps2%R^H^99ENM_pfri5`-bCio?2eoyZcsx4o$pX*hBN^ zy%}s!xTwnPr#-90kxdy>5-=lD?~|V5V^9@%dYC$(c$+|{ZYw4-<(jk zxpSjBgvneNM@KFd-oxE;;D15dBMNDF3K@U~?DYcYJ5hYuiL%^yc!IzH9D_-Ti}qiY zxfd;o5i!OVGfsD@BQTtb1g_1C%#E9vs5qxyXL;9>NxDHt+I5)^JaXl14JuwP3LYaF zsCA#$!($FA-X;gT?&^8ws*QL|l!pBA3Zc2zj~OrT{#DC)*Q1iwftp&+yu%-!Y}ia1k1$XBl8@z7*2^6-pB%nZp-X3?)BceIzTPG-kc=W4`>>i(%k<)$ zFwgTE2;mH?)ltVwo?5wCOt9G}*iPpwHDdE|@o)Kf<%*^iR7$8$a~6$;XKN1UIbDBm z{T$0|+Q>4j`MeWB3MIm+!yfuahSyuu64i_F^LI@SJ&vlTnn+CRm#e9gFGK4Sy`wGi z4$a=$le(`jG;KmR2@S{{_Lh9~6I#}If+}TDERfzEpDyWs((00kgR?ixtg^#z^yWf|g9ZTU}O*j_n=Sexo z?7>#SVAY*e3|}Uo)mbwg84Kt^AfJf7hgRzSVPN&RCTv0Dr8Xe%m)65_}h4{mm`sAQ|PnDV=I=MlqAY2JI!%<&^xbIHPLn9+^-ji*=|QC?Q|c( zUgWYoy*O{mMofaaROP746@eQNZbCr$#c0G%CC}@R7*qA9qN@aVM{S+sI=4k=j^ulP zaL)nTtw4*n+Ks-O&V%d~rTX4t8dIUv4)}4P&OTg>g(@~ z%zJ0;q@UbAyXh)alu&{Sf}@j%eb5qke|Jg)aVil%K*5i=bBB1&Rc}|c-KevVK9Tj9 z&_HZlQr&dcn;viQb3cf~xxg%Cy(!d{6XJ=JNE<0$z1& zwI}MV9=z@w4=8i`;LHz4&qHsH>?KfTpU}JW4K^wcJIju&LY)zl@;b|Gw{NicwvoSp z-SN$zh@HBR9S8LVjPQXF$6jiiNKf- zw$sz=8}-cIv8avv;%BfobhEE44bs=)h`W)fsQc1MffIjGL&bAf>XnHsA~n$ z5uii->`XM(ULkaH%oqRF(1&K>QO)w{w~%O-s-TmgB9;q?7uLt6xK9O)&It0D&9KI1 zmSlBe2-yJjR?W9nn}Xn`~S)ptXm*VrGF{sO%p-{l8s@vn-Y2h5CMgm-)C z>N`>6pfM@G7U7L#tr>4Hd5BO`(-cY~a2*GxjF&r^7!))WSyj}}%zJ$UC$?@rD&Cwy z9HBgx-p-~8klxSU=Tdj|?+n<-P&T+&pIoL(r#Z#`^dqk{L#N>7#xSHDwEdnrY^)~xWdF{HXYeQx?Ub8ZW8&+s8pN>D+^IWQ?Z#=2Wwzc{& zaE4Tv%&+WQIXESF*Yc@oV@8+z>%Plt8_p7bBVg<8YyyRechxtaMQP(B-~NS)Hv+9Z zNS$=2=GdTQu8U6JL?24LKYqGOQXK^pxC!J-$zimwisB>@{=n9BP?LBjgWi?uE`FNu zTfgzhT2Z(;R_RTM6`@s0x{x|Xx!dZ>0O;}Vb4lZ0&rV~DQ`urnLy1%Xlj?TMXYC|; zGy1&2ilmxRF?^f2nzo9un_Vq1%r&b^L|;rl>~^hHSoC{Rn>TgR%}znTV|Bezf99yE zyr0i}GgnfzCbt1OC7N;0ma|4{+-Ikca)LZcnAoJ0D0M9=?vtnJw>w#eVofLbU+$y8 zuoR!oVn*YetzEHtJ>eDvJQ1zf2s`cU2HNE(qFE~58|d~>;F>*iR606;x2f6y5*bV) z%SDs6fvK^by@1wEHAa{uBe|T5yso6{;1I+&R(a&#=f~-ptH*qLKbb2aIz5*Ksg;F3 zBz1@6uvL)e_Wkf})>mz?VDm5WRG803@27#(sAm19#u!tdckDGa^KyPo9$q`4lq#?@ z>=2ohLTopur7FZ1#+$z<)4F!t_6R=0gQr7aR+b^bAAttHE%ZkVA%GYnw`DiMT5Uz@ zpz9_3lw+zW{!2#Zwc9hr?m^>(FeEwcW17QjQMHv=lpl7J`~<8)nnZ3SxN{={mnp-D&)xxC`^IDLuWRl9}i3P8p5tf=6U~@fg^lBU?q^Hb+Gpofj5w zbx>b_gwNjl-ghl~BGQJ(i}Ts)NFz?x=Lyzf%ujTp>FO8px2k>=HpN1>yuP5AK*?ET zi$8y~qiS!Jmr{RNYFmdY^bYnt$zi=*8{i4?s zNbA1QcTdr4a0#Gh!Cng6WXuJ6r+tq#of<&W<$9xIO2cjoYPC>6sVI0;8bC)R|L< zknZYqy&iU+y}oE*jWr?Ku!;pDS-0?R>(GMl&=5-YT%fC|0M?TR_`4k0;k^XyGU8x% zd*}b*x_?p$R+_%cG$9*HA#SyWdO1y$?}caelop3XV$9YfsMU|Oxrwnp&;iu7FE!I4 zLCWM0k^!uGw~i|6^Ul^32kun>Y|nhUf2xL{dJ^=Wcvo0k5_FgqYMymTfH!1YG^Ctu zV@t{K(%a>y?6!KtW0tm#+s&^4R+@zq;<531GHyHDYo{=>Xehs_9$B2o1Z+dH+Sa3mXjgCqHwg7I=U>v`%z`#~9bwaw(Rz(`WiEk@9-kYYDE?N=Viu{IS zO*Q%WGEy$sVm(<}8AVl)P3!A#D%7O<>K7Y#q8zX*K-FAv9aKCC$g-{9-QJ6?*h%dx zRFQjKR#WiE7Js7z=l#T>^bQauvmhwr>`BtswAD2ZI?1-OUtSIgt-BMP> zvsjtS+x^j}t(vW;(Kk1}I)Qlf5IYohNyx63@?F_``)L1|nmMo@CHiq!KZ~j#9ZE%_ zph`Q>s76sh0Ol?0W=D7Jb*O!_t1JMNgkv`B=ZW3->;dKm1|! z+)3)(obU7WslMPL8@?!7i{0ih12es0E}vrUqc_?w{-Bq}nlU%|_j$o5+?Ld_*PP_N zy0?6{p6=DZxi>Pg9GF@pe+e=y8|f^QSW*@wImtO$0^cLw*D+Np@x0#qxc_Ro2_LcD7Y)^#A%TjA+tnNSvZJ>|Ra4gMe!AzDqPai!P&JIhvF zrO`op;k1w22x)zqy6zh19ERaFb+?id70J z@0g?m_P#TiHRKQ+YT8z$Bk-b&z@aFOuSL&1eOOyOt9<;$t<2m{!}i~ihgYVn4l?{#sWGs6&#h^S7>IxS`}^5ue_PmgJ1c#eyYN4p=QlqDvxFTT?6bIsqQ|54Lsth; zlRjRYS#z?sv{@TlKwWwp6B^tJdabfWuU}-|2-Q0HIXN*=|2hfaQhUy7ON9i8&mHVU zS)I-Bs^Pkv3?)c5iG@WIE9ylv0424q4Vfajotxrdzjj z6$b|lBA(}1A5;cVg_lB9Zd78ljfNx!JE#|0KPZD9-@SZq$G+rwN_cMs9@<{|jqaYY z>cZ;1r-3~Xf$?C6BjJ(RA~s!wsUYDsIJn(o$#{dW+I3pa!n;=%W$||V^S$jWn@ei@ zzh;F&N7@I5v(>qP>DwPRA2O30t|TC^*?fgi#%9>oWdO z06m5Us9s)Q@pPS}GQMLd__jVBidp{kPIQ>Pghe~k*%({7ma%IIX5}@%#D>wssnqigz#T7gEkuR zeY1sNvQq=IC-m9T>>kTuvyNF$-Co2X9AJbavR<4oRr5D;wvK#wZ3zZr_f6s7lFHpk zPru<-{rn6w-V-%`$DTg-Lz#sMnSRKIPSa!PZjb>|Jxy*n_M7_gj>AG?K<{*UKt)^8 zQI&S>)kEw~Nzz#uO$c+V=2WJ@ceK7${NaW9^kf|lVp|eNwgaxy zXZe`X@&>St#P?F5o7DbqqRgRY?xF=sPW`Me#<<0BcMDjgms1DRkWo4u?|SY~G~Z&* z)O+Bi{5V`bNh`_CncQG!5f5D7z3H{m-SwD6FQ^(0hU1BCHwseGN^NgB!X!GmLD*MJ zD|ijihNOwhP5g+5g-%m-muhaoV-7Gr7msg{1c;$_MhdYyJ;hM_?w^5>!6jB(?E72o z62J2^tbg}}kFuxOWADVI_Sy+%R&-S#mMA#cpbw?636Kcv^@ z7;XVCbZ2y5Z+hWxnvs%sh;={0mO3x>?X`0}UbGC!J?7>h>Q3*zn$`57@SP&RGdG{A zfYYgc$-=0D%g9NKzc3+tgyLyRv4n`ap6aRKj>9f}fQHShg%0YftmT?FVdec*?gf{1 zLT-{tZbjxOukr2z)%7gq04rr8Z19&!*fe>X92(*p?BvHw0Q(t$8Jv>h+2Eit)yOMm6CTEZ7yc? zdm53_enofwN^}(A#R_{`6_Bd!dAc0($Oh_1Uu+dJ;TG8L)TXiYP(b@d(MK)s=bs2>y3yCN_6cSY=O+grouapisozVzpWwV zTo`Lbe)u)LzcP4#vyjprwl~`EB@-RIg<_Um$|aEEb za4f{{MXHm2CP%&ZVOFCq{rtH4eryRF;`ZH0OBP1H;_?;@^%rZp^uxV)G< z(`{nK;!Xa8#A}Qa!L{E@--@5@zS;y*S{jQ*Au-v-OOxDMs%Gk<(Y+LsAZ~rWa)1M^ zmQY}9!R5P}8iB|%fOO5-eoVJkD-A7uRK^C1>FQn4f!8YH!tI%H@7_*`mzD5Kl@6wH zsE@vg`CQK&T!xQhsY}O4Ptk^Pe}Ti*m5wN?9P>P}KK$5`k)|Y=Cm0Og%Mk$C%0C_d z$Wd`F^3U9^H5=Wllq$N?IiA1c$DaVx&3Q8Ru25SKj-3_r>zR3osTcosBw9t8`P5$) zB_&1!R9H4x!18=W99_6oZ4?B(iialF7aorkTgo?*+9d^kZ(}n3ppz*mDwC4O2h z0)O{}Lc5%ybLSx@pell}ye%VSo7F)g_<$no>MRZ3#GA!RWA0EXsi&ut*f}yDvU~Rr zPTW+@3Aw2}r4@QK%Bs|ssp2xx3xP0_fF*)ED>`Zr=h3^o9Ow?9tTIJ8I_<>&;ImRh0Zg6Ksd1&4ooN%z%l-=RfWErzjmsHeGY9e|An>r8iH*_D;}?n|0_TK-`)kJ zJ1(m zV4KaUJxx{lcTH>Mv@DXrvkcKX`09$cf*$$8k3{VyUWjQVGugDs^AZdx(&-#ayQCjl zE3qQ%Iq_)PfoYzOPaIil`IuN3alH(cWTTfJE+D`t-9c2tz6pY)t97Id2JXhF`fw)| z?AwWl7DV;Zs_*VCCtv0SKOqFaQ5;=fxZ~-WO`^92@)+SvpV>f+9pRE!mwPk?zGN}@ zBd>Q*-e{f8R2%!+K1$mZHBVX4jJH_}Jn-M8bJoyT?bt}I6SW>LC8rEhND98NBLrcI zZ+u;|Com|+H1h7B=O%UKl#snH{nLp*t?TcoWNj)8+-5EyD)eA4!7W>6yt4b!IIvwb zv7vapeDsCf#s9L;9=?+Z&{!D+-7KM9*Sm}@HpkD1BlEKY>Mk>$lF@jHe=#4$G;K)l zUgB$<%x%?mIs2Ryy>1^pB)D;OrK~0P_HF_C9&Bd5vF5%@E3InX?DQ_#NvQI2j(9^li{V6KuAl3|3Lc^n^A-~Ut4qk8`eJQBp)99Jno`y_fBXA7Z+;KBrtFnRo(%tRxBoUVnlQVB zX4QR<=y;paQX5oxhmBF1x<6sYW2QOGG|${909#_ITx42dZ@R9S#`O2EUy=$HLv4N| zCk*==oZQ#E!wIRq(!-{xyzNqoQhXaX&(}wk_#a$xMbh=V69m6wos)Z3 z)mCC}3O30bGPHlYjW#2o2ww7VUe!AHBNu0r?5^l$y%R86Fh<1YDxPZi97FS){rrD< zB=CTgGEJg@suCa!I$5Dp8-K%fqSiAdZAX}BSGnaP`nLC%x1Mw6Rzup{ZJ!>q zz=o{_uUry)1T$Db<<`@9EiIJ@#cl*__UmVT6b-?kDi0L^iowPI0`#BDpf4<(I$Mw$-Jv?C( zeI8peIJu}ev^d+}d~%8N)MTuwvXjHak4JsyEY8zV<1dk8>l(S%2@f5&pH}WmC-&+J zkQF-&Kn+`?1412m4LJX?nlT9Ti6D!J(jDqb^*q|8^X=HBd@6j3{`IZqQ6qlYn=S4u zZ|_G^(&Y-)TPFl}1}gktWhU%f*ZK!)>%4?X`H7eIO1VQ^)PkXp2p=Y+S%?%0_Ooar zF0fzvUd&F;EjTxXPYwY7_=J}HQfBPZnW$c%gWDpGyfPrxvy~?ga)<$2)!YaUa0okr{cA_8 z>DRyzJzca4um6=%|G{h!WOv&(SmTbQabA=}qQDfxAusvbZbxg7P;w)W3!V2XlU1?h zZxNYOV>l5>GVA^`C=m)hEDq!6?IqS$KS?0QbA5+RQE<0tjnP$7n|K*;<(rvjkqIX= zr_M@CcqT7TJrwGz#po=?mL{%6Ae zXCU$C0~J~`gjv*SQ3p+g+9~`99HbyE_OF*1@THH+r+mavOPpsL3b*X<%yFokr@tG& znBV+iMe`25T8y;U;|07UI?IBh_!0i|0Iy+n_~w2Fxkq26$`XzjHsYV3f~60krw(#O zx$fvQjYPxAYdW$xmX%FP>53M7N_y`KJ-wb0g)jcsRbK0g7+>Nt-yp9BremVfGmj^Z zO0wP$>u=#+QyY!{5EAc>WOf-!4z?>nY~t}SOVG~Xfpw7QN2lOy6E1#4-%3!Z_xL;j z_%WtHz4||lsDOh|xI)LL;_smV!0fdyXvt+DNxWWa-}}kiPWhMC-~X*FuE*0-#gbXiiOeakw4IQI)j(w> z9%Aur*k^~L430+Dkq2(*CP}qEqD_hT&1!`I%J>Mn`kAMJj^3j%@t^JEN&4X&N<1N_ zUQ6Unq7YMwSrI1$|0gk&M%Fc7s! zzh$HG*g#+x*V325qYVbB@6`M4$SzTCTiMn;ZD<5SPIJAUKQ3ST6Be$q0Z8)T^Bm{D zN0Rg#GzyB&fPh6^@hna21cLPmc6B(|Mc^Me^j~)M(mcrB1W65uY)f?7f0~53v;?rf zLoSlowr%OaLUOa_?aREgV$)}+34A>3By%l9oOI6?B=J!aALU|P6I_z^tg6~g?DgYl zRjH9EkhC@&?FJ28?LM}NpX9+x8pgFuAMTPW^n>v4zmo^DDr;kt?k}|VR`uWc#TqCF zn{l>KcZg>}oGYW8iaK$Qu}Q5>!J&xt^bAy7Zobo9cjUEYOX4oE*CAb1t!dX;RQ~6I z$+&-Tr8yUGpmWaj)AiRt{C)NApI#An3m}1-FE5Pz*Sr0ryz%E>Z_m6JY6eYsd2wDY z)`pTSYa{?=WG?+bul7I7nE!ZqL-R9`0hh+-J5Bv~6M9qQYPi-VQBAdn-#RYUJ>aF% zd3!5-)#CdwX3$;r)rPas z0~42?Z!Bst&O`Q%M9bsOpttI})t#mD6Q)JHU*roQTpQ_;6^emjSak1CG16QCOJK)M z8ZiF!SwzfymxA+W^a#USZf~HiDL2t9-ZDbE4IkIL^^8xpEV~Aw*3%0{8Jz~xnPO3i zpqd*K_1+^THMeg3bq$9%zxd5s`1Q8Vo%-8l^3M+&AR0l(+kHx23);@zi#t|&XtO#m zJLfm$cRK4sOKP6}&0G{3SW^l^<=sb1XB(V`8@}J}37SAzu$h5g;p zVSeG-A-3@)qG?icoV*E&wgT%Nrl&#v;!r47gRhC0!J)B`|5YPgNSdY4SgYZ*acG$pS0Lz zO|E@e$}w-2vL6U}F!@RWx@5@Ik5GfGnnz0qq&6_`n1Fa8c%7mf`43$)pqU}?Wwz}> zR{Y8MVTFHc0mz6Aa!41zIziow+vgnF5bl=+8_&$U3dQ=4B${JPVr) zlywOx?w&Afo71=4HU+5$bK^%!*JBk9EkJm$_4v04sEP^n_j67oui6Jf?$5-ZNK?QCC`a<67MNK0R`92~ZmgPLa!mnt8{=zza zVD9kK{kvkElBs95TYPXl8|RpNC2h8%xV1b>fL+6^j)0t)be9FguvP)<>C_(<3oUxn zOU*DvxsKg7)#cL@#Lyk{KFgH&%$YLe3;lR-MBjPR^8!Ez&>JYa)|&Q$Iy#^+T-DAe=fhtEA6EkNE!v37cv4fn&OG8I`) zsOAWS3Y@>|(X|+XsSTA9!Lu&a$CO2#fM^uK1f(UYDkdapxkQU1TJ=}{xFepeD~VB4 zl;!8kmHWg2Q_vGm&t*B|2CtEgNq5D-rzsEq$zVBtr#b0oW2OITU%q z*F!bA&Q^<}xPru&CR}MRKMO~R*qk$$qznqTNmZ*+Z@yTtc?je8bW2y-T_q%+u;Y_! zFH;S~;@fY>6ZzAkr+n&YUknvw=hlU~43z-^wDgiul==RISGPGc2xpe?7brB}{0*y2 z54Qe>kNZ1jO)N- zCd|UM^>v-4Itum+S4fv`!Dh6e*H!jk_EK;|9TOB;7wHmAdQVU&wvEpw{taz5*dRgH z1ruu;dFRjcK`9-8lV&s~p8q4F{pZ#4Z(L-iQmE9+&CLWEqFQsKv2Kj&l<9SaMf2x* z=U3oXzU!|oIO@cEE^V$hLLPTKvOXsmrX4E4Nn~lIU+iU6%>))F|Mz6-@_&x5k z6qn<~ho98-py372Z7qgDc1WKg@ymm-E%{`h6pjdW@G(Xq025RrD z6~0gB+r&v%0G#mBo*C`5{AM$s+dp5JAP|;htK#j|3{LH_!+*9s<<^R$EI2EhUl=fXB3qR zawd!(+0Bd%xH-3#8Xv|ODd36fSao;BCpK!;_0O`@s!G2GvX+=pT8vp+iUz-G z0%i2Tq6t}n8>L5P@B07D6I)x)d&!*Ma zipypF@4}ZNI$Odi0!d25>pW?KrHa7XLC%M^C%^1_$Fuk@#j^#W`+9XHmpcF|W{@O% zqXVptTV}({Y(fcD_Ua<{nuxu5Sph}vlZYs3XR&GQWYFH>z*}MQEB}bV1_c3pym_@< z^gqYP!Gz}57sR3xc;!^!*s_W-gcISuBSB~3qsJfTgU{pWx8+~#0)2!*(d7d-1J*>h33CM2r{w&J`8nM*OqvM8bD z-$B4vY6a#s8M^e0ELeeMQsJgwd0F3tlt|71tr-s+<#xW0*vDHx)h@g*VEavfz6GtN z4ur|hDRC1Pj0+yBq#2#-YuHWiLSqN$+}G*2fB{9hM3oZFG<-XnXbb6kZZ`1)c=I%k z|1?7R-+e*ytLED8l(d4d$HQfQ)Z@1&3{k!Zx5(n7tiiK+g3G1dNi9){B7S*MuJOf7 zt=u~BUWI_`6Nop509vhPYb}4vV^Q+{ktU?BTf*qu#*NSQo-ApnjB*z`B)&oU@8med zCvdMd73arsvG?BToWIwzG{F--91$kzE05<^Rq8Ty`E;)+pfXpuPf6A#9QiVP`6!^D z2By%l3?v*c8=GeF;Z}m?2#+asfjbiC9iYKw4a{^Vbk2iOl7V_X_1|MmMvJkXWYLMvpX+C(nxG8Hm<+Z~=* zMqRjKH2~uq>IYF1JjYUa^(8&KDS1wF=>pQsp>rw1O(4ifJI^j;a;#rQ9z-2=9DN^B z)%;I z>dWT*1l}w#e)RGBE!j?ucXyYcZyPSN(dl?Snfdfkj$WH!$UR7So7QUb(}2mGDVR_o z;QIx{tIrG}0?o+LS>(K@D_qKr69ui)*? zUXUTsf{VaRRMi>z0I;}6GMjE1-6wMIOE28(Y(k8Es9Bplz-dG)oVosg0}HqO#87EK z&n`e0rp}!LYi=+;yG+BIe!feuhxpB=VjL2Yl*1zJWfb!mo){q6cMypEX%A!hIbPN^ z+|tpwk4nymmE}2w;OwDA879G$I>m!V%8Cwbmz*Jw>N+eXbm0VH3t<5BxdM5i)l-<6$%l1tu{?MpYm*52B03*mggNS?+zsj0~}Vm9!rG4yV|^*8VTatbaonJj~cqkRN9E zv6pGcm+T z_^eG|EgX|VS)Oe&LBgu!nuuJh-6~e1kamlnNl~S3(=5eQ`B zOJjN)oNN0l1QOmh8h29pug-L$B6sf6?JFIKsClyz5V+%}li3JS8I38EjrHs?dpkw@ z=`c~pwkb%w3@l|?kS7K=l>Vi}1IW|CI+`+xC_ z@4BzD7vdt`#H0+Fv&d}(0TCwB%7R77ws?FW3dN_Os=oS_Kp#VqDVk?|`xdO(_QZR7 zzj`NvbRSU^ppz+Ti)wusZlT0<)=a(w!97();4bU{fdb9IEb6YiG58#LP@rw`^wP@x zryD050=lw+Ln_1f!+`5%G{p56yo95oq&wEMnfp&H_&*6IB~R_t+*oKU${61GhUNG+ zQ`;<*T_8j-VC~YUe6ArP;;&fP$m?Z%`F^8{XL+`URmx_`jZLK2& zGh}zJHN_vdOBaw1JedCfkoMj2Z0~R1rIgyL_DE4wQ4O_;qG*qzt=6b5EmeEg3bj{A zRcnu;sM^%tdv9WIVuTVBBi8eE&iUQX{kxxYKd)!}BM2|@$>&<{>wUeivUR;!t1Lch z8}%}mv4R<=9w9qvuei4=fBAir|0kp&PX4mCj7%P@{F+8YdkKQxaNbk@)g#^? zzFST#g^?*F{rG6tJ(I(xB9#l1MDoNXkD@3ou+MxVi2Xc7Zh6j@()kRMvleR5YSI#$ zghl5X7Fz*k0qXnzG>ebaC2#l5L-hW{q0odr0B%W16)N3cMX0>_Y%teYUcg-i=xGh-ju{mC%0CUVVqFW%S~8&cJ21^0ZZYUDVWQK~_ih_&Jc zVcK<5E4?p-?7{MPM94W2;asUuMq752ZL|8}6&iAd>%RFNx-!!HgmnVf6Y1Cq6l^_A}XD%e2A<($_OD-)e>pJ%63Np)Jn-i!RMx<48l>n|+6 z{~BaOA zX%NgWBLIdlMxm6}&U>|fVu+h{eY|o8ytK+lb^weU!D0ls!QHX3%}7nc*piGnzW#v?MEpthY%UK6#q`6Z@Ltg`te6l=l#+xfY|9_?m}(tQd>aqgtJ zd>aaB$Eoq6vBMRCHEc-hPjB{>2dOw5Pa&>&QEe;ey}px~cG_R`N&3B0r9Y+>0sm3PION&H5y>5@y3pFl0+n}GdZ!g{mJZT=T_DI4`zn~U<;Pd z!ZiQSZNY+&aG%e7`$rkuk85_V+AZLw_l|-M*XmB`Lv$Qpd8CI12%4>A(gahVV<+HZ z#yJTQ9N?5_MeTRaYNapEsVaUos!i^H@C8i1z_vS_%#Yd4H8jbs{>dUb#HD<@on}hA*lMp zFm-l0iRkL0WFeXbvDacPPT!h#(w1~<^Ui4Fx{XLjME<3*vErwmJ=w8WcM z-y~8via~u0$EBLJorA?StSY7u2I5ZJPgT-ahJxf9xhG&WaWV`K&3YBs@b%@GOj~b1 zO%Cg$T!6hX(Fau@S7rl1{$gYYXan}^$vGEQT1tT6xPq*!8I5NQF{|hDt)>U`T?FwBw&3bJ!C|? zrTr~uP*5CoBzgTA8%Rn5DEV>XOCFKb^>vZ>UcJI&JU-LbV=2!c1T~{=|2?jY3faGe z;MIQx3_6gKzm2*#lXTWRD=QA;V=OcReZ-k5j-Tj<8zoAk9(=U0Y2DCi0avbLl-2=) zqL;}=v3_cCS?4?=|J9}gd;5_dIS556omhbV( zuKAvDnI~7g?Rl{HAHZYL9ioHZv(u--b=YC$wl=B1Q3n8^TyZh~?}!EqTaP{-p5^Kk zasXT5r`E=)Ty+5KiRd$_y5bElMi((_506K`d(&82D$W_)@?)&vRPo@m%WTlVYp8 zI7twIJUp@BgmEyEeIuN^`aL;?_gTMZ4F+YFKQ#o72@R$kqADUad2Vbf_z@n#*N^ho zq=2HW_&C@xdGlo^IwZwpVDAU4$JM+rJpt%){s5ct*5)o001=S@mmjvArex6YZ|4MS zX#qjh-Ms!)VhfV_dYRVWsa#?s`tw`ik8Tx;h7$??{zpsd=OS{OZvdLfrY8s6!av{6 z8*CRGueNaeO87PE`RX^bos%cs_+BB(r{YcS{RfEKJ!}HPp+SLpU}dSA9j6BJ7`KqE z8sskst-?%&sPb846&50-VXHeu5a+3QQCH!qZO?f}tMvZk&mI6p`3k}PUe$pmS`Q94 z@jJ()H4BH|poatx?IKwsg*kk=g2gx$a9fZ)(v)-L2g*@X!F4ffr}5RR=oGkUs^`O< z^RB=-CJ&_VEFLd89wb~fD2gl$Qb$AvnM~_$mjKyz(rvIpj1^E~95jL4h=|-F$4Yfc`1qU(_E%!bIO9RvZ!&VJ4SF_H= zlnJGQi<}KNc^GVo#>|kq7*5}@J}WAINztm`^T7fuVYh{v9>_m^5U~S0E}A@Vx|K~% z_pphRB(b>QVa~|B*TDoq_v=kHv3_NZ)7>=iwIXjJG4_-DynN00-BO6ORXn*dNN_Vl z)kA)-QUiT>;2ix-qrB-D1*~%UG-w%#+SuL2YDU|WRelH-{Q~vXk^jrgCa7>?4 za>O-X;H3IViS`1InKAd@{6)=iV(_i)Pb#Ih5&y?7yvcfq-b}Z>W*Ka3A^jGOvd4{^ zGjx@=>k6`UO*P{1yh%cg+i@4U?(Zn_(Kn~WYH{$H^gKL-lhRVJ=iX&c?nGhV@Eqk zIL%9Pg1?oeP5A@kYZ9xif+nGVWu*Vkuk5`Bm=XjaVDbFrZ5UJlQzBo!Ve^kc+KGT* z?ywM`@l;}m)i^KV-EUL3V(W_}> zy=Q3<>k8}R&Q^&;xbBZYl~%@RrV*aT*08hsds1Jz@JpGqNuy2WZ#aj#!V-Bj8#qZ- zYy(oNsINdjDp7ZZ%#kEd->BwCN&pKQ&x!?1)-EP04owh6hwpM^WpIS65?o6zwu zel8+9yW9;9*!Bbx8L>M136dpgfZRGh#fI{sQJWPS<1pYeujA)4@8gcXclnBe!Ak(& zCU{}+=N(ZnF(+Li-;Y;_fAp6tDY`=Fo~(D}%a6aF{x67k5;y5?z0cUsS1oOf#;561 z!+k(md(D{WURW)Q8xKwPLVTlIT8Bz>B9|Sp@s>DhrkrLjEZf+$WnLPN$=F%W(^NMr z)(6RNt$bzGYFXZki`6~Lg9=GW?AeUgP&=CGhxoLztc)+H7C;(sdVEsrWk54I`22fd zGoJvVX+a=EcaYbW88#PY?$)U*79zn_#QsbjM_hFXch#7oHiCr}6*zOB%6>hh$`kzI z;+qt5+-sDi=!sJ&9L3sACO)? zU)q-vPmS7<#j2WuQZyYXl@6vF9H+GV&<#Z2shG7H$9t}+d`KH(vZu2U zst6*dC|IATmC91i2G}~f->_!xO4qG_p?;hIB0 zlnFMvEPx?mkI;2Y|6tH!J~9p=+oL!F{FW{`dg?pr8rg%bXak+y3D2vC)AA z6|C=hmiB;bG_II6ypLs_Sy=C}G`XpNG&NDx3_`PF2A3~B(odZ`(*wzX3%*vbRMdk3;BkG37Ao3M z*4B()okA9u<83Zs(IBPZ)7j>me?!A`mnRfD82b0rjCsW635lh5G5!^$xpcB@l_Q1(foqK*AQ6 z*ddAjVrjYL7sCMax*2W;1sE6DsTroIsj^A*0E%rHF-zjhQOr<>!IBoQZ{({DuniS7 zU?$jDb0fu`ph|ef+flqRQf79LP{U2kbJd-z@9%BFF?=Mhk4*qX#3mQu9DG;_vH!yR z_s!tD!~p1;>7akvOE1%<$Av!p%m2_2MJfRvx1%ZQ$v>Kt6WPCc+*yO|lw(T88@@`4 z)P=-Up=?a;KwkytKlnYFBZ@7PlD+(iybBg)i>3?aNGre;^p!0r!Ts1%dKLL-aqfAV zNmX6Mu|aI49s#Ft!$jyQ`*=})^aO;&qfIvNs)J9)B$rRZn<&$cs+wmEC^IH*>)t-o zkzgil=XXPphj0K&SH6=os*5E3umW;S5A9W!Lnr!Ip`D&;Qs8cy89-U>7qpGxl9Pv9&+Mot?^Rel~$HD|aP%9JLqH zJ3W2TTmwYxepJS1w|OnI`Py|+4~_-l`4$C%jtdA5ho|$Yes67$z(+5}U!NtFy`Faw z&8|;k@vsg#Us2o@D+I6i@eBmx+h5E}dYypxmBXo9)34TCVN|%s*yG1+m7$t_-$K;( z#VstfAc6_EUQ5cP-{E$+Ji~UdvN@h<^fAYuMp%K&XFt6Z0wqdBk0HEPvf`)9mY{}? z-zqr7_bs8ns|Vd_tqU;pHLg3}%R?Cf|4dtI%)307QbiH>zt4s9@?2={4*eqxFDU_> zix1Fkm@N|s(Ic&;t>oQ%wou$Cpdjo^R1oT9bHsi0ZU5KZ_V%vOs2VQSHZQ=x3W9e{ z@_^w4YH2Bvg4oyVAxhbGg-sJ~?<-XR9fwdb%HEDCv?At2v=E2k{?H)qg;nx-p_r~m zN`CF>UX_XXs^Ui3M#qxnk(Gspf#$>JER&tJ^`Q+!MAeeui zuTs(#>CR#c7f>-2$-BHs`ggeIMm#{NN zIY4|kD{{=Vqf;3O%wDpn zzb{Y!gV*9O8xDDBWbud#_Rj`QeHkB9<8XdchMK)gXh{9FFM@;(0YQ;L$yK$?r=!pj zqZaYsF7_|5eC@LE)ssJnHz+;^o`K4mYg%2l~;J5?9+P zFc%GCgLm20ilg9NJRu(osbm~rvaVJmHJV;O1_Bp22KBDWpZ4u|>?(vbG1f@MC-%6Z zNULaILt3fjLVV`*WEQ?#6UESPoPac!RlfS4G^-PK-x1|rza;lHogEe`wh0~0E!i@J z5kotc-^`>Yv0##+_x~P0(HVq_FwJV1mq`3G&4ly2&Y8U zGn}f%J}YQAJr@F|am&z1Dt&P~W(_e*h;bYu#b{6TuSlXn2?Q1?u}WU6e>`x}%bXQB z@HSu&Q5$GM6_6Pp90%TVI=;QmBL-GkSzZ{3;{bC|bvM2D)<*)=GA6HH3-9GV%~~<0 zWzG2xQE`N;W6K2qrs!rMR0j-LFmbagz)^sG;_NQ z2>23|gZ&seSq=tLJ%pH*+YA%P2>@@iQw>Bt`WTNT!ogQYds-KbdP_o5IKALiUGrYE!16N9V@s?2NE9&;rn`8T?*hKd0( zsWC@s;hfhT!*&Kta9SSi#Wu(`@b{vm%|Qnd(lYpwSI0X1TmkyBJf^m%`!HQ2G=9` zKw`aWNma~NN&wOER*X5!Nv{JxYAS~^w}rI>EbL@-dr%>!AQXS}T+0D2zg%B04r81x z{T59xp`PNsEZ9$Z7+%indOFKwg1dEWvS7yn#k8bWiCIZT9x8B3EOa{;rvN1P{56kT zN>wCi6D91dS@4G8}^6u6>mj%Zp zx4jQtscpmA0oPktX39}G6_I{ebnZ_pVWK3jw(rG1zCC{Y`3^frpDYWsC06gG$=OK7 zq4tf#Ywal8sWTEa{X$9Zi{suL(5cf|nQ_>`^q2VtkNzJPA+i@YsRXWd>MSbQC9HsY9oc-hU1{< zlZ0|913K(>Zp*QQi#pcA>|VzaYq-X6jH^fMj2E#ee%Nu;DjJ~#@!CC{)@UDnSae9q z?#Y$y&`awC@M7x=CULqTV;3xvs~~kbm=ZjGIrDTIqUYcM)6`ISX2*`TW-*ya^1ftr zh(n1HQcz$p%6%t1rFLSFyO&-8n0Aojl~_2CD$^Sv;gGih_;1Ko9UrezH9QwXlPW7z z_~jPdP}qs3-s&gN*&RrcV3*>$nJGmn@}zgF(qY*zccC>85VgF%&7eRoowVEyJCS^4 z&x9;A_L+J!!zpu@|$8P zAG5W5=Nx&TyLv6Rk0h9;0;ABv4L&{l$7{aSl}BG@kb@Hau|^*Jnydf8c^6d%-YwBU z(XM|lJpRs^lAd1{s;k{!Tl_h&-*)l?w||y5un^JKvwa_{@QJYFvJ8+?M6mlleKk)Z z-h?PV-_zRVyvFJP0EA}uc#&n-ycn+Qx0_{fPUWeokDJ0!N1_suDNG(61-XYCXtWOJ zGVD`gZTsu!s^i(z{d(aFOajnweC%4XoC07Qio8#ta^Ag!gFT%^<3aVHw&i+P4HPQu$N=;`kSPz zYxQ}7x@Palw;SmD5VwjbXcj&+weNHS;zm5Pb6Hx*6d8ocGV&)`$>#?qn&C6!LmG)j+TV{(gIh6x3=V zoC9+ZI<=Lv!(}Z{=a?K?}gc!yY{uBwa+?h?q8O9zcA2Jv? zFFd;9{_e~#N&hMKWd>0r-6FHGsW?k3&@@%+BElIqGLqC3eDQNc4b;88Wuvbaing^&A_w z{?e0~{85%Fpv}9j1`eSd2Xq)8B4n{?)a)Fm3nT~_v)95^(7RT$_RAzD0t}Xzv2WRJ zI3K@Y;RX98VJYW#DO*r|GqjGkX;L8gAw>CgOe-e>u$|Q`_XbW(?mug@2zl z+y4p?c8WN9c3+}-Eaaohuar&q61!|Yg-;25`Vk!Pp{YNlyvroD8)`DNN;ZkJy${{N zAN$8nXr_%GP9a!g-E(kVV{5*r@;B0g>KW8bRty^{~(kc&}c_A>dK3mz$7 zu@@Riuln^?F!ST&t4l8bs%R}p2rV|zy_3F1+W&KS7y#4$)xurqRRJ(%FC+b00zkcs zl)#(4f=j-+*!?-5av4j@$yVpg$t zNL9XuAjtrx{fP`G7&1$B{P3t0bh>Rd0hE+8F0|nwIb4^7-n{HY9v}kHDx?Rvn&x!F zfW%vT(6uQ;S*MP(EFMK##CnJBE>XDDQWCiFi8)tH5c`G`*mV~B0GP6KfMFkO8wsLH z>md`&+(%eXkysoC7`AQS44wspj}oZOkY9natp4{SyY4{?u-f>wR+YiEbOVt=oJw5!_eI8`vp zp=S6f!ufaU)4!HV-Y;)gS#`q@y`kr zNWd+I(Y-m7rX~Masq5C0I=ALAGLXsq#4HvBq_dP4UOoPUaHApNQ&HQvuK1RBekOYX z+3~xH(=cG~&`X~AAYHHBj)8<|=#u41tQu6^qXX3(Tx=yO@4dd-VUoRADC~kyf`_Ww zowG!?P2K7A74Dl6W7|O#A2ThNzA;rO{RBZIZV=D0S@d(AfZze zV{kUQRhP^bMqMNgdgyyOvc5jPrefjU-j6vXG_}45sFmT85_?i4(EuyY3u*h-t!J*z zPS!a@Ye6Fwd;3;>qx)WTYVCsAkr|01K|qeMHzvFT11sf`#*G|z z$Qp8dA%C=n@7b9j_c@n|PVqT9{LU9so?Xd&Dyda}KlT$Y8&u1>uhJMF+8Dnl?PQ)F{pz1Vj~dzqm^>RiRG)cIjE&M)UKIb@_EFG_ zj#%dmVdkCfV$SxF|Ct;dhF=(jQZlG`8!_-G3m(y(tFMWLHF&J zB!*}BQo$aMLwI8|f=Of-2!v2j(1|X$IJj!_XKs7N+R3Fb@uHeB{>A>Hwog(C55e_4 zM!skKm%lcHydO?idNdpsT@R?UnBkGak9vm*9FZOJ=NR$85Zsq+S!FHsN!`P4vsAJQ z)!Pz;QQ>rrpQyce{h@FvdMlt>QKydiJm2U)je7)0>H)PRm-#mTjrH@ZxV8^}GCQh|Br8 ze(;){hnft}vyz{Mu1W61ba1-r-?`^uUz5sR>|lFb5nG|vlc@2&U+#=x>p2n7q~J1W zUn(m{zUpEWl*V+5=IX{tTi+0rf zqWoF5OqNHod*h-^5Xc9aF_q8mzTBXDJ>IG~q)q-3QYd;r)c<8XJ~JQk{2v?2evP33 z#3ny~6?uq1%cofE>-7;BPiLM!x-$zl7U_0xibBkWwvhmQISBqm$rqlZrC`BP{dvS* zGP-9*8hfM{EoH!TEI*Zl08w(1K(|7i#-%oLHJu7TN9ucs!6*cE-E4!qVX(WW+%iu% z>uX0pvIoKB1W()VeKzu=m19*7HWpra-Vx;a3Era7qG1;SFly@>0bKEkdcPsvc}UrY zWh)D!@VnrWWkG(>@|lb)HS$}wcdBM0E>BYsx^<*Rm?4pZpODb5N!Rf4;I62bP8JaY zqtmEi?_}h<%l1}9E5u~&7anpOV%|RY5gFwM9Y2ms?K=x%wPnInvtEjmRz$zOWnCs* z+!G#MElEsPb&f}OJi7N-kEYSX_lk;P0Nu}9cl!L|#N2b0tx_n!x%1@cmD?nNBQCNw z;e0EX0WspExI0=Y#4Il&h3?m$ay)64aU|((lBs`QrxQViG7M;H_uh<5mYA1i%Ucsm z8ST*AE{dAU)sc&6d1MwjYCnGt+YV^FI4RW+YEkZ%*5-S|UZC|$m%GIA6)j!&*~B8W zCE=BmOZr^5>3&opg(hraXwj5;!X?V2u+|ZM z@e?DJS+F3Em25f%TJUPVn%%8007+dtqxUTK`$ky6|>(4%$j^M|%E?9?stoBq% z;K{-++o6AJkesM2Jatd5+M#d%yKV4aubv?NWtx8ces*J#_$%~78K4GWlkuI)qyFiN zm0Ug7ud$-*PDeuc9+$;(>piU^T1}4S?LIX&sK=2241$iWZX4l-<+*G}>>P^VUpU`H zGu3#S!0XqxK2gh*d2Fn;4)QL?*YKg^{F6dF*0{I1d=A3(-mFg~v)O)`>#Mx(?AM|T z>L71JYyDm(33m`)Ss_sMpc!%p$4z@(>eR%A`=Vox9wFX+m{|+355%6FTujPPUjbl> zvmIuSujwIJGeK}D4=}X4HBkHR##ddV6k@T1xf}GwJU;YlTdhV{#KhsD!Yt80Xgwpq zF+|^g-nn~=f`Ve-xB=Gx!D8U;$9PkwdqpuRHPd%Jeb#22%u!x>$?clUox%s39ojB` zpfW1ItlzEQylZ-kvIMS|p(X@nn7)SOvECrzC;d!7l!vfMEX?ea<1vpq3+sIzQu0SJ z4``Z;%d-4OSXfvb_%781$uzF`t?6A$hM#~GS5T8biNtlVTK%x@D63lUT_d&P`K5yo z4JWges}une$RAtK91dn`N!7e6@FevMW1|m5+R8+ay3-A!TJxyoPX~WH;H6X^kIA}z z>H9;oEli5ubn{ov;^tvZF!3uD`x3aeeaXZU4ZnmL!;4o{o!(aj$n)WGW7S`2f597- zYu=te`q@9)ch7U>YgwnvUPri12vc{&!?Eu2Z*%26Ges@m%9L`&4@#0do}ag-b)r<` zk2zh%Jx}2J+;N`l9w0ejx8i-+SO`T6p8gm~1;^|1lMxc62`P<7B(T$|q-=va+ksrAi{+9=J|0@lL zeEQ59;)PDzgXE9Ts|y;6ay3jgNo$$s(w_t~0@9O8iPfZ9qnVl@JBOFA#Ud?}Zg{qR zi~R8vx9fjDi`#XA#DmS==4Gs=n`oFOsQi5oV(!6E4AtA8*+)pjxYW%F&h^gh)6Nes z-))ifCn!GRCA=NVpsw%2n;%E0@bTIEr!M#I93%Zgo6r^nW@CO-&^?8QO-rxSTkG#3 zKSv5D;QSESFM6$j`{=M{wxQ=qc@^#QXA@5E2m?!r6OB}K9QXr$zoi|nZ zgNg=rQDsYgh)r~e(4<{w2oJ5^6Ps>l@<%qf@te%02?=qpY8gu2(l?Cy1&jfDOmVm% z8;-AH6fYR{+5MisefzfhRCi}IN9&3zqpFFz(zmJ*Jv!c}ciz-2(GoOu9ch&-r*U$0 zsUZiWTdMD(`mfXRsZ;4h8cXyR=24N`u(rPE)={>Nji`9{RnB8#kH#|IqO+O!F!240 zt-*O-&)%17@#Wpt6gjUyO*#y`Wo>cf2K^GqC2c8x&-|oRD4)9I<-w08zvFn#p1H3s z`g*o3&TT_pNn1L^GW#|cnQ!jNf{n)U!IZ2FJKHkbzqBORVjJ$XHY^6QHfw2~@z`HL z(7mN(nBZg|qtOeaQTYzM(1ByC@Y9<6O8U`#T+v=I0sAwKhHJmK$Z}YH3X*k<+{K>8 z-G>yN*`-2Y&DU71nXVPecb4Nu5l<#vD)Z2Gc)kQJIrV>O0i*`$m0G-BC>bm_oF1&v z*>S6mWssNA6bFVR&(BWBcTOcF&Sx}9sMu~6hG*gLd}Tx#!*H*d4)o(ZF6|0)U&ArH_N}dG6GG z$eRbg@}=mw2VDK4P0nX`2jX8*OQjb7gB<`r@eEJ8>*-Vfbbw}x`f_f!seFE|hFMgnDBm%*cqCtb&?8aK(VG*KxNB%Tdk~@xi

    2P|| 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%0DL-MOW08|49or6N z%8JmR#A;psD1LPmoCV?`oHUzl&jaFkmd1F##+$X{Iyl+6tG~Ov;dJL<))dZcR%b%q zDf$DU0w7uokR8+-dvQ|d^zBM#DA<&kr{x;4AfENpr;6d1;EW*}m~|kTw>`v6@Ag;) z@)X0AQGrbZsD% z+7)f*Ync0r)XJZc8xfPI;+q*>Mzc=AR5r%p(F7`jEKQfczahi?zL2o?oyd4sxyICn zWBi)bP{H#0eGbdFT(Ii4vv=&CY*}!qE{!CRn~{WmXnKN&718^^{|}wrLdVIpK2F`3 zj2jk%@jC6q*YldAfpzVfi(K`w^XMZkSl806fQUya)6L-@B+nJh^W2=yy!m+xqU{M8 zOE}wy$WDMRB4+&$UF655dDa~+y)DqtMphlg^?85k_U5c&!QorrotMS%gxIuHuOt?O z1r`V*yaZ?pMg3TGP}44hjbAyH~J4w4hEEd zym)?=nI4QclowcZ8F4JOa`e3keoBSHmfGF(BKiN$;jL)A!=jroYTlDx;k}KeI@(+A zQWzRYDseD;e28m`?ug+bCZ5JmMH#ZQBNI%=;2}ps^%KG^4RVz~DJ~P>(+u&)1}?8t zzbNF1V)ngp<2lV?((kf-jU+3G>b11-XTSLpZB&`fDLP&d{{=bGVBPf7e5dB8v{cx( zc+DG4YEo;O_?pMUt|1D?b%P4sR&`Yp;U>PW=WW`a_RUstYt%JzqK$-s~kai2+dI*dF~9l@&vDo7S<3?`RK1u29r)Y1`nz}-9+c?a%4 z?&ey*Ji5`6PByP+l2MP}zb~E~`DmGn&P zsy;AD(!N@Hagk5aj%LzS%TbOu4)TCcg{NY9RPk3 z0IF@z^A*g2WGPNPI%$LF)%5nZ`ef23+Rx$1%>kCXqDO zKPqi7HHIBz+AbJ2+kJ^tGVNxo(l$3E24+aHgfm}8BzFnU# z03bN1c&6lbez%PG-9#?UK)dUl$!;CBQ=5X&trFGkxf7?P;?tpNU47s819~${AhzOu z$FhcQ>0)-%>0E#qZ9Z7_^rz{9BLI6FA{lPKs^zY^cTOj!!7_~#?MLb>Y}B?U3r($l z6xDh#tHylxb*r3AhwmELU8{(kXwpBbu^OYbL(FZgOzFVD@C;gLj{Z#92AIE!Trv<) zx^w0L;?ou5h5U*<`~8$vmE$CKp21h(IAzx+Vl*sDJIk+v=`M$TD;e*9hW=a?T$Qog z0LjU;e7D6)!s4Ir?XGsFLUaay^{Wr0`o$=Z3PQ{mfbee`x)mp#;;%@X+ zMqFA}ep#RfSj(m7(^Xx1cP+Bxqk78-F9(A~;xv0P8kxjcVBXD-=R!987lBGK#)GS$ zOMunXXs%53Z6&W#jcF8B)6Lq*Pfx5~1+);2)pAwtZW`ZE0p?k?89(*~;`Y`yH2ZFp zY2%fCt#+%o8tv@&oE&x|OhgTl=*{-hd}qNhjZarkzI!^Kc*Lagky&~&Z4{nL%LHng z%BR40G*`*MTh(TAmyDjPn!bwDjf>YvILw- zs5jZQ+;Whc{+~+C^k7JS&_ua$L1Uh(sc{iuSBxl~SY6Av@cz9R#?@E#vU%3$TYZA@ z0P%WGp!pzv+cTYz5FJ`G_Fsi>+Wnuf2n%TTp_v6kI!gjEB9nRHVzUl>WYrgBay|H9 zarKo@i9|Bt`P-QE1b$?elrG_O;M&<+g1IEc-&D?yTl3BOG<*p>@sTf<`nj-)OS9~l zcqLiAJTiNj9!?R|BDia)`I5-5f3S5-lSvZ~FuM8KCDc7PZ50jUM=cA6mO3{BnWx?B?BNSDZrKoE+tePw2M{cSh+<6X z8bOw;H{~ERcW&cwL~mIFMi30QJZm^ZF!&OLGGyK~;q_SUV`@KE$?x$j#Yr^7EY^W} z@Z#4AzW+@L2!TOT3C)9|zbY<_Zm|sEkbS*P(I*!DNWEJ5hb{2ut*0mNXGGoy-&|jG z*%l_?>GLRJ>8~h2U2dV|H~wfiVI4{*YJkQIFcW^G+zM1?%8KduCzgY>&XX(!>G&#Q z^7P}c{OUab0!g<87`%H∋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

    hPfp(^08qYhvP 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 z

    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

    *I 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 AB~qs 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 bJRUo9p1s$VHuUtUs@N zZt-kCxcFVK;=nC0GYnUq>2K7U&Gg$_A@|t7Q3<-40zqx}RoSEe!+)zVNc>s^%APJi zYXLUd!PP~#DlfQMI}qBhmiAX<|D=I$k8H-)>>MvWMH^s$nqfGw5RLF5 zkdNC*9V~kipwn@IWXN??ml>OjQa1lSTXp&+Z*6;Qaqx9?ZK{>5M1;r~F4->iPtVz9`8wz*Em zYy|=xW_?D~Py)>TkeGYL_#XJrRlYu+p97Km{C^B~%UcpRi>izPEV6rkkXPZk^m?ZP zV=;{Vg2wY&6v8V_F}K3Hqy=BUV!5nlnBHEmU2)DOk zfL>U?!i2RW7RY4wk<3SLWf!!LpRvDn|4$2ao94LMD&<72=tmSX`0D*-hKP<6fq%n1c2;_8S< z(#~xlGMK9Fw z6sAJ@j9euVz~0-*8=#uigtZCP2D*{m)o{0RB-|IV1LP$JCV;^CSNA?~$<$=$yYA-V zmo>Umv>!O3^@vA+6b$e{I{h=2?nP&)1qglF69W0Z=r*3qX z&U_3Rc#h`HuTWVzsdZNe@acgDM;;+OA_boZ!r$P7+C&h?obK2AN z0$Fe+fJ2P0vowCXt`fw{kR%)GWZWwXPwsp`LCL_zIB#JrQ?bk(m_W%27gypSyMQS6 z3G2&P-1!7Hzwu@w777H3DXh7Z4b~!(ckKJH)|)H=2JEAHRoQZcB7(b^z= zEX0m@jQ8pE=eW-Sf&&USb_xAe0-2TvLVrsB zN3Pix7o*15SmMdi*Nk%tLIdE4`o7W#L&O`nzZ-)HV3yPQS2W(RpzSl3fe2^bHRIft zlgzVj#QODtSXto^w%l=NfyHZ*=I;Y-=sfLjF{Lu`*tyrSo~C8ug2?z~ZVwKyYN{Z= zYR`a8INHSX@eb5+bCz)dxUQyGZXog2q8dGiloa4h#qL8!sw~ovJ@2g&B{}m}ZqRRi zP?IlSig&Zjr(GP_(#0<=zTcgUHnxdy9Fi@SQ0-G@6jzA}Tyxt0F^G;jLsGqgQbu820b)u>`Y5 zQZ&W9dHLM9oHF?f>!lv*GBahd8q3i0WK%{xwVLdLNM?_O4+x3PB|rK>7O^xH4h!Gv z{wdG(t)0cMrd50TDSN>R;ubl5QU^RSu77&s(S~D&y9=2pi zC{9NB*}Kl8Yg*{I8i8`{l%UXwqmJzs=)-+G><_Sb7EZX_$LHIhyaB7qM$@Frzko3>P~ZbKve}pbW$GTsfX^X{h%g zz85L%IE+}rW>#2Nyx%DOY;u^c$OrT&kJB^SP97-Ej(4s^1WMG(`T6?aK}$Tjip4n0 zZ`Sp9r2EmS(T=@^!;(C3!FdP6)qAYMlvO)maoniE?wHn`*5)xB$kCeqIf35qYn@N? zw0w|4rlgx#yYDrr_VuWSlP7AGB;7E_XBu#Su{y0yyjRGCA0wrZYEDlQYN+f#<5u(L(%HH$C`#t%H zg2CzU+QXmDe!e+sZ5X{q2QQ`VCUyimh{+Bx~n`8${$+$IkOKfuVyA zlmqca@Chn&7D81^b3FyM7$3wRX=#R{NdNJY?V@<9)3vSQ9h6CrInw5ovoe^h`2Zkc zftEMKfu$~+j$3=;W|GvtM_=pD6+h9!cN+MpO~uCgL0D10cf7#lDZO}#$-0ZLBcTeB zq5GhYMUQe7oVAt923QQmaE08=>ix-7*@edo`MHT$EK2*plTf*Ti!bXhiTcxCnysFo zr!_A21pm_g>+bJlUlc&LP9yu86AORwjY&wVU61wPO>q7(lFVYVQw&DIfAs_9+>|t! zHfBw}WVL<7sQB0N1p<}zQbQO1oVEcCV<-8*B=3t%->>~M-QHm&&aT&_Eo_6PM=NTC%i3qeTrOk_|| zc*#0fWm5kv$wVc?$UU`Lr%VN3B1UKGb@CwE>q2yk%shn?{<=Yk3(nLReZr&Rhb9|g zAG9TRQ5zX{2EqEg0WsPUL5IJTaxiqsl3g`Fx@50V@P~m*_F?jszc1M{exFyoUiLo$ ze27!jFq6?nYf4{ePyiL?ZGB1J^?M8#E}BGOB!1f0QMa_1Y<^?tgI+AC`K!3$2}_Ag zeJR;H$3^R*%JanGR`m5V!e4VR!#++oEgM8u#l;e@T1`;Wn7j{K_u$EbK!!}WQ1W*~6%f*%f&)ncA7}JjunUE4hc#meJQr?ZX?{Zs$3E$Q9e| zf=PyqL>o?Vk&mdAnJ)qoD*y}*E(B(Y_7iYtJq{wSu`tluoB9Ipqm>&Sk6!fOc4QH` z&H@sWMT3mXzjNHfO4tf>$7QPkCM>QpXKxvqdXfi|jmc0?3pSM&HX*~os`fC3lE z)A9r+Iq^P;wRCl3;-+jTy+u>E)ive$o?5Ge3>xQ~dJSj%Z8e5XI$su2+$Bp1L;ZvwLTtQd5&~?EMPCveoO0!@b!iJxEg+o%J)X#hXP261>r!vfr?QO z%n||FQd=gt71l++Smdrf!tU0JBCSHNoX=cMeAV=oXO@$3nVapk-E7jYHT<#K#K)jRx!NmuiEn;|C}B zD7bEdMVyAe6y3Mtq>r#1S+*!Z->tmyOrF!%fo1v8Dyv~4TCyv#}$nzs( zRs;b_^=F4q;c}@WZOiCH9}&7yJkGR%)Z3O0l4$-WEBnNo+oPZo`F+L#mag{1_U3xnQ@sp{ANQOW53Kmy8=Q z*SVIYP|mfn3Rre|!}*A7LejUKRkk$rWnDGI)DFZb+wFVI#dvI)fpGM^G!nZ%$1Q~a zsXQt|0&89Zx+(_QS^nF(O`bTbf7@Hk>AXS~TF)xHd;YwY%-j z#CV+<5C-~!q44aU30MfyKfbtlW;ZC6flADy5?5lzW6p&%tlM(+IQ%f zS6&~ZT*l_?HXGDypcyOay^1LXRPw@6IZ;sC(+X$oVNV|IVYSfp7yeHY7SA`{MJT>O z5x~-HWA&<*U(WHywGWt}N9k%dCf3yPL2uA{Ax?ZdtJh% zPFEZ}`UqQ|XO!~B@8ZvmQ8*uIHa>|Dy!eF-u`VHLigao-TuH+Av>nu@`vgMjOIZ42 zs=$gDheV4bI^i^gW#3$OmZc7G6Fu+cv4F^06C?C!&-#$(Rk<$Ex)AlQB=+=`7gy|h zaN21O#0Aib9g%Liq9a;@yVichb+b`cu!9rXeQCToqt(FtbA-~IR!-43FN@G^tS|}J z_&^*POgJA0Sb#G8zEd;Z&*SP1Ga~6#1XI8qjAP#PhA17(d7hn8+VFHt?7Voiypf%n zvjaU6crESr)rv^}eDsfG&z${TLo79tF@{efxy|QWo4~1J?@P9|q9Cixh;cLdGkjycYm6azeb1 zc?5YS9~xr}jRtE)BmU5^xN{<%(l6`tTP3aRTUE(0o^)INnZg`tl{CW+mTS=`qGU{o3Iz2fO2&fbn%v7^2L z+IdkB1?vW8y`Nt3I|3rK_>2gZ7d z_rzuWl<~lo&6N&u=*bm2=KBTLW65TMpiNk#Pd8mUs(SCj6@zXaOiV}DGUKq2xn-`R^HW`)0YC8)yl(C<>}j@+$CVDy@lOqG+3 z4wcIb4%k$0doFO_d8n-RFvsP#QLISm>F2LGM{3Ow!}&bBK2vOqYi)!Xzn0ih_sOGf zIUzS3j!ApTkQOY%)3|*DJSkmTumVyLt7-*-;G^eymsWXpoN+^^Ww6el7#y}n!%S?is_J1C3Fh2=eq?I_ep-g zV!+TUYi^VCow=|XHO>$FsabCbNNjzmGizqZp(Z5`yghL8d~EQg%<0K4v8zn|A!=gV z{LqjgmnY$4QIBDG>EsqSe(@&{Qrgk0_3qJhRbX?Vw<|Vw|M^}?2>Z~oLN|KL>6E1G z%4-Ht%$>T+REOG8wCFJ@+J?=z-K`vcUlXqK4a1gGcEkkfP7nL zi2rHz<5V2ZJ@+)Lyk6sCa z>Ndv7MhQbzxP&DO%OC9Dan8|V@p8U-gY<0pfv5tzFP;RpAT5_WI@Flyqi$gZ(#p1P zDEnki9g7tvo^#6K~T+T3@%p#EOg2vRee&!hJ<=0#B8M}Nh6Y6_)b#IT+Bj>;vD>{YCY z=F;f+M05a7MtO|AgRKtMwAUIsY9PN$Cy|M4kQtSqAebe9$$ zrgkEatOz7&HljAbDHXnWR#kUj36*((V;wa$`%&|VY1bsmNP8;q6?2Z323zKaGgduw z%aWhYJdPepJ+;n&plEBsm0b#Wx4h#mORDAFv2I!PE0IZE{`%rG@e2K>Fe%1KW|o8- zcZ@1%tshy6^xr<+-oxt(jmTH<@Os!Hyaz7Qrty2f;q$aBGeU8>8N3NA+%3UN`>v2-R3QKv znZ5unup&KHrqa=8=Zf{NDUu2zMHSzFTwGm-dNtCZ)ot3BV%9U&>>rZ!K>bF~Tc@+E zd9irFnE#_Fx@ZtQu&ls%Lv&|ZeCI;y0?632)4IF^sth5JbYQ=-v?{4(;Q9;)s&w$n zkM=ZacU3qrD%PC&@4*hk{`r$oq8sU~s(l!g+o#a*5HSB{zluh5J?7Pesu%yRB$`p~ zAVY>Y?}&Z$xr_27=y_0iz`5$lKmhdvS>8}7;ixFjz#)#o#izCPlIyY|w&nyjQ3)v1 z$U*RIpY7){fbZ+nWaUqxwk;L399Q9J)=`W<_|SgcB+^r}0m3jqL6CZYwj7e#QqN7w zhe~V_r-k4Zz#_CyH!rZBSHgHq3^I@Ss5cuyiE%zJPZxtU$aF}uV5h`W;a8omI+l8U zq$)Kv(0ds-STsLD9DU06PX=ePqrVN#u(a>Ey8B9Ue>C2Png4-ECX?s1j#Y4wTSMN& zVo(Evnp~5sh;I~qJJKbO)X7d*;?~bRLSdv7`&a&|yu0a^%&c<7IU8voM=lwahTc1I zT?2l4)cZ|@v~-XEJ#JsI%`j5N%sv{60#|n0S0UcWQj#E@^A`54>#fw#b>GuZ6)Add zQF#sn%8}b!N%~_MA?H~ST7+A}a{bweKeDQp04G@slU=1Pz4xP~{r9|a5)7mZNB^2P z2GrbHSE`RYRB`HwV6fNLYb{ePD(kAS$3};QvjsiF(*?Bd41v$g|Gc(QTU_oxpIcOZ z(F_?wgt%*Bn0Jh5S#>Z?^j#b#2G%e2uQ)AGjaZ-dd%X%3*Ge??nKz&e>fWuM%LVnt zV7Oc~;qq+pAot?qSOp*)7|EA5?U&cMZg@#!zOR(p#4=o}w+zwsR67pi(GS`TeZTI7 zwvKF{MDpBM(dUQ-L!UpGi2`GT?xow8T}g@yI!}FccV@i@^u;~-pJ(x~s<8Rl@@aj@ zy0L%}fBt&7wdPiIfO;4pJJ7ggv^+3I_N2k(BCxjsPd?q>XtPl}NRfbv9YMM<%wf|k zWrjN4ba5B;voF!%oRnQhb8c{{4{Wy+BOlJPN`AnK#h-F`(fPIXh}{!^hcNQxjmGZ9 z+MvKeS}BlstQ3sj7tz^^s*HYQza_uH;DhYu3L&DyQQW9xZU0`Q>1So`h~;JvO>s)5 z|G7^tmBksrLfBtuo+!BYGO4))J(~V@=Uv<9m$?|Y!Gw3e`g@F3bNdnyNyjpMd$@OS z{QJ)`Yyz1&=5?MH&M*PZI+Bgb_Xw*I6ETZU_AH)ZUGS*9yN0;y8Qxo|2~4q^*_jj5 zB`gIqjpuLc!T2q-+%zbyMG}#W4&hrLC;AOtUc__MB-wH}F%6*^p zRqMK=wWgR{_b0SYqCQR;n^rFNXhy;s>xi~nmC*$~kG@oSnk~IdT%&7l>F5dkoB!Dq z1(qT~>ZU&zaWo`FjCTGL_Wb+l@MmAL=F?-K&|ERGT7OcOY5*z6pv>MoMZcmnhF|iK zJ4fDweAoYN1>TXLi_}s+M(}4=J)Y|uky}bXxth)@HG9Q=ikun5P!H-*i@&YFd>(D1 zd`(ICGyl^GO!H1|@>M-2tSARw(KNzI`BGKCkf2nVmC$=CV@{p(lJZsoko6a!ktC0t z50f5WNssLUkN=`{6m1^oxA~sN2#|g$sF?w;mv7jtc1?sLETB)rLVN4L-iwI|QgX-8 z+`qclK|TQae-1qZgr{H)nG@y0@QfOBxpz6zh#_2Y_yi?51+n<5m>X_IcXdAUq0N7 z5Ii_w3lga%Y+HeJ^@^MXtv=uGUij~U^`LA=yo9C8(Lej>RDN`TCH1Q&_|!js7xupt z?j`PCl@7@z>aypI7Ihfbg{Jr7Vl!pF0%30svp%^oAMQ@ET%e>e z^RrHpvie{g$}^p<+l#KlM{Zp+)uG;M0ezA&BT3g8Ntc$QH$mEj%1W@ zn78BHF?_(8>3_n;6LWb|B-fN@-_MTl@E6v(X5F7RF5>2?ZHE3St&wMB`3)8aLuRQsD!F#;5l>mP*_gU6M`|*B-gTL?_Zsxf4--Mp!f8N1lheK<_Ppv;`U_- z@5N#sgv=uQ)L;CbmhO(J{(i)^a)OT{UefOZ#V~lP4D?SBXH2bVWDfbA|4zWi`^Z_p za5}_lB};!dRaH@<@ykH11AH|l|2qM7%sDvVoToTSL_UelTWIyAhkvT~IML#mvfJiN zSTMiac>m4vj{5n8kOkXSLRM};$k(P=DfDM4syC)W(FZ03;^_}w<@91oraD+2@b0&v z6YatPXITCgo>qLUG>dL_dKFk^-3Y6cPt_7q6-QjD;H(%@37xAcLjOmte28FbX;rn< zufH9gO#e3*ia3zIT5S<=L*)+Ez&MapBD&7+q@`$nG~$S~m#B+ou!`Pr!UM^{PPR!b zn}XfK6iKiuubwlPR+_9$YyMf8--6qS-F|${b(CQ?*e&DuPWlkP?@UzWuy)A@w^>Az zt(uH!HGh@FHB-;FmKCP{^V)<0p^NVRZABaVhxtwREvC^vmUmZsoNFc;!d!2xXMlvjQ$6a4jF$KK)Khq4L89y}lNfoeK=H2z@aU z1`*3(oUi`gGyhW0>3?7t{;iYE;Yc*jOPtxuR`V3zGFqkqCQo4(>(jbAz%|q3X~E!< zBOG$n$F!piA6^to{LHLs?|GiIfD45=hl2u-Z}PS&hx>{VTpEjU8;2Fp*<%elXK%F}kADkn4Dh^>$I%5w7!M2V)3DmI^LiLl(fEYY5AEWxyLCedW637&#% z;)>$s-}_6Sf&|jXuZHZkNLqG1O)Sqd_bOU`h~dlshUwoT=l?oztq$&=r<5}nish99 zXVap_aAu8y%D0nR-@iA}>;wQNXz5v$@;gCKp>>}FCtL&cz0P)nP%!%1$m0b&{XhHB zEh@8)qLbr4VFO4X%R&(Uy5>uu$9?im^>+ZM9Ek{|vP7n{WPwS5%5*#;uP;INyf)tZS6kwf&MiemeJ;QF%5C(iS&XN2bq z^gInuzz90@ndu{0#@2-{*1D_wsUvpSNUzdN; za`?HBlQjd9;qrJILr}B2UnHMkV6?uRa7jnkNLmInI8~>^R->}De+WF+opm&+7PB)7 zCO9Xzg$JHfMceR_5GC-f#WBga=%VsiFgTngHEN1{$4O{yM@odPa+T;m=s#q`mw2+9 z`;Yz3(N7xh&nnn4%Mv6kn2$ZOBWKH-qDS|2r_3~3u2EAB`1auL51qPTDmofnm11jg zuVYm$UEtk08$)_9xpHnS)72Qu?%nK>It<6=+<;2mF9RN95qsyu187?ChtQclN3{Sg zWF0lQ{6X_~Un?vCU>(8&uG;;}_WAoViakyx58B}ulC<;g&K#PeYNv^#5`BabCMR>W z2G_i*Z94Qbz|*bCCP6%R>L)`UK2;90`mKYrAdlbI^8%`(0EL7h&>I)+5An=_s z*BRM!CS}XjATP2j;y9|`VhJ)RqK>l){|qjx1ch4zek7U=9yNlTQyT7>wWMrMlX&Qt zRN1-r$FR+gJMqo{0!qbJ$gQRY`o~+@4;THPL?nBYEZ=d@Dp2saf-*zy0?^wA-k{_J z=EBFn+c5v%1sh}($x(2@>HnjD7J9FPGPv>bq;p>>JXPA>Fw>3qJ}~`%BtFsN+n_Q2 z9>rfgsGPIr`)EVxdCsbyUiR^lLojzQF&C@+H`;07wS3UWlpcgzZ_i%grBg`TTKZ|K zAZ<&M8^2ofUCT}!kI8tbnD%{b0rvsjZE5?-7K9#wepwC$HE@Ofc1S z8>+}ur*9IGrJCzZ4oN>uP{|=A7^QFRZ}$x|8qd=gM`EKbE3@c&0N-s+OHnGgB&gWt z6n4bgo|F#rq9N*L=?$flEAt)6@Yg0BKY)wsYlwl8;&0nps0NU4sgE%`?n!3E4)_)* z{gfGxDgSb3k4lmG>^E2~^VzkYJ=WL1ubSb(i)Np8=-Re6Adh+v=vSa-e8uu`H;7O4 zp46OE8Gd~+X=dY`)72#AAUbp)?LerJ2?q^*;HkEyTJr*5ovFgRp^Uug3)W)WDIAvQ zO{4XZdc0}M^#wudHwZ_MHm=j$m9MU-tf`Qd#ALDBN7?+>S;vgC)CUTa3`_1?YqEHYks@_uR3n|j4qYIzib(->1%5~wBy$nrtm<>>2hl*fz8t+ zb%5Jm&}&9y{G#9IYC-OuMx|`Ec?{z8D<_>SdLGJ2Wb-lZp15I5&~*REow~h}?)IPT zvlk8T_s*f~UQk*01s(A7KMt9_Jr&3YC_zAct|yH*^RKl1_Wy({i~YIE|J0&F$8fF0 zpOZ;&i~HQaXY^-u;`kZx7M zgbZs`$orrhWEk9k0^xHW(TrHwYR?SOgi&G~O*JSCeXcgA%cJtl_yuk5gm?amo;=2ia5OpiGW$7`4>oylUouz%TUc&2s7lj617+3gP@yMeHf8cBohlMT4-9{f~ad>ND3O_^+3zq91;~T_hNpnav zmQw>U^N?X!j|6>R05)7Jqq*W9OT*!ukcjg$u9m&*M7dKPliylYGH8R5G-1ItZxTE3 zp;8%$`STCD7c85LV&zf!opBzvy|6@zTXJuIP!apDjt81L)Y7>7;-d^RHkNbedP29? z@^BxBI#1IziF)js<@3)k%*~|6x)7w?O3uak^x)t27uEtg(d~iJ?{UB%SqLBq8xui5 z*p2~gqgF`m7Hk0NkIml3BH)t}6To|Q2Q##_ek&M!&GSE?yDkf5VX%9Mnc47zCs#UY zD(=Vby+2QY3Tf09^B3~(4g6=fYj3ND!N9jozmcf>moGVs^-mK`b6%|=VzA4PDr3mhhiWqn59Fpw`Dy8{NMocc{_$P z`O#B7bgp)`0+bp0G%OSXYf`wuD`j9!IVML4{2Ncc2=sB|CbVRHc5jD% z3iNR+ci8V8`u96w?<2>a_?H(gzMNDF{Kq}CzAbYr8lFOJBk>nG&F|5{HByd9Q*kJd zjn|)NvK4iG)oLu!L{52NMdxcdZGL0sdHsW(tYUqO;d-`fRfO~OiAG6P%0=D|K+UJ2 z2>1sL0i0OFp4X|E`IZD!WvpTkT1fepGh??)fe4#1j9)rXF3~y0*RxRqhr=~Y((fmq zKab^`?5oZTtS-^6Usq0r?ZaJHyu^hT`o@TyZ;-|Ph{?&vu;MI_ldskAHDcs?int}R zakgUyh1RJqYXbpVT(8^*8ms~fNy1&Zlr9Tal$QGRJffnizo_1pl|!NP@ip@V-iWFBk|5_R4R7k0_!J zk;b2yrR)5@l3yUrQ(#Z_YS!n_=YFmxQ}mC=M1MJr)4y08Y6PRT`Fk;k36R%`Dojs9Ri zNdVDWtkPH{3ZD}izD=`)CHef(?#3u1_NT`|ghwpJWIe3DJ@9yHA|L&M=P;vc4O^Wx z)8D zZ+a1JO|*55U;4Lf3xNK~wOz~^l$?_g9aA{C)b1h1uvQZG0DRtl95^iqRiu!6O1mr8 ziUU-}Rd(pApT^Ml9v+0CD)Vz%JX`4y&`~qI=3i3 ztLd8{kPcD9FVe^G1s ze$oCy3+z6J4l2-&V?Y*6+)0A)T@HuOx284{uMR*|Mk}CdILlDgcs6O;ZOz!@C9%h} zy5K%*9KGBGnUE(AjZ+O=ze=@2a@f)rhcj!9xCQ)o4i|A#TTbQ$Lb6bkDnfd zPffxnLlm|rd?r$)q+!;6f$3Z>i?tIS#LproTI-YbbmtQ7KDE^OXHy^e(H9~6wvyx& ze)X+9h?+g6{qh||BZ8>F!nQdD8eTqUoRUHG>ICq!ik0BBF+Ad1xM&2OjVhi@##QP1 z0_$WfFkIg^OP>VAzA*{-GCuX%WFMauLT#;8tW{1x(x8nAakRm<;T2t)u%AH-rIx^C ziRwL-;5?n`+M!f(QNt2;^j`h|ZoQp%Y%HSG+pFw3ii1jlNshsUhqjCBFlP5h6l2WkBOszp-wnb~WMY#5U240ASqhK5302*T9T1OT{&8z&; z)taoezKDHx%&Oy+WO~K>=LJ!~165qHecX}l8JiawGOrprZEt+_nob<-4!(0;**N4j z062Q|{koNCUu>`etj0=0-MQYl^ z$fJ_@MS)<;V*ZWf;%mIJI^`xHBtw9~aAadnv zrPpg$o1VnM&B;$APdVu9Zh;Mc1lr)&QZ;&ZyQ2Ces14e>ZJorm+ZUa`0p1RigKF@~ ze?E>4s45onhAJ0y6uxHRjuW3q9!L+M_47C&{#0)Bxi7Yjd96HFw`&1FtV}aEaMUwJnF2)5|iAYROu5J}!qz$Cc{aC+ozvGo_uQ8G6w&rHA zT~Xf(AW7JOI4>>r`3TnSV!l>C^B8_0^Dx=?c0};Ag%)r{wpP!#5DZwwcNTWG0C`m$ zjX5+AAl`A1Mfn#~dQLu3y6**IuEO=F=b*3=kksn90!-4-+4N*@o34^RU&``3L8Z*- zSF+*Hq>Mdl4}D#GCkV&P>S*QOeo9yX>TavJCZ$|JN>96(AP-@ePQJ8z3bFqVy?wb1 zxu_xCk+4U{5zIt2e+U#mWvmyqTA^)QGbC|f zP`;lVL_Qu&1s_ntf&nD%DiC zL-B0?p$r#uePq{@HS@ZfATj7>;BV5?*!Vu2a}EDn8J@3eqx$_)hKh0#BgMAlFfqj7 zy$M61<}0wfPgbqRf9fwPoOv!N=ApPEIgxVQBiZwf*GVAo&2gC#PXGK9@{}xVMf$F0 z*z5qz=(#3N)T2<;{7Q;m%GRv4Or@aa+&b{P#R0`HZIYonPu}T(i$&h3iIHojcPpp1az4gTsM#1~h2X>VY>S!&E7KJvSmk5>G0f0N1AzzSTKOqt6 zb-inA%4djTve7LF|M_8fzgRSnlPM&+q4WwqC+;59vG!2E|I^mSeUIH=+z0x(F(q)n z)!lTM|2)j|$3Y7>Rp#DDU`h4CiN)bU0qAZoSf^G%E;DO_QHwkX3*D?zg~{;EF7 zFqo6wP3~M6_LVK28v{@(+Nh)O!GanbX_bq-J@@9;0gV@FvL57S)6!ZH$#yf;(_%K# zu@o&;R9Xf1VrJsd%(#5xLj*@btgBDH{zZmkHL8oW?>L$wJ_-smB68g|W+X<(-cs{l z5}m@g6;=;3T8oZlWlmg5a2d!Amm_=vW?ueowqK{(3#)xz3wZUipRs2glh5uYyWZ=b zd>QZdeaCv?dd(l_z7!fu&VD-kNuehA8I!~_=a6eRPlR7IVxZdp^~trj2jEXM4pE&j z;%9KKSG#ynQscOgMmGcF&9T_aYA>knC96{f2z_!y4@jZVJ;*M}M{A%GT&%#km1PYU z&Bz^Bnxdp=OK}0>YVs$mSG9TDr<(^l94}p^V>zbEaNj7S2VkfX#;Y-wZ=YqH1D=Ax+0q4-u8IV5%z21c8jLP#K#f`Y> zWg(Q8qpywoE&%wwSo!Mr;?SOgmk-`^-fl6G8F-{^9+ay}C#OcVn9~C}5s)9ovCQ0} zr~ItSECf}WjE+QbdEMjpwBHF3eBn>8>{-yyPUUxUKe#Y-1InZ1c9#RUBGmJz?x<|P zx_d)Z(^D;bOs@HP+x(uZ{oRoB&mh$Q$pYA|2|UdhhB2u(45h*U3rL)eKNP3N^g>jT z4I|*B541lF?-(}6F|QHd7zJ4mDOm<8PO1sY9Om*})Xy2B%pjC!X|{XPQ>2j}9hIkW z;N@>GhX2MKRK4Ofi2rI(?oVX!hkqo7be41==m^~oF(a4^nD(_#6DI}cP8(6l{ZiN((eu25eX!RuXT?-240%CLt;fNwnXXK&h zq!mO#%!D(4>h}0|YOYIteP=>d+In3EH#c16%Gery*o6<)Mw8lSi3)Sch*$7x;q zpf22=tM*Pjj3Ij4^bC{I8>VNCd{CyC*8~oV`Lka9>ccqO-Hd=lo$m< z=M!KBF~$J-G^EwO?NB{ee4&K7nC`B8sl^?;V5SdXn%pvT|+D@OJh6WH8;Ueuzxn+ z)B=h|1v=+SB2FBnEnl*}B14nI253)37X3kOe9&>fXr=-XUvT|DL%7zrcor$^3a*F& zD+;)J&H^q%`+{|6=6}mn^sg|)gYfzdK5wuQN3^NqhpQ; zBSBvJDY7STV86^^`08`s981(}_XWqfV&xTtR!)Cnuf2u+;qm%;Z+8ALVwzNtJF-#q z`hyGaI>t^XpSPSfspLBUt(*sC@M3$ilRj}gqn8W&U9UMU5>xOhv`R)lStd$C>H#Jr zbQ(A1u1WqC3g37-x6V8LQOj0yhO|;M#MYN(V{40G7u#$QpIkJ@KNHJNCdFSEEAA7t zO7MWMsZI1I!SJ$IwSB`ct@6@j2=)aeYOBNYeEnykKMeR(dg;*%mVQ%f`z zm;-cc*fr;0@VtTSkYiWLC1^?sL{fq2wW%fRVJWq)J3@iUUJRo%=s)f_=~H;=h3PYK9Wxa#T6pd+1uGCmbf;C$!dGjIQeVl`o`mHwE8wD>VIZb__9HA}^ zlP5mFvcq17TOSVn54NZNL&o1IpEhSSZ9i}>w=NO?c+;db@4Plub_uVi#`o>c0ZH`s z<}!#dLK~gg9)WGYQ3S0c?!Q(7T+r4Y;NG@wLG$xip~Wi|-CZuVh|a^*huUeEoNnRw zUrssdi+}J^nN@y;QA-mAvZWjGg4OPXv4aaAhJJ(^HIlr1l)TuqVQ+>gZwpyaxQCp? zPJ>jUJe&|8(<8e{sc@53c78q386o4C%uI*ed%-%Razp;PVVnY_H*g5t0Pkoy(t*0_5@3H)R_#o@QaW$m;Zfv(ZS3$jH* zU8p|90E5w#bf|4ps&~qv-}tK{kd`d#p^18Bni-WKZtM%>ZDgT9L=NaJl5jJH>bGv~ z@A@F$g%`YgccT*o6-SQP``KMzf*4S9vKRH*)+!)iN^4BY>S>*GcIA9bejk`}hPoFr zwK4?7h;^=WGSwSjKlB3d`EDsZXhZ^xkmY8CvWvvPo#VP#%6?@@>-KwkrIm!TDIB4M z_(X;;^Qa4BKU1lI)3s8D-V_Sok)u_|I8Tn|yLKXij`PMQO}=ipuROzS87jWC?kv16 z*_aFW3YJWDWseX%d@B-;T5asR?QdAQYH3mWbc}t>dfs=Q1U%wpk*4I9Fu3-}CIj%g_OAX^u zj?+}Ez0C)|1z)Aq(z7sD;YXR?c7J*|Bx*|`2ki{|({qHxBULz0 zXC|*zf|e2FL&$33yI;$&)1uB=l(Z#g+7tM|y{&x6*a0&U`(Y-;KxlBI-6M9xE&Cfh zV`mt!IaH5b6J=<=d$no+F`gqk!4}@Pdg2i)#gNLdLyvE$wkc zQ~EwZ;SlWxnnl_eVSQiGV1q&(b(X`DbyK05FnYJF@E?NHGE z3%Xun8!iL;EWb)^Tt!_OF?h0|E_c8=D`4sjjTGm>>Oa`eF$S|*0F+V0GB8g+dYBoT z6;#o91d%lO2g@rVX+`m+&1PDqv7a|KcHdB;)$5_sMf{P9pDLDL=2Z+mTs~F?@x_wg z&EveV<|1qnMBn^A$u)OSk+Ios9HA`r4{=$^<_V03B7diDaXZc7<{zg$q4Pt({f5vY zSmm5Py&Mz6l59U$%r-Y!hpSTlJpMx?RKH94BXOda4bkfVnfP@AZ`8(U+DQIJ@?Eye zD%9V@nod6|qU-!AY)&)$!R_KA7uRd=j`UWtw5WX5lb0nhSwy$Jn#_t?miW-%fO^!8(<>)--c41cA>y)d zIfrOj+egqYT`KoYT&@}r`w*I*S!+s<3SDsXLzy%YbCHdnM@9AXUvuj0AjDhj^D5WG zAP58EhO>#)taqb0Y?MpaqkYDp3>;fq)79JA0QCraxPeg6Ww_Ks4bY6m3MVyV)Z54g zO1{GoXu(U*)G~belXqLq7=b!_Gc6$P2rxY7y&w?!GQWW5ZOOfADHr6}cAnRb5q&?C zngs}LO}QA0X5%EsmaI;$`qv!w+qd(2b@ZUiHZLvvk}!G|aSpqAA>?;UQXj(*|3$n_ zPwd^Ngx`M>57M4CJSIU0Tr54s+a|FGpyd{qdvR6n-CT`w&qkrX>Iwy*Wa}FuSTR62 z`vo(Vau=e(EE7z3$~JOt!6Wg2IMO>MwiU+%+Z?9mSUPgx#DS0y`V|aly2;2S!`J)A z-;zh!O{?#&F!;Zx4kT7X=?vsymAUA?UPQTrTc&|@4!56)KU%Pv%`^l}<7 zmq)73kiW-ObBZMkrB%&MQ|EHVPUd+wSdjh-E&g5D)%c(EqwwGN zqZRkQI5Xm7I=-+yzYx1Fqr9UrH8c)2D_eKAhIUSFqdGo71}cQ@U9+uPPm_V1Coz%j z%9PnNCbN$(t`_B?KK^QH%B`d6P};3q+dZnfs(b<~>gh~7JR2py5D1Mt^=buHjDDU+ zCV*r0UZ2r8#Bl65f)w29PFF6P<7;?$y>jt;Sotj!0J4Z$C%fs&ZLN0EQWb!ibO|c2 zRr0Va`;EqD#|u!RRWk4;EHlRk_~Hp&%B&r$SpU^GxsInJ-d)VBakmPCl_UX zG3BEPF-tEz!KZ>vjNrRSfqE&$*4KP-QQi&$9Tq=?TCf!HHFCQBjh$NWJq%~wsv0^RG#oVDhcmrra8G-v z+q^DvXMU^DZ<(4XVS zzK6^HXQkJ-sg)r92w98sPhT{| z9aHQ&P7Bio2IV~NacsLaTU1^@S4HGci%`+tRx5@#>z~F!^|evcwz&gw9G#NJ9@I_A z%`)^<7i`0JmS9k{!Nd8e_Wmo!4q-)_O_6eH^MLwT5j{ZeulQpvP#pOtbG>aMa{0h5 zdM)yw{nXu|8NCHn?o~}B3cprr8rAh7QCeMh7J6uXm*Zwgt92|FV;0a_yov>Md1pbjkjVos75!Q8SUuE zP}pwZMUT34^8@mhANwUdL}HSDS~2nP*1@1&^JIWIdAKr99IJg=TGa#289iT!e)Rpu zA&F3mH!v!Oc`pdHg{sx3E8U=~e?LHPLh@T}S{tER%imEN-JpBIO;y^$l1i~X4xBkZ zPBEyFLru@F3kMr98zRT&fMZEh`M3lP{mqy92EoHBcP^C{K*pSAe{sxjV~$&Qr;Bh;iGUY*b6l;|`T6^#7(&7J%#S8A z_GXYAPkRG-=Bqgh`HLUl9HI|PCU$ZFV@@KdupVx9pnIE@JYMLC%bFRD=TNvm>0&5{ zT)&_=M9HeMI<^xBE5%d1?(?&Tzd!sgN9kO4>CV`de*IvB^(Dl@5JEY}vY)oxz#hPi zPb%Zp1Y+XVs{mFFExtp}+cEUj-l=`PIPxo(`1NM<1IJSv)Sz2WYdRQ@+5se%K>;cE z(g{z*wrqskwYHJ1Sou@;(5ajR{1=-*lju2^a#0#;B}!*E9&Uxi3h93AMJ zuT0R07cTk9z!Fp+kJdZeEY)$OIy&WqAOun#eZO+>Nw+2UN_=rPORC;tLoH}?r^Uv> z>ajVHmD@fSzsuT%%+V79bO%@t2ov(aUzA!QpZk*o zBurf73Vlny($!toinVByJn1^@H4cynGiG!-kzQnx3nq3N*~A=crR=$9ZTGon$BRDm z&xdfuQu-u9eLjOKx0vgx0d2>v3apF4fXFzYOndgRze<8oob>~n%(YGr*T%Zsx?RTZfPq{0N*SiCU zk6i3=HBW0`KgWh0bGeT+JKnZ~(i{2tM7S$QW3ab)uT@;J z)xFCG^%+(bZ=uA#XD)&lc2jn1{15tNZq{wq`kCqOd5l_rzj(~yO(*z}i*1QN#u(ib z%9a{A`li?cOA)EMfp1doxvU?R4zO`%Kjx+xmGu$p%YO80J|pUq5mdZ50?5cD1%|js zaEz-uW4Wr1g&F4@mPjj zux?bwE*r*P&^U$K(_qxu&HvbYK|?OrHigb~WhZ#QsXZVLG;`Zp~#l7XDsrsYizT zqu2D9qeRImd2Gw6zkXiDEnwQ)7vgXx zcO5u+Z!GEZkDrOJiV@Av|2hBM^_i8RmizJLrNhGL;QKv0ULCoxQ*>zAV0!H5F#=3$ z+;NChOfom)2wV0y8V)$`!TvL?RO2L-E*sQUHg`}L*zGEN-sCy|5{w6g_OuGX^Kc_d_x=z zpp~sg*woy!PQ@~7DHdd|Gg+3Dos%uUi#f;&>nT*#6GwhnijG9S%LLRQ*nFz@Oy-Ra z#sG!cd{tP_C$`&3+c{raIxtXQ#e2+9jl76=Pq zu0Dsamu~*A#OyDgAfq^KT}El>E`X?*ZZ?>npt(4El`yZPl!N7|;Mu=)WW?&ENyt|jT`>Q5%Z}WD97UC0{!;Kj!BN@5`c}XUHc050HoicOJVkY z8;=3j@n@vx)RxV<5IQ_DQ}9~2dy-kCIZTGpj%*n9;i+ksbFSsXg~<4Z`Fl}Q>nYoS zyJX7uK0wl4Yf|}QN`lbSv;q2~%Q?R!c@!?KRIIJ0!%_L=D@-v7YKJ-|6c6Hzz@^` zw2j;|{zLR_)f&MbWx7+<&|YV(C{5mX*y)+uzQ8J(I{nR6-gJ}-Hd0yiQfQcp@9!yEmKb-R`I|qipYByr zKX%t8#3XV$O@%n<(%efIn8@0|CH?>poC8OP8uTx;F)p5>aqt9uE!*Erc* z^Ij1~)z1eel*~4(M#v#D1+`~E7@qw$fnsp{0Y0jpelH)u-|Gpdsq7~#UKJO~3lk`L z#~>WpxBfk-#ke=nDomVcL3sN>aH%a4EBxc~*Avj4qDDflL7~nf`m_Xin_HiDShc zJm7Ql_|77OmIDQY{zah{k(s8NMiHh8ub*!tMoigguaxGBi8|QR?-V34)HZ0a)TZUs zPTiWhC9A2!iok9-$lHPD-_;$*30xVg%%$QxmsB)A9&(T`Uo@8L-hRz0!kl+VtmSj5 zH6Tlcoh3Ai>sjY1+r274wQS4E5c`ORI?;v(IXmZ+@WM=2DJb%3Ph{GQ-4$8}1Gv9D zic)3Zo9U+=;jN)PwOPvO4VGw^R?1d*1a2v%2%|~SEtG0h*9yTbnKkbn1M+iyA0fr5 zd3_B@alhNXUNgMcuJ>!zIH}?5$Q&Acur@*}?qP^=YiwkP$n#f3_H2z~mw|ILg%YKA zM1PiHWhEmpSu(NAo#LEgjsvsY`=Q2?M9TR6CI z^nfp^oT-0d>>P9dtzogCm8@?8R7UPnt-BCWOHgP=)Gro z4IYA9d;o1vhbJ8IApnS!qceQSg-DISwv2-0op1~#fBFIf%lQqHpOjeg9<#Mbh=pv` zF;h#=VoTosX#S7r#|m2UZ(@|2rd_i=z+mU6OX+Yix66;QfnW8a_v!i~fP+k0vbdF& zul+lFY5=JM9!Y>7p2B&YmhLIG?{nA2(+TzfpMiWa;VOC_4xKLg7F&+OGSI{-G|29< zp*tN$OTAH#R5-!jzY$B$J(3g#g=;DV-BiQ1)Y>6N1icB2aPYF(t8)^Vtc3uY~BXT-O*1B5Gcal1tI-Kr{GUHJBNW!4Mny=Lxbss$p+eqqsZW&w;{tLy3 z9uEwsj9#|*rh#Rnxp$Rwahpw^TF!*avHI6kXGo%K4PVzxe7h{Mx&`@N(y&GVj^xSNmrJT}Is71)T*+C605ZG~&6>;=8aK=b|8-G#^CdiF72 z-x>rK7y5bxV0AKi6*Vm8e}CxZQ$~XO=BvaHUJck(F39`r6MKiD=j`2eziI>g#b&$O5vKg%QW=2_Z0*G;a_4uWD~UEc;b}GMXu(>wGLsC=zPS z*q01~%k>VZIpKvqYd%BtMr;ipzm5~Q%4UJ5OE?USOHGQ+$TANU`~7MH6F|A@Zyu1Q zT^G?7qOi?yduE}rk)t%%ibckdhlb0|*u9#)zm+1V^AvX7P3K)Kv?EZmUMphzhs!z! zYP?WbD${brU({R_s8^L>nsZ~2UF&t~N!Wx3b9q<{)xH6tChK z#eiASU%}Up#p#Y#!Pzl%nv?Zd?E!#_YR+>Xt)0}cQuAVZw5|J%Z@vz%*~8|@z0OM{ z5!NRo`pIWVx*XBwmrdT#9gd*RyCyJox#_0{hhC1ktgO4!pbDI+^yT!24^Ij$Hp`Iq zA2m3~L*jzjYTbua2E3SFufOAFOpil<7yEN9A<#6J?|LLRM0eQEJYVJ{s*%^sLBAHrOS&D`M?ja|W3!dr z52g}p4a5qsbUhbqVMSXUJoTDqW-MwKgK>x5fgq1q7UFB{0t`r>L+qu?r$2coMSk0Q z7AWhpGvU)89$vu+CZJB;d4VgNiJ$9~nub+5!*xeN#5@`Vn)(jpAUdZz!<>mTe2_pDwY~TN#GLHzfr5D=bQN)7|o4SNjJhC0ro>V_XaTUFHsQo)!G+rtgfw+_*w#tB*on+smf)P7b?%zDXsxN` zm$3M<@k_}bUiHTr>nPh^d3?=nU}P1NH+nC)Uuq(P!NHnqL#0WH(|cSjLP82Ti8Do+ z)Cmckb{)K>kW6^;k(+gh>R6k4W9{+#n&F-@i~6IEDcy%d-6%)#t%}wk%bfCpoJ_1` z9YPMs)ZO#DYbTgqm_WY~DwvjhA+P%-%)7Ktyj8lq+Xj5bJKddG+gYqT!?5(tp%cx& zSs)S+3xqv+f4|t+aW^Ikx~4Vk8;rLz`)2IOIDvU6YgvH;H@(A5?WZ2wp71f_qIAei zXAJ7x#V0auF@kAlCCx96k;>qqNdQ}&Up>Kw@VW&sn)iz0?whb0dAL2GF?y@8(ha6R zUxD>s>(-MIRk|cn>n!*O!yX@Qpnt<+SHUOu1UIlj-*d(a*M{mCXJZ+!o3I=ON{#hI zaQ}^gswBN9oX)+wJ&EY@ivoGMlmYzPpK@3J=vOy#QtMB?7=}Cikbda+qjGA?rzvm_ z{~-tVSL-Ihc$M8#_irDpHU~5Ywbh&p0y7eoI48w$P449qAn14QnklhA7!@?q0wKj; zfId?Sr%1h~+srgpVUChnPRUf{;BF%v|N43>Sn@Ql9YHf_u8(IHwl>X|yMnvvB9AW4e>1%q)*!cV#|n4cS~+)x0^ zQISdR>NQ(lHsM+C+)cI?KiTTrESFeCelA$o=fmF$xkQYkG(Ii#4$K0Vnm<(_o8<|> zF;B_)933N}yDnIuzy8&!jpjRx?8!Rdv@C;I`m0_UqkC9Jx`u+iiuInh!Z;xWnkg$` zMH14a)O>F{$zS%u%WH_0ETdwz6+XiO=Jpd-cjdEVYNC0Vf)6x$6;LT&(7Ar;go_;m zHZ5YEUIAWuKvbeg0kInEN9lcy^5K-IgcnOhlvV~2Zbk08kBoH z+WwL!V`r^TbTz;DX!I-t&k+a1?lw)DGqdABIMlKvpR(VY2|W&UmUTgQO7>o@u_II5 zGywdV$29Dg+q6{er+jIK=a0d=eu0pwEpVk|wv@o-`5Y4C4tCDJ6~7h!2-*d&Vjrun zx!6>K@AFBiim&uq$X>MVmL^8cwlGVjUW@#nmMR^l2*kkt1#vR(Hm&vEsISvMv(_jwC38E za8mzaWO(}1vh|^iiNhjpl@$el@-m6wOQ!GU{83_Y>D9u`+Hh@P{g--V9DG#EVFB-a zm1Y%$(VgeRJ?2eI_5-2pCLjN%d(Qx9_(JQIv$=(P%~puX-_sX2&&HfYJ;iwC zMu8Gmd~~|QmgV{dqGWb5Oj@{RLrSBLQuQJQg=ZqQ7oo_xXt9_Wyi9C2=SrI%yIk3| zWP;SR7z|^PA#)$m7QoV>zzTvsV}Q(=JYCx7Rz(TL58hYiG3j5zE^uZl$G z3j+hFOLqMwE{}L5T*`+hBhBSVIyU!k{mH0hozM3759R|0&2sxIbO??f2e4TY1JSK# z0Mi;9xX2@8moGK|xY2n(wGZXZ*w)6cmM#d$8r|Rq>D%Do@s7e!Ymv>LJ=(NHEbT)TBlCslI7RvvaJ0-%J(uew%N(9?HifW@ z1T}tv&-6MsAqdZ*WOcS*+1rJ0WKwlpZp$kKbLlOgnZxrTKaa&a<^&cgKK&B~lZ|R^ zbJ|9_SH3g5)C;Wl6lHy=-SS8}zVnoPT2Dg;UGwEr*HFXC4rO(x6iyy%eBC+V9u=Q( z&93O`z$=&!vBk8kUqeos!onJ@A*FbH#!2crYlTTLWcDoa#S5ZSFhtLnfkcor=%6b=JPUJB;({cfO87{YhQ&B~Axf1iTZNv+uyui1q z>Du%vp7URb5OxT`bUfW{PYMPcWEK=4>(P9*n0-NpEv;;%kGWgSu+nV2?UxKpZi~7m zqtAME4|DKZFgszDhv|*f35Sbd?gZ?XZQ-AmeK#$t%uT$IRXtxzQe+e2-B1N8QrRP* zCAebp&>Il=V>G;mS=0!c=c?_()|yMUfeH8Kqz%h#J{G3(nwyEZE0G{C^Zk2A23n@h zP<|XM=62BE{G{PCHt(3Y&}mt_g^z@BP)FAY>yLcX5FUp#Z|{OuYc9Ix@dm;Ea`PVH zkIt(<0tCV)Ekk9^{fUt@VPY?%97?;orgJTG3>VV5-UskqhDXAYJ``0b26-8P?V=T z#8`9yr~FC*kU}eB$dgS!2~4V}3G6`bpdHut!xv@V@{+S?+s(IVhBJ;cuwg%kDEm>9 zvs{|ds2YCj6Hx~e7cI$-nv_@mMD1evCpN<*k! zD)HvDPX9`pWMBWM7wam=&FHm~BYr*a74-{Y%IThy}Lg5%-!M#!%GS&qwxJQjck27F5tXvVL zcnf9|P`jJV;}Jwcb08-wlswk3;$p&Nx#BVLB$49;VU#YaIL9dX5JRN9MT3%oW2dj`sVX>)MrCg& zT^Q$^#4=QO{kJWqO`@0}I?yd3VTVezF1&+;nN%hhcqie^5w+NOEL2pHLy7{@TDq~ElnTrlZ*`L0G&6)XvhpJWH%YXl5Mi$TA7voncln~F$YzD#3u#EA66 zmc?s6|o}HSJ>5n_1p1s+4{WD6X3*QwRfWNNhxg#-N9|q~(XU{!_9P-AH zE$-^>TO)9JQ}Q#Z|9G@CR5SIP(6~a#Wv&;`fms{WUcXUxBME&^$MgkcaBcs5Xv?Ed z3$k?5W|HEU!_zvRlAc+(k=r&s|M`P1mm`nk9qX)0Hl8GJJJ*})l#V>qBJo`zLz!Iq z)sOUxN2RyE`Sz2w;c%-j5=+vs+405l$6X6AFLaq4BAa+QMn5 zJ<*=bMT(Hev(sXdWt$KCyvxbymu?FF40=~TssNt*(I?q`bGM2vh!kQiRlCpB10EWH ziiMOCP~F=r2n`2uAT+%3V}W=0r*6xH?+X=;z$97^GI{=3cgCuKu@k<2`mM=-Y$1T4 z0;6_=lv?)5(i0nGidyMlWCh$e)vq-c%Zs4ntkV9Kw0Q|98LZFl+QKU$ZGsO~vOBIf ztqqsCe9@zhC~2M}7`!pmdCSNp7#*)@8w$a<9-QH#-eOo(_aX8Lui zaB?@$nUI{5ruBpI4>L5ZZq711YW}9X&NF(K(0eZjMuy+c$(q&-a&mfp|2N^254s+i z-+$h}9)A-)&+f}V-f>5ki>V$InBF`6v{e6A|It!iI7lVC20*g@oUPnu2D>CNpDTVR zdznA;FInX_h${wjGSKfh-YrP=j~G^0m?o3(;^UoH4NbBl4C93m`W>AS8$8(ulS0Xx z_@2%I{0crJr$0t_eMNi>*BD8Rm1nn!X~*>BVkN}D@^$-S>Vi=QfyYi2?EMtC!$NwJ75;95T z9*;^9ywlsj;3~FoI@uGtbqnaxm#>vt@3#Y>vJmKV#N_p!LO0EaYt%}D}sP7 z+i@(T7aQh@D_31gG`4+0@LtQTLm1fhoMoVxTs~$Z>~yO|yYoRa%7~t8p7EJTjuf3E zQb*vX5xbCdAOh_jDsQhIvpYxM^ zUHVw>=1f7I6epo(0!K&envtqV>U84vqV!`;p?;abW1 zY)ItYzO4oRevWaV6rQe6JiS`Pnzd7~Ud%9^s#I?(_h`I&0F`CJgD--P%-9t|T+SY%ro-lR}g7Fn!y zA6=U#u*pAaK5q2r#OqMf1i|anL{Kt0^!^Tp%ga;VQ9H9J1s{4L}IqEXV|)J#N5yck!BZmUw(P0I&koUU630It<Ru0LepY8a;BU%%w-0-93ayP^fH@W6k+}Wt{%>L*~y) z<7a97;3mz=sdPJkPEl9uvC*HT6&&koIQp6%-3CGni}|s#ZiwVTXS8iqG*%IzKgnEI z6B#WvVpT*}R`;5lL0)&lOji2Ztq`XxDn>peyt?(MBCgz`;9O8IQIH0985>5{OHLpP z#**~&SBr2pI6U%e?r+u{Gt_jU{i}CBE4U5ePNJ#M&-RZG_&xCQ-2oQof4G9EeP0~# z&Kwhkdsab&iT^{xjo~j%fk!11L)a>B8oQrMB6y1ZF9IecBQhH$>=A z?23>?U7hIF1(nbj=v1G9ub!33QpgMA--~jrhMG zivqXxEc*Qg5s+m&*PC+=QxM)=Oin^))CL8g#NJELA9!|$sY8!O4$CUKT`-dKO}i3( z6JAMkklLx$k`N>h`@Tv0rHpb~!*)rxC`S=q87yT3vPKPIYp8fKIuTR0-YS`vlhcex zxIPH;utEA%`nB{sMcn!m0HRQGpE3$oa?J zMqu|+VrS6&gFJjrNs5nF|Ag@8vy*29f7s&l4IS0l(47Q?L!B`nj8~#TLO6_LL*sqn8tg$Z_D+c~X3vi3-y)iq=$llI z-MH=FQ2j%rK2JRNpr7#pE%VoO*-0dbc2~iwd*&JZ`n1t_RIfoi?shivhtS+ zSnRFjkD@lEXS|yIq~yfkmgLQk{A)=*v4owpRz`_pl<_MkXQUrDB2{B62R6usnP0vg zX7?CgaOG-dFGgCq=5m=Vq!*$Pl+}&;`-$B)mtG1ZZSW8Qjg0nLey|h4%!8j;~-zmHR=Z z{FKdten|)c=KT~{s+?{grn&xq0DuZwpU6rs1a5HV8k`y@Ju}p;gZwOz&2?RS$6S; z&+=rjn&V%y3?@?-M%xIzT}{dZ?6_w3`nWR%`W?zEBqtfc?UmYOuWFYqrWInkxS;c< z`=DK@&E3Mn!qj6hFuih``=a`cFKs`UyGRc%qnJSTeMm46d+*VeH})WV5PkwZM55A|}Gb}j6w@+#t>czaW{_Wb@8LsAPH|nIjao zs_2(vX0E|iw!K3Q$+X`Pw(wL zjGGJ)*woSf=6(m2jT79@r#WLS_9U7659Rk0!X2XpgAcI(@o_3Ge$Jp%tlY3X3s%B> z{ca?7Fs4F0O7Ko`)_{}IS;fj&-&9^YdN|#UE~cf(XktlMlM2SfdXeAUsGNZ&uZt|m z=rHaiT)kMsJ-wJ7(eI`=p`&)_e)ds>e)VGLqL`%n$xWgw4x?`)|I*>GOY^9GN`Y{l z@@p0j3Z)A!WSBgS`mD3!$s>4{|1AwOXGPnq;uc9=BLjI2Ta$4%8aY_wx! zJP0^Or9uuhGHEg78DL9fR?4O0+9WL}VLA+I@^noho?b>hTE!}pKs_|Z2`LfF!T+ya&2PS}2pUZ1zyv~al@5zd zw)cxtcyjeXs+3OM>dON0!-@(Pg+GBO5d-Yz@m)_Mj1v8d^?}3(WK9$pDAG0k$5|;(rI)Oi5 z*aNoUfGbh=RJCeU`J0Hm^@h8O<{bJjy!C^H7=`@ce(*PTMm|xdi|)GccrUhb8o?kA z{q4B2VQIEI$-1Mt0(edyq+sC{7Z^8M>o ziZ_p+qO3#c+D(<+ZMT|EYHC}n4N>Yk=lPa zXL+HA!`$?C|Lft09u7bElU)YN?-}R69?lK_$1U5Cn63ubGd(=`Vg;CuU%ye9v?{WL~o3l@Qypq4Yy)|lBS5QkSxd#r z+Y2&Kxn&RQ&^TI%eQi42MRphx4nfc}%ZA*bmDKuvn~}+VfnV~0K*h=4vT$i#;aUpu ztVVKj0xXotiS>2}uK2RLD0-R848qijz3gP7%0Op&M1+2vjMV^T63kk4 ziNVQ-G(z;dEnROVvyn18TaaP`@umeq6L-YM%R15^Z~kN4@*Id^h|#ydIl=NiIwPCebdrH%h*ePjOa zf35`%?e*wVJ77NiW_`Ci`3C~|t2m>mYuTm5Sy*9{EuQWiZiT9Vl_NhSm%P%Nxi zHL1#LucO72>8o#o_V0XEN3kgE!Lh-?3#Y%~+5`Hbr_c-U(#UNiErl+npKvl}iAkLQveEwEEf@#! zK0r-;0T{5ic{?LJJ5)_rWm!L;1!her5kYr&&EL7u6l)G05_~s+Jet^h5-&1Y|0LPH z{zCa-pE}}4RF?GcNvk;j5=XP#^L0}4x{kbc--}Q}u;r>beXAler;H#b;~~aoT^F8c zrKvLG_~c29;1i?;UjH9->%{1nxI^bw0H-LcuTsDM=O(&Z!-uf0onD?ooCrEkL z=(R|PhpoYWiVp=dy0<=*95{1V(sRe}aQc9g#;;A?!rxk?KR^T)I`xWe@01uHg>Y z4p`paL#ocwQ`8 zm+qduX3$708L>W+3iei4h^YfCS`_bje>m^Z(SFr=Rk->w@srbEi!0Sp!yauk@tB#_ zhs=6Q^>`jvcyK>*WME=);;z~V3pPT;(!tJ&_OiUD?BTD3JfN)2~E)9@ro#rCv)p-gLgI;;13m!w9yFz8P7#fx6ebz-){EQ_v6RdsVVvG@!x zl1TBpTQjErY%kQW0OHpFGuC4QJY5-0SF0-U(_r z<)}W3Go@#`nhlN#CU199*4NzGs+|>8FpfM0^Xg`J)hrc$j%K$9e_2pdfhx4X~2zk?mu9?PJh6KLS+n><5d{t zXDBaATI}YQ*C}_=gEYRe>j8{;#O2txYt?mXg;(X*J^*8)6({wsdSFb%G5#(hGFmkc zg>044a1=GnH`FsF;GSOIE29~p?1e_#;W*W9hBtNXpNWmqC4m2M_DaXmWCHu+Li8n3E!h{aqSTL+S z@uoEjmRGh|%9V&-uE(||6JM=!Pf`kBsq}|ArG7$y9-cC;Gh(p~UP=-t7D@@U1k_w% zIm$(65_R)?U|fE()F;ChH@BtniU<_9huDw1cUi33RxwV450a&um=TPKr^{6lWgBN* zn6b?ptElex%5b>X;t=eqxHgpq=_UJEhPap71zLWW?zCdvh zavOIYz_`8yOJ-wHJ=S7zuBGV^vqVVDtmzyiG)7l2gie8DliLd+%X*mv6!(jRLr}56 zkUP8&B^$X49$wvXoqY?!-`Dv5QM<{$KSi3Cp4uRPd1nZCL(dgX`o?~b;E$*%RBX|n z3$6L^!O{UNCD8EHB|LlIy0+1TH8gU1sUe3N4WdDBdzW=FPgsC-uts|+Q^_u2StVFX zB4UegJcU7i`K1bb0>>lbB{*V)H9Azr{@m-9kt;e(So?!P7U^TdLAmD$rHO9Bj`&-% zR99s&f%=oZiBF{_OpZ^~bh!-!1EbI!U|^)KZiR#`oz}Q1f6t^aUtr6l*y^>jcVQ3F z4h*Vt^fvW`0FO+)oFrTy*?!Ng*Foo{Lrv4aycaT8e;Y(&7^^qPr7O{n|}haZvFwkOMRN#V7FZ#y2f)sG2|eNbJ%J z=pL-N5dum!T!5sw>VA&(_uEm_52Ox#;X3#3iT^)J`ic|IEZH|WW%LPjweb**{?uKG zW~-q%8nUsNV<>fc>|nQBr@ScMM=Ew>lZ^s;d;%2aocWN4PYOT4@2L(qF#R+gPd!De z+i>GqRIaC!_Mey6I?^pf2xg^6@UFh zGD+X8e}U1oF0oSxIrXL6v$N-2Z+?SbBj&|>@w-%tBY@&(gvZU@3gob_I5>74?6h?_ z!i>BekaJ3K%TG7ZjLk`SE~7$O(3~0Z zPxM-On89-|-35@m^U55yOIjUxnhEZgh_LKqTWA1fCfA{2~ zGDWto;a6L5%oi3`7B!$RdXVSW?JvNse!EpW)H&Fh${eNp$WIZTxY})iLwO&tRNJJa zuE7Gz$W1xTUw)Y8>96x)P!m@gUu9fRPKeB|e~6-Nb1b%Z;=fND6@Rle#N>j|v5R7y zD}^nuM4fik*VQWZD8B?~GV?y)Pvv<^APai)+kDsNWfUU<=~7M$*l5FM5vVP8dKJk*ZB531VlM;I0;!l+ja zb5ZX;-jT~tggJaK;U6pRn-?H!CzaE}?>lYCeoj>80jhqi82tHePLe7XSUc4n{z>h# z`RQ(9oKZ`DrBNOVZIY3ah%hnGn^}0^;e+w~)gM7wGHnH*gnBjgw?%rXcHgk_q=`#L z^XXii+jQ6l!GzaGR*?yBAMh=$y7(SAi3!&8D&eVKoc65v_H%QUJf-I^RTF=ymr4LN z`DEzwOlA?J=pmq7d=BD_?)n>@q)axL%jqsvmgR>#+hk_c4$&j5umFwFJ5_)thU)#w z$GMow3EL->e_BIXuQ{%<3g+&dj}mK^O5GyGmiIc&eAmqxc2TfQ3q%qHQdF2=^x9B zr{N$*K+zv`-cSEcHMLpwzfeuR|FPE4)|pc+adluKHD}TeLwq}Ejw9#kwBuiknZuQE z)E8&hSN)Q(36%CfFx%d?-GtuN>jaKJM<=T^*XW=9H_cR@%H|JSy)6s(kRKW{JN;gi zacA}BcFFRBobefC;{_D8Y)3b_m<7rgb|M65 z4fpOWUQh1fUIHY4yVc^kl6={j`;1n_mRb1mSBHudq177kI2^F)Zt1oV^oy!4v=AZZ^tq1p<1GTltrdKpUi53R(jTH<+Z(F{OL#98EYu zSZ@n1uTmbsYKI>W2)@iv*EN_MSMCC9kH@m|q~(}jTm{xsm>K=9p=xblJ!L0&B;{(3 zYf@LkuJsgtlj1Bjc;IDljBE!#O_sBzYsE-Px&AP3j36B{E*F0_{+tVIRh0qQ@ngM= zgP|}CTR0xJ$(i<5@+QKghEkwEDw*!w#?w7TN)796V$8FXbGoDzqEbI4ascf`>0Q~B zBAuT9+>&P-cAtQ2QIF-!*D9s_FdesR&TLQm+*>$%c&zM4QIeaV=@mn-#oDpYjF|WC z)F8nu% z(l2De8$k7!U)(9#B9pU~b|U}zT`iq=-$;Nj>Eb?1J5^F$eRlxl9NKjPs z=D=E+<4@CAVBesZ<2Ctt^N^D*}g5r{KH`K*Q zpUrBl*^NW(RG`3k$y#(ide?~=WJ-VQWQg*B#3vc)WR@{Np4Vg1H^|W=@%uhu-Fe!} zvLO|o`OyA5ds&DVOxNw4Tng}c8=`Ni)n5sFQBe~|4-Y6qsA>AFlufP>A}HAh%Z_3G ze^z&;9{a8C!c77iD|Xser&wt1&-uPV<*_*(K_Sik=-$#~*MpM5pwk{^#71i7s?wR?*V03jRQY{C#GT88iZ>uOfE>$cyyvMUbw05dXj!Ye6@7=lR^fJ@D(`;r`M86 zJD+PuM;JJc8v9cDKBT}nxSZ>MF}Z>Sc4>XK$WC$%5Nxjl0^rZ1-`lGtyWev-)G(X& zIscrrj=C8T=WN#Z0-I0|_9YBlyqcZ9Ld+XS13ACND){z$ebLKZ9yK_fu~|DGPaUwf z@YU}y{a0pk+|^OL{)M0=2!BJ~STy=YHX2KXZ`2!?5RyD&fTYq?v~2v9)mKdwuAg z^x0aDQ9c*8KbO`}HLn^`&aIlU`Qlj-&17i}=j`gr6d zICdxf(r3+cB_rVrue@EQLJ_C2jW{F>VrC3bTyD zvRPBy_-g3nYA#}|K;u7(Zuq5yyAhWX#5lt* z>2D7U`2?#ct}oU1>2Vm$VY-ZjHJ+N*`AvBCFDE%}wD_PFM%>Ez08RAjtuyDWCJe}v z<(b)EKK#B;-$@>)%t+NX-|3Mbq8l4zHaS(dcp{&|cWS_^o@ZZY(nn7It*lk(!SPjI=*`VcNOY4gNvUd z_xg4JYR&Dv*f=(*kDGwZw+7$pCh-_RH37n`k>kWQdd5Hm2aDU;g3uvCy_jO~>*};* zFE(ATZ>AT~CSz5tlJXD!SgDI_FX<2!bbpdk=shc8Gsk zjBY_?tr}`DU<$;>VHL=ch+FMI-A^mg`6hXJ`nuMnK7Ae$*GB}JLJgzjJoj(G;bM!s zBN7Icv8>6D6pc>_1?T(oH|_)L3nTf58&_5T1gvJ40C-oGf?Nrgk`!1Ut<~pIES)RN zvH6nqsry4zJgXDi>4dEe4e>V}9;6&2b*Z5M-$u75I!3a~O^#q|w$QEqj#bWaNxSRF zq4kkQWtc%nxCS7Zqgpw3&5a@eIwPy4`QA)Hq5V*mBUF$5(9+9#?WrP1iR`OnkXoqN zHBnJ8L{7f;|7u5a2xBUOXoCD$WpF5YphH<5A9H^1P$Hm1d1j#G<}P$W^!VRk=e z?w0r48RcNo*1}JvXs`8u_6{HaFkbsMM*}Xu6dBLT`F#^n$C&6;4NIgxH$vHny5nHG zuG7LcJ}^;Pw8j@)=)q1Ik|LqSbD47hl8`dh=WGjPRRr8qwX8&j`rey=d=k zsz$f?>@1IEnkV-)32IgS=zbC43|tAG`~NX?^v%zBu$%F*IyzZ@XLevG%L{1Pp*vT^ z&U-n&F(We#WW))BP{1?iGUNTY_E>EF6ObzwFCjcF1`m*$4c+F? zWpJ5xvXL`zY0@QsDE-TM*nSqIkR!iTm5<==OTb8-Pf@Lj!?eNG#>_N5Lh~V(!@M4Ap*8vUmXaX_k?#E zG`^xX=k$_(ZA}#M(IdYs46)n%)%B3n>(nBY4tjd0Tqu4g>ze=1y^u2T;aAY|!nGR< z*9KoK@Rz-P*KH%cE_h>J1T8aw9dgxMTha($&2ZQ6B+ARF!)ubyISnH?` zS6xTCe59JJ(*Bd)X|d+Ce~!e#L$r!j_kMNTAQv`&&6Lu8PP*$pSN=?a>eAhcn@lGZ zqV80Fvb=EPaPY{+J?2{u#<|12mdY27a-2Fyub!p#PHQ&fR3jbTr;x$FvXqpqki#J- zL7)EW;pYeiTBaS+nm~DumCxCsoT=Thd;czL9fU>t#vd!(~x;^ST+w2~=!oPW|JbCtgZiZPLv*Q*-~8Y1AhdINhqm zDAeLU=R|`m0RvBsCd$gjL~ILyc^WLG8JezFQvS+@)(BN{9pBT7l;r9I^Qpki1pVZI z+UWc_oU7ZKXa5~DFlExpF*GoQC=G(SrKG-j;fYS~0f=!NAc)E}Il-+5QmY@3B@?nwk=#bFXtokL0IB zHE;!W%p7igHsWye6WNo_yY_GHLBUlom4$|XGLOt$zbNhUsAU}BR0@CUP-bXgL9*!9 z2BoHVG+!KSfc@LWfK7WJ7wb`-2yMzpe)4u$MmF?OM_wxHkuy1N52p)Y=29ZP z3^p2DH6u#%G}lc|ED{m1vco-2a;plqRtJR(pGy#=SBjFC6@r#f{ZaZcz~;4?Xj&8l z7dGD>)%KS~PYE*2tO^o$W~OES!g%wW32_`T(b6gYaPwErK<2=-YeybI7{C+W;rhl- zp+!WWHf{2nX-+@Cqkg_IR_H=RH^9+Do1G_rsQmh)8e&6_*)_}NlN`Ke3yo%fibQ@; zmmLalgzOXu+dBZ&1~5LQkzjoWHU@mo=99e0AHXW>k}F_btJM3&y(?ME+4-RFP3nPI+;@9dw0n`dpRR+?x z%Ib8_Y9Soil~JjV6VobWu^jGH55*qX94V4_u}VQtSPw`9mn}Jd=q4%2ZANw`J*f`X zw(5I$%;>zVp~GjF^fYdZB1RWsA>+C!LBnLcAK^47&yj=FR=FgCiY)y@GFG;Vr#PUBC0yB00{v`ncqCNiH9+*s{j#;+S@IxkBrr?bR64DgcHSdu@Zu zuN^olPQ;qaF29tMr!JGv$+@jxXn9wq{tMvOV{^p+oK!X1GT9gf4qVI2lqyEA1%K0E z&cTC#pfU={^BWeC)+kM3fqlAg3mtq(B%$xU44;wG^+Cosc(EoJUfm%M#X%{?y z6+CSJiqpvt|B%r*{qOc`cTxru?Og~hyY_3PA4>P^*Hn7-fc;t*WWOc`?AI(?%m+RN zd&uzNX=RWh&a(q`3fzks`s`m*Brr{dg66Eqeu7i+Jy%#YN+6}nt=6|2D=KB~!piG= z9WHU8BAoV!dx-O4Hg?qT0pgb$W~D?40^4w|Ugu61?(Ppmp9w@i9;YZ`g+@Q*3#Q;) zxJ+<*KawK4BMX=;BQM;=K)d%D8ZOJ|Ci(sK~=Rx=|T=iP#+Y*$?rc}@vCR)<3Dpmb^tQnigJh)5H9seU|nnBs6<#VJR zWzm|^>oGT*{((x7NJ9>pPcd(=aNxUtW)Q+7lo?$Dbd&O4n){gZH|y5jy%S3!QBRFn zk0N5pGZFBVx*#o|r0vo};tlQ1!VepFRxXG1rDe-qKv)flGUtDlv-+ylXr$MmV>HTj zs6kH8=HA?^^4#9#NCLx2c}+!sru@mm2My1bl3dG+afYQHsab12E2)hjYw6sMNK*uU z0a2Tv>?_&Ylq`Sv(sQU(0XL09W z(AcU?l5!XBVzwS_cv;!3lM*hT*AP}IFkiQ0gLCMpj$pF$p-k}+cNR>*tm%`hxNH7k zwK~^g^HA@4md=lUOg&Fh-_9so4>2_e^P&6y;_khJn%w?=Q40zRQba+dgrY{JiENM_ z6%{K*HqyHorS}dIkR~N6(xi!~^kyj1K_ZAiKxv`(B1!0knsC+wxX-(PujkB}Id|sH zz5nc)t$UBMp0&R9Q*Lbu_0aa5lQb}X95{Eh{n|>_;IMRNarA`WYI>w6br%vIgY&2UPJq!XStBB5fpq3lU29|RcFiF&crX)mF zynD}+xM!=N1SKXuT80FUuW_9^X8?C?y+Yd`vS&FJwVrC$%MdPcN z%9F(@xYwtmCzv<(-2(DfxDkl@))sR%CraUmMY=o1j*zcV|(qam$X297>380G6m|BH*`-3Qt$UW)Xkbxp8E9Db2NSk zEe^L^-7_dN@jzWAkE3lp`}$j0o+RQjZpjGwgIz2qn{>C1H zFg3DJR=&6oLrQ_oi7AO!gKhr<*9yK*K=&saQZD-ISITq$w+DVqN9kJs`lkD$`cZqT z(RFZW_`g7XVRbUeb!Q@NWWw?pv1O!?AMsIVXDiAeuy19uCH89w`yfFhKvU1|dPyGD zRBSvgCHy=+o6sDd1gW*UStnM??~CC2^Jh4)*L!xbI+NktfnpltK%0HEUsKiXZY-6s z`W2KMjrmrC;}6G3ImE5#KnGY%UkyPX+ZfJM)hMnoN}3H%*jT+LgnLy$Y`Mhf zO;gu0v#b#i5;(09&_A`dqm4TRcE$vsT7`t|^J2O|Gt+{IL7bRx+WCbmMyK}0ZA>;n zK#TA|~WohNVgS1k{f%xsiSm3CKnySEUuH*nM zKP9v7PiAJ2P$(qoie>P&ptOgX+-GJf3J>Y2J|`l5`TQ^v5G-*uQUc z0Abbhm-nod;XhFM4+#keVAo+>$D~BZYOfEc>n!{oR0~Ia$f)44y0pHj5M z#h#OlBSVZ0A~k8JWmvinI~CaFvz=O;!^~lNQ!?avgTCS}vR!0dUbXE`NYAKXdam`z zNG<8QXBq3Lek;ptZaD18;?!W`JSUPHXL31fzG<2Zn`UFU?6!=!CS2-4XK1E{++m;d zFoRs}e%VN+Z96ddvH3JpXcuXPTT5J_D?4=MdG!QUTKuF*Cm0!a*aJOE2m~-=ki@7$ z@gCe5&}5Vvdg`%u!E@WpH{SlX(uDc`AjD`WFfsvh-Cx?uULb+Q;W%X$h2ngm00dVZ zi)3epjxY&~Gi}W=HI@P66tEdD3wIp*GsBWz5u}k+dI-_J^{Z zjPqiD0;bgcOV(lOEUG6Cs~sovyp$qOfOQNoif3TY#GEvE-QVbX$kNx(I&?i?AuN5k zf{DK3xcSxlS9O^4_i~jL_PTTaEG%?b;44~9D`O?JW%kIeyMH`bs6F+()Y)a>+sa+h zjdXy-zo+lf0e_Sb0e|G=I=0Q}H{yk`Y;+%Y&AzH>`0`3XoVa3|dUrQY9NND4Z?RcS zK!0~!0IW~WsEuhb%({1#eNPVLk>L+dwcvIedpQnvGu*~2dBCy$xOeX86Rn#FF~aI7 zS`_RA*ck?g7{!RtAY*Z&x%Vxi?%(a^Zh57<58UoS;M%U85NsGVT+2ImN6YqBduGpQ znvo)4uukE-^(Ss$eWxJNonN9^*!aUn*rX%OI5kJX8JjpwBu87A^2qj`+|X^r6vn*N z!qw#!+W`}%k`Pm+ET0)luS{nh;?ewqsYsrJ+B=qL4X!ARjAE}kGtD#oq|z*Db5~>c z%R%OQ%{O%YxSTdvQ^RE1A4=Z=*;p()LA=B}hMfCRIm-ez@*{yh!9Bhk_+fKW!a8hF zL~<(Q)h#Q+n_`pk@7G=W5Bvk`rvc^6!7Jx>T-bRpsL@%@AYxS7`_gxb4z)hpcN)YV zfZ-B?gt!~0J2GXN-7a>t0Y9~ifcdd)O{r(!aQf?3RAGz4#%r)n5tq+vkRJ&WxFL7W z0$9<_CT1N_BY^vBU9zZ5eL0J|bEj$Kc;MC|irSL6=z>~tX@pFWFPeRSJ#$X)MgF$e z@%S@V<++$$o!fs0n`*YeJyk2YsK{Y8r_Z3le6UR@&>%V96abI`%GBKbvD_1;B6ju~ zd9lD(N50EcGmx8)5lB)Lk*aXw_R1Th5lpq7wkByc<}FjtSBCDQ+|_Cm+sRo;?sQ^8 zrgv!1P!bX(;#F#0&<=*2@r>DL4?0XXK zHep+*BurQt%tzE$ewv+=#i-w{BQ)va`q1^ZSb4o+0y!Q9-!7qyiP+#TN{sQt$hIwis+SHqDB)Mxi$wPD)IS0BD5?_!~?lyzvT3n6z1zD z;l+Z(>R$JqDpWKkA0;w`51tU6@t1O7sqssDHdk|7$9(TQ#{BkxCYl)EUhYjgA&W-@B8e59anXu*F_5_wW{Xhpint4|+=0C3d z3*PEk3IU7|9J$?Y=@WQVD#FG0+Z?DoybpFD;Xo=)WpLl?j3`iUy6{)|>#><+xwZdP zI>P3AZzjxn!_;OYg;jw4(Y+25`Uq@!$_%wCJ@+i_LvBU|bqsG$qxqlk`EgcKk&=M-DghQ{v=T$=ApnqxJ%pw-zgYg(7ZC zD|ZcK_q(k!ulJT^`=Q0%yf1fNV3(D|wHv2C@VEi5EBm`J6Pcy3>HV1)w1PoMZm_gm z5^9eQ@$(5Ga zA4f3{vUM~d#r4;~O+|AYsxLdC+i4F3T~~OiK#a~HaTN=9o-_@Y{^$t|tO-lhF0MDW z!0jQrUV)rnp?SIpn+2^gJdVH1Ct{E-B9O%IaA5#*wez6YN+NJ`o_xf9SdR&%}AmSk8+OSPkP2<6;D2Tu3fxjpY^hu@f{L;1uLW%$>@` zZ_##)ho$yAwUSgSCBBK{N_zVRGIi-4h-J1=|Cr3CTqF;gta5v zyZ(?TD<%ftxT^UcTznn9toZRv5xMqLfJ)`3z%q#g0|V{Xh+)cx)x~TTLB&-SJ#X-7 zS48Z{+2-(puhhat_X{mVAz`4`ehFj%`qQ>Wjl&EY7IVPV2546~MW+VDYJx%cK_C zkNEnNXQE@*hpqI0h3nMdO-c*5TXz{PK%mt|Kd=|9h%2Aq46jMI4)KZT6& zg7-OOjR0G9W;%iF@GwlHc-b?-&u1xa_#Up2V6g`?jLsX$#m^!i*q8<>p3d27JsmC=tnBNffAzkHntM-f6+$`)M&~wFrv~))H9VXh-C2}EOPzW=x(8!U4je+# zAVTyubOSND0$JuZ$|DW%9Fonwb=?TB-cmNO?s)e=?0V6O`6ZzwYx5pXAnsBYao;g&H>_{r(8l8fZg-*RU zR$8ERZM}a!OsD5din2k{kiWDJI(bhwy?y5d?NhYt-fFbSo@qSG-ghEy*g{HE7wuXD z6;xA}9-bu zpu3o`7y&0cE3}CVoP*_T+|q=sBc*}$pnD1PH)vQpAboo$(EaBlI0PPnje(h~MnV|; zQH?|iMnvkAy$SD4K6~Y{(Z}^lJkHW*Tc|-h84d7DCc^YFD^Bm8_10G-hZ}M~9qF>zH)X8_fAG0C#{i2O^jNaUUWi zGkHDE?SiaO7NAtV(& zl^M?YWVpc=qefB{7@^4pqK=%{51NaGB{edqVbR@q|ZXx!dCR z*XPu~|NL-A7I~*>9c+lSmF1V)4UXoQ-(Y#gmU|g&0;}+gl-#Z5s_(JL#BN!o-M`%L zK(zBx^FHu_O0$_26V<-9+I1Tcn9{3due2UddjA2)BP^eaDc` zwA{|Oznb)AszD#g-zse@%^l+fT3*NnBHFsLBEK6JN71cX-muWFYQ9p8(vTGk_cZM) zn{m=4rSzPWW8p7rawqPq!O=DzI3+N=Qak)}Drj)e6#l?dOyPm&n89O9ll#pHU8ZpC z=t?a=`t;j%9S7!oTrF*;@4A!gO8)*1f;pexl@rZG1pz93 z^k9wO`>zohuf0v!oHrpu=|O_~u%WCOqEu>TH7+h&Pn94JRn9tL$`V2^Qpsq95gVRqibie zeD-QXDc^1x!yhPrf3qy(dCbXVPMs+sfydq{qbK(Jgw;k6fZM$c{vEowCr+PB9fKT8y~FjnR7CbikZH`gl9rUwiFtUKzbeCKVrw zU&iMjIw&Ja(cu1(B(_1xZK*y z5iH)R-5r)|K3SY2w#xU2lyAAVaNVM7MUm%ys z<25W?K@A$M4QTrh_HSqG@y2MEEg4tf)p%ZRFTFG}?T|BIKrD2zZ^Sis-?!t71_8k!m(d5WU3#nJFl^%}PkD?KF zEIGF>&)FCbI5+jamRHM5JtV?{EZiiqg5=4&BJxWPH;9CASmIqy8%xf?x*vv>49=qo zAwBKabgJZg`b)76sHo*0DH6W5UWg6m;PVFGX?s(o+U!NADDzVj%Pr+l*iBR=na$Rs zDBlX@=#Mr4A88n_MF=8#TVPT_)YEUyNzzGZ*>&a;ZgG&3A2V*r_CVm z&GMhNJ%3RnI_rSz*+Y>7M>_y?b}YZw?Pym-;?jGb;gD2^D+N6-z|O5y4+t;m6Cqr4 zIG|G|=i&d|zwTB&mM@|8BowFOr5$)531?e4>CfFd1xvnj(!Rd4XJfe&Edsm#Dv~-q zZC-0t6R4jUqQ_x5)&6*+%d};nQ&BUtxQa_)6KjkFvBZN?Xo`6hr)Jj?TxCygM*sMwzXSC~msnMf zOkBw#+{HaXJ;lIeLpFao4GV;G5i|-fFj|?-9#0{0`qipS|&+_ z^5F9&%3ALI-$$(D`fhtBA{hpXp13;rz|Pf<(V{6@0`oMYmHMvwndGH?5v0kc@n}PX zaH)|Xo>0^rElPD@KHSAo<@<<)|JLjlrRqy26YxWtC7V!Nw$>2iZ~Yjj6H@-8SlRsp zgm$;R8US{)_Rc-^^mev9N(0o1X%CG2-Dv2eJ`yYCxGE^*$X-$|$;@+DLTc2n)`XG~ zo~H{2F{vb^2sMh+6tyX|IcH21Rr$Ca;n$i{C=2&CzsVH=zeXxT$&;lncN(WMdZpJ` zCuNXb<)%iDii#!jw;LH*SUpzV)O!}g9AzD{L!5`z<)2_ zKT&EtuU@{jTfWC!pgA+z5^IWk`xHuTkwzy81_B@WZ*^K)J9IiNb;dtGS^V=;cQsR*md2O02l6=;^*7^LO!GNI zDiAmfr8}Jc47 z&={4lzkzr69s5DFI3uakyS_PR4*E2#(k=#HIis=jB#ro)V?q%~u$m}cU`Nffk2e}p z7tZjlM?mnP(yodb1w-`b27bFg0+sQ;EJG{QCv6`iwK0$8&)0(T%mDDiU4`i4Uq$KB zlpN;tc0Iic{B!m0>2sR{ap68v4F?~rV%g*485yw5tn}(8DOxtBza(C*^bK>hFj`R{ z!|M_U!b)-P22Yab@8)>5Y6m%cc2-*}tfze)Nl_-=8S>rd6Vj+!cHj-hIZ(1iI+Two z|KNN(oF}1QhsgZ4hpAO-+Nd7=;?BL5qHyscftG=uUy5=jJa**N)N4YPtMPZr3Nte^ zRk)FS22VCDikTK)6yMWd)TAy%PcCg)TnTx&tAOPp08Xw#EO@snok4&*25Xu{6x`p& zbTiZ32&sNZm39E*(8xO?CGR&kClR7|qD6!OQO>Fx@XH$^w<(CK6$Q*GZ3=8pE9?~5 z|Bi*#s!)YR0F{X&x2K!_rLF^kG*mjS<23pr&#|X0>5!wkGk2=`Pug2~y0bauzihn7 zR3_i|3p`S~61;Tp;G67(lbwNvil{Yda~=P z{K)9}PYSWgpPx$nU~%>`xGP(x;4)gmB_mDewD%>G4>yaH<6^gN{=wyMB-*fbD~6KJ z`>9Nl>kHQRHcS^Qap}z-T5$6#DNC!y|mOxcaPB7RGp)!F^&nt3xr2HS*ONJm2 z`1bFM%-fAiU@W=_Yl73fJ+_>{Rqsw1)FiDTqa&kSEixlsCtn%0CHcsxpMO8xl2mv)*B#usC{Jp>X6>1z>n$U?!DY`Q28{z)b6ZIbK`yTYFX=!@u*>=dnPb zEP-n5pP_U|p}DVmsK)|{Whc@ zKT2W>nd9>5k#6oC9uoU=v?iCY4r62W)H*)@TzpAr^ir*OIHs~lM6&8o>xK^>o7f=L zN_Z38#Jb`&&;3&3^K?#|A1^D-xv`JNXP(wJUKGKZ9$CLr&0mL+?kwaHlWmuWIRB2~7o?d%Aga{lxZ30^ zy3gjILU8=iTPn7ir(Q5mYV#bPrxTk~<<&B_*v8qHga|}=T4=FXQGN-yd_)Ww5bH3k zv+`5uBgs*eJZ-eAlk-=Z1=~4e#ip*nupY2>fbsF@dMJ(Nq3@jii{(qT?`ZYDk-4QW zNG@kKNl%04a&$MnZAqb>88a+D$x3kLyzYEHD=y?no-}7Z{?z5zE?j;2a|{a-;Sf`m zt!T-qbi|`jfk<&9*CV|Ez@q+nq#%30Q}m$V=iNO*-Z`-6>^UYgzavjreNEs6C>;KJ z_q!_*24~Usj^)oY=`jdD)CJa=-`p|dPX8zkBdze`O+&j%!wM7)(n4Q8D^lOW?nbc^ zDtM24?TFr!tdEY3*#gP!;jgv@+4Gx~F8+h8d<6&G{; za-H7WGcx6Vs%`Y@(U|CVTx{cs%p~y;oz-9$jz%1ThEkW0q7NPF%rlT*U>*rR;Aw?Z zzn4(eykf8qXN`JPfUujY`;`(18s(Kw3JOt+OB>P-D6B&J2ZY6y|J~?lfp*bOF=pTH zgE<5}7}g=|ZZrKmi0o#!Z%~3-R%wy}kmV=(#a;hJXE>v$8*FK> zMmamv%)F3D_hAmya_D~&YA7sIwmjHQ0Ya>CS)#$QT6(s7hDDL=19yWK%^nfE506ne%D zTPa3JkW_?cOYU{7q+zqZx<&q@?9L1o^EBs;cYgQ_d~{=AV!zMy_r(4N^S74Rusy5} zf1GsPdU_cqMwoX0@Ne|=^>=Dc%QuzAcx{z~78yWz0den>KwWo)mLqX0vAKqE*1yNz zc&VF7gu$)uZA4(q9VW-op2R7


    iFm5Bd_;mKdBMoO{nq{5#X^&S)a`K)WgP%`w4wiJ?^BxaU zqsqA+@fk9-2Ez|>*K`d6k!n(lo1RIn-SPB>cH_eRZbh^Tmzf!=73b*Rv)6}bpFYQ; zl;i9?oj+>&!;hQA(`%x8P&*jImOn-3Z3w>!L)PN-I!)nB2$L#m1)_yI;PYneF*3Tq z422YMjw>Yty>frPM;fPg%8$JeYw_~iqq}5bR$qvP!FS=ef~+Nt&t`l#-375fuKZ(Y zp!TypUA++)vYvi4j}`iS>ebu6;hJv}FE#gV(fA&_8ZXCA1S`<7CZowL)%rL1u{xs& z7t<}tPO0f(rJ!Ok=V!4%xr$+B4SUPplxfcy!_lsjw$_`SS?03}W6UkqDEm+=f?BPD z2I)PDjkKS1j5GH_fuidn^LHMdvvctsy>}L`6qs;H?qw0e1tA@uMl@ly=URKUbrL)u zi9NX6*Ifx9JKWgH#OCBgO0dA77STS4Xo@oF!MhU|Vqmf*_BLSHS0Sy+RJAf5YAYGu ze{wyTqwqrOwVS&2eB3eO-kJnj2BN_?EfKSFr_frsbVf#no}<4^ofcHOl|gn^R>+Gut&#MuSvX^jHOkrIXK{j`t3zLAdYSIZ`P#^;&GC1#v#-a3fFJty zbBVhO!61@Z4R@Esf9(TR>@|Tm?mHQ%l^?tv;gdghRt*0UR_=;G<^BHLi({{B?=U;B zp0QQ+lsS&PmQ>~$C8@cORT{6opjVJztC_E?;UQl*Y_p-hA2tGz2*2u;L?quQ1d2Ov zWST0)t5+nU#$tJ}rD>+tD3n+GH7T_2V-P%CX^|@?jHGUS5z>RjG59uiefSmAkJ}IQ zHDuq?G?b3TjRpp`@ZhBcW(dk#`anuJ|5fU@$y*vgZbGZ;4UtZEepNqlp2G&^LhP%D zo7hFYH$zq0%?b2&6ngCTIkf^ip>;phTwlI$`s{AaN(b>`e4pNp-H91^UZ`fhqGj@D zk&JUt&AQt>7lP<c=mJ;wZVVra3urR@mpHho2p*|RRiA;JHI03*CR%ig(P~Z%lO8xHgZniFo~F@ z$q2v4a31cmwHchYzP#}Rf36281>{K9J?`uM)Wl`9xlJI4h6(H4Bck7D%*tsbYpz_n z;ib4%*FHB8=s$2+g6|xka1ee^cz=&o#gSh^iZ7#X>R?FqsKW+>m#sQd2b8{h4GL-+0VZcls!dNZ8Q zPX8Hf7_o0>9r-!SV7jw(=zjw?JS|kBsUDp&sDsVmtX0g1e1OOT7B zkQNPUBbE#vobZ;9Z^}6EEEaD)wu-_F=h52bn=$lRDz6{YTzFn<{{Z>eH>PV0u< zlCTEq5Nd31|NX}f!T4JB;Kn2_0U(^n?o6(yNkA48ap0xJ7v<1$?lr-QhEzUUpDo`o z9U@&mm|Pk72WdsSvWZ!RQ}Tx~Ol5s17lX|BIx&@!IP#@|lBSwj`ClR2obthiXCxi) z`2xhA1YORu5vBeOO#*h&YJ(!c3s?Dk^U|#k$?7pAiRWKsh9CVq>cy zf}^Excg%kSdf5W=-*yG(ci#W+q*(p%ce_62o_pFU+W>`-5)|4NHg;r-Ke~FxUOhu+ zCXId|c#~~$p2LEta897zhz~zD@VFR3E<(tN*&BEM-A~2Osi6(X+q%X&(2!UqoKna+ z*%Y7Nf_r75$V4Ki@?7QeO(;qCM{|o=LsUuOzXI9~4om1UHpCA1?A`m#+rU!MZQ}5a zdz^bqoe^4uS4yasu|n||flSF&6}>X6QW2B1505zHn~vV)b~Z0WI+~Q<(I|7To35P= zYz%ir0L&z8-c#H@fTf^!VI7-Q7Dx=%uKH~HMB4k;FMqgMfArm4mF9Jfwy20`_ww4x zaT)6^4NZNGft7)ks9x*QU#Jhj?pkvE>3+tu7y|6aO!^5!^#+}2FwvLa0vHax0o%=a zGa!=1=`wqa4&3QQDEm&-$|UTZ=-bzuHFARob}A5C6m;k-@Y3{c4J7cN|32{T-P4c{ z)YP~|Xi@^Jj$*8{SsPr8r9KP1dMhPB;y~P)Ib5>JLbTNy>%RP)U)iVWnUMhcI-^IU zSH6LS%TH7hx@1fi?a49u_NllkE#On>`pJ#PH)<^geXSE=s`qsGMeu4O$C_FHd)v z{djkMe6VV*8CSWL0@DZbLzhB>8u*~A%?Vv?Vhg-&=W26872d;*YYy9v8r4z$m%VY8 z+DS?uchlFuBlLys%^swG1dw}y6=|LNI?-4mS0US5L*X~ijxeNN!`;^KP)XrGsC;{4 z?5w4|`dFn=${D-P&0M$R5B-Pp&{Fk z5$Cw0vOxe$H+*@Bq<#Hqwv#F>7I~QRzhvK4gjslHTYHv`PL3Gxz+|58{bT~Wd*nXA%bpWDo!>x&LUdhML0Flefox> zI$ipxB5YlCt!AZa@N1HH9mmRAdlnE?Nba+xEcdq+uQwPRD*;=9M#%KhiQ>{dZtyG* zm+vELL5L_%^J=?yDH3?Nr*C%JP#&zDtv&M0x}BywbnD7s;ebaVFj;@B$92W%6Erb> zxOU0`y`3#>dBKp7sebbHx$UyM_Br@M3y=`@^s2N+ljF<1E4-lv zGLkrv7UI#Ip?6D@#ug4i@H(v$Sv)Cl;OGOLiZDLLm$nCHKZIQmWL0GHuUxR6Q%9FS z2(3vCH%#EROAU|bG%t3;C&aE6-H_FE3RAXJD9w8Lqm%iWvnv0A?{{oxXkSY$KoZc- zhi;Ls|9VnIrH=7>^NuBRDp_&ZYLL2r{JPF1Hr@GT)(mB84u%UXn?m*^8*W@>cwR<@ zbTB;Wb5WJVFPnR0D}s({uy#m*f6Q{-2juJAzRg)DVtzxXdeM1yxsln%nYPK$?CLY0 z2G*mBfj2t-BfN@aWd@{xO*cdwVgIU>kyM0Kqqm z+I|(E-4Y%{t9gTSjT9?IBWuEKUc2>VHYiDEOklM=`w903%Vg-(1i_{LlKB&Qw2YgV zFZ;w}`G9>7MZams!S*PO9N2>>-IHdjL=#jx#?nO=H-wGBH#7^|^1BB;r_cQhJ(xah zStre^Fn#mey8x#jEasn%fljZ?;lAIZq*F623jT=FHJudAZm@=Q8k=vxcoUwCbC)Gu zsO0zRevzf@P0*DU%)Q{*cF3<|tJ%g|o%beWnhIfLi3@J_k=U$3k0#Ua9}t_y=%s6y z?=-!el^vW9x9_#$^v)Jg>2$x7U;#u4^hx9$-C?TDR_B`=Q?xKoTWRuXQ4V7Zq{kQ5 zB&|vSM2wVh=@a9x+h5WiMB~!{ZMP!k)th(nj;;t48KXA3AAj)<6&|2vvKlbLNUpD2(CbiMM z*OThyC!E!bg|~`k;fN(!69GpkCdC8hBLqMpe)YO}&?!DHE}Dx%w{ zomv=m?o+>WZ)B`E(m9uF?3YGrlDGTXvQw86Ll{VI{YYi&S7?M6gft0QyyvQze7Fxp^0+izS79g6rSTS@!^ek#A z6zM2qxQ-nCrPBiFNS^>Z$x#f_LSBmoe=kCrm)D13LrRBXB!{@G=_A0#7lGLLdPzv@ zZTb`b=QbOEN#*R~c18@~1j8_nnHJHuKTgB&$F@OS8Uae3pZ`HEGGB*Kiwy#{R(TFl zvVQlx54){~!VmJ*zaie%Z7E$1EsR<&U{$noy+F2^{EC)JDHS6Im9%#S^vg}w2e=l6 z1L5!18}Z9oDNONs-Hq;Jp*lhrr?HjKio*SF|Glv9;}jA(?_+zeC3}!b<655xeRr6)B~GZGzC!7ja}0gbT5BvVp#T%zY7sLzqJaH8fzJ4 zv*b3UTYfoC!?pr0Ip(VNRa9EfgBR`4?W{XsUZU)}&ZaUv@k(8WsD;B*_o}=pC0-nsn}Cz|0%qPQ~VwnH|5vpZqcnM18^Wv*p~5 zWBPT7=P)&D&sPq<2Z@IZr&@A`>H{Ddo_Yjrs;{e+wzr9yRAewqndBW<)kFMiFaWRI*u6pS(YhSKK2%k?6A;o%HQee36I z9o!NIqC{x*>|9H{NCAd%mwLJfC0Crr-DD9C1y4A`wt&Eoi%J^*Pyv`m6Z7kNR-VfP zq%m;Z7>r+tE$& zv?(8ihF=>3GHk!L%3gi)?9o7KZH?0+Rp$c2!G$*p(y0KBz-VEvXV8I>pxay2&}Wxz9s*CiKlFkcZv+! z;f>B0EQLWzJ?=OxF5y?O^1Yjy?FBqQFU77-MzCyNgS6QxaS(ycl8+KLtb9z;>C-Ke zn^-_bmCeS+NUOYAOdX%nPn0)iw+19Nu}^Km@I-utv#sJi*aJhARiHqb>QFeA%HFBT zPemuu9yBSRi+C@K+JsS)AxQ+Y`rDi9)$SKN{n_!ah?WjZj;wPU$opQWuTcu^2WD|yUOSPkuH5$z}Ot% znXW@y+esQ69Z)te?K?(E3^P+2Y8o=VGQw-nU-9M!wos095In$b!^*sOjq^kZWJ=(R+$p;Dybpws?EwC+I3M)3HHLHFs;1g)V@jUs}x zTZF2aa8CDZ-tesr)Rv9XtBZjYIN)viYtmYW#w@?P{oH+8eO4Y0P=LYODKA$vfe^@q z%%UGm2q-x-(JFfZCW@YcCox~&69Dk>mM=<`UEAVHSHTuIK-xz!02C;SWFND>?U45Z z0uL~)(ZC&Nyn+jK>{~8O= zE?gmG!}JxNpAw{WbaW)@xOn1!bdP^eQ%@loqWd{KbeZ(U2B`L-bF9c5N`5a4A!E`k z8K`$iYrSk}g5H_UDHN&MLnT?R(+>2$+Yetp;BMDM@;}Ap#u2QvbS?1nGZp@$Zym@T z-Wnv4s$`k5lc`Cr2v0|XOoT%ZY=~Ho<43vcuLcPOeqbIoZJbgmrv%rll*<=rsEaZp zBz7>F^K|cv5X-vBqAP>xIsbf+a9#V`YjwiW1uG{o-opY457?UUUQKJ1VDKpPrPCEy z=-npx0$)#BjU9SGajWm@qF=ZsXaN5fQS{=Wc&}o;>ko0^3sEn>5R

    vwGpEi$xQ|GIo*}l_U>bd@pw#>R9R9l1VPz8-k&AHgy=rdNk z&X0d`@G2Hy0Kv0bKi(x;=pIxY+{0SvfMdnvYO(`6*dzVjx{F@|s3oZ9aIoa|GRfah z@^-%Gz7Jhqf04K3mhgqY;-06kSjOt-F|Wy=+@eCF)33iZ7`2~bxy|Y2<1y&#{Y2jj zpSeSRvqgG`oG-i?7Wm;NTS8OW)beR8Iz{R}1jg|R`hD;i)EnV#W!O=oE!izU9!h}x z&@Msa46#Xb90=%(&PYF;+8`3LS@WEdsgmZMjEZSy4J%)>5z~_{kkq zD{!3IT%h7Nzrm%WH*ddZ+8!Sm)5&h}NtX}P=b5$_d(9PLo$IH0ibUr!Tn}v$3A$R1 zLb-JA&9gL!P%o9tx8Z1b&uS_glB+QyBJmTaOMh&mZlb!Toxy^FHmKFs1g#vF*O%$g z1ZYan4q5n>XaMa)oyvnm0-Tm?s`{W)NcZ<8xM@qd+ig1d6}IKMO+6Q2V2?P00LhRI z@r3jYm&#A85ZG2h+qJjr0cF$+s@|j7IUkShA~JAyt)ew+@hwG zxtutm2_gARD&cc^w-DFEFL_(%GcwH!sk$8F*wbc{zzaXqS$h3bx@$~ZCzA5o$>kT5 za=W>Yt-;=DZdA|Cn=utJnOL;>toF^vX;ymzF1zC^m_@A8>xKkpdP^)i_RAK-2Adc0 zriH~=XHK_U@4?i}+~ILLM1HzD^|I!flj;sVvAMjdqUoQRcAZ}H!?g0ol{SS>_Uw$^ zJ5A^e;CK73;k=wQ6wk7qMwe-JH^e_C01I%^6!xfmNN)F0l?q9@x9&cfx_q)h!x9Fw zkW%XW!DzxbCRk!%U;h4t?}4n5M_JNwV-~JAcTm+wjewVlF|flV`SgFq_8{iAA`C{A^7`^~qVhd=cZb=d&ScJ<=$qIS0bLyyeR5omMh zSMt>~yKXxcdT1LOVm$)!13v9yo`!~%3!~K^qYkPsSjj%et`N-7R0N3ICF zF6=#h{iks9sWrFfy{@_S8dsXoE12o6VpS8hJFW>c)9PCfS9r;q3-h}fgo7j%DECG>guj%-%(4aOeS|7W)mU{f|8tt{9JWGz|h`CNELqB}M~ z$hnR!T`1tUol|WBrfIgb3$}F6f?3;(IXuj0xR(C9;U9&?+O9omG*8l#jHp5yMea(g zXi{R0b#;dGqoEcKqvAHOZ3?oc zNK{S#t!cC?nu~YI7CIsY!^=wM^6Fg2QpTRuGr?YM>#=0^T|ATs+2Zedx@h!()8?^9 zAemhzqEDay!d!WfWjX5yM|`y(IW2MU&8#|QV-qz72?BmEF16mY=!K4Ag;pa`n)S+* z36IRc2@VvA?};cq>>gBKuPFW`GiZSmiVa%&ob`#w@Yj<@NV9`yIh}OsLdpaOd*Xcv zpAam>%{wnMu0bo01zdCF2&^d)G4oKK4aXSg1CHT4b2L%ji!w3(R?erl0~jD(f5%Ue z(q1#!e6=2W@urD?i6?X9%b#Bs37D@M)>S}zEAKooedCArlosxu-g0@A4NrZPtF(KW z2;}{D%lmj9sRA|2)*q9|jdaP~TPL|tAR4(w)+>R2op>u^2Dmna{r~Yvb~pgMv6I;Pbv`dmu41Q!=2v+S*DOU1!L8WNQ*QRCM>!oz}fNzww~x$`~*_YjptB! z9^|HRL>R+tRar|&r7i&yuEF`o6U1x7TWMr&~X#VSoh7|j>L5VLXfc|CEQ z%CpH(X>kb_Txray5qQP&@IcFry*zwsk_5wlhG}7a%1(O^&Ryf1&|7smr^f&u(j_13 z>za%X){a2nZehU>anmb~@z0d8jS^yv5)YtH(C;^rU^I83-)}VUuDQRES|Mc?cr(i5 zfd;|wYcl)Jk3ojIBJ9**>~m^{t;yX-()MY;m@HRj76V|B`HMoKAHqcj5|;RdH0luO zie*bTL?>IkoKc$A3ro7D^xKP>HzwS@Ewjmiuj%Q6jtor3j*rcyWNtH=v0e=;9wQ$l z-6E-p6&v}nXmO~!V+ZyrgO^;IU9Eq$_ts3J^a|9b{v!H3^xHoIT!Gsa{Z zKmb$t`#o#LnU4c-;Qc^zB|L{EEu>A6dO}KXv2LgqSKQGgxzSEdj!&jug z1R#hEz64LBQXqR840yj^v7ROR@i@EaaQ3`ii+#pG3Tf_`w$dBNT4Psz z(Rh~eMdh{5GSbdNOO6O_Eq{@4{7Q6C@`7HRh&pN!T2aBs4(976E=XD8)8b-u+M>UITIOxbT3b+&gv=SJLU&#t2g~Jp_fp^iPFKq9jhi8+ zoDk%BV)R(`HZn(P0{JW@iyr`HoMFqyt1PxIqwQO|EbZQtGgb-ce3*b0jP>ahFQDoz08lD|?8I5}nKGg^w}P14Y_;@aJdmZjTe$q?uM7{&})>Sg$eFjbIFW1O;eYXrK4zepNmf0i()Li&jgC| zZ~Vut`P7VIWi7-^Fj{!`$z!Rf?1O(&?0k`g5-Z0?tjkxOuWB|;nR8DvISOj5^RwJ?okVcQDN?V3Rq@X0$UlJGq-X7`Ur?cDfbxoQ!>fd3Da21%sQkSve_c;cqx+ejr{MHFcJ=E&q)P|a8=YnvyUKto4qflQwTnh^ z$y1({?!zvw)BLonlUZj*s*g8Vc^H$HhxtEw+%GM?)f4Y~MRs}aUss_+Z!Kbg6@4BA zW9Xt;g^L@yR(X1knx2W;#y8nQftBo8KD*u2(!h%TVDsmNeyZz$jbN|7Y zzi&Bm92oyH#5ffT_!jO)f9g2L)ce2a0ybAN8+ZbEtiayU(R4ZBI(O*~|9UTeg9_Z9 z;oWcbaLiCTo(iXVc6#Lome4FV(;Gt8mDfQ#pU%bo4m|G90} zvGvrd+aOPEB&qL7)PJZkBB}A zhehkxu2K%`%nglP;cWD3N~CJ8F_A-T1#tXGZ9_^b?APp#dC=BzpL$6*sZq>FXCcKY zqL}e#g)=M0ltyO5@;jIlnVlS;vWyKBNi~)^s0GK9=#+j{qT@Y$7VuvdI`HTLr;p(@ zSS{FjOz<{Y6EiIxo%TpTyk$+-luU?!%bBj_G1+;p3#+{` zBUj{0JRQdB!D=K{1m}^$so`rr8Kj2eKVfcLhe zAOD?-G-n@rCd*-V|20Qgd~^-)2cU@(0F>FQay~vvWiw0AT@WWKBVMLbv;#Ecczny^ zQP}%YAM~N|QkVjDmCf@w;9Vh(X8*Aou=0hrZSD!Ws&H3evgv(uV|H^ou&uBvF}t1O zU0y-Ky1kXvT9k*S>(cQ`f|NE2Uah71%1W3vrIGj@!{^C8x7<^eRxYd+Ujq>ngerT8|kY}T(H|v3o6J4&6(!UxxJG~$<7Fs`OBO}dyd_AcmlV&dD6EUekCG&D^CdV zp}Ff`wj#LGy9rgjrC=|3V$<)#6|17G&Ot~uWBY3upMU^Yn#uE==$lEU3(-3?ljCKf zVxhYFvJqnwQ)u3KPFkig;hRD^G18l`));>u(?W}v?|rF$(|=o1xMd==9B!s1bq>hi z*hRJZ+{bRU`-XiCYRl-;*4FkLMM=B224L=KF1+vJ9XPnSRDDqR2d@U^;hAo3W( z{2dGEYgKK6sY&uKwe8-P6QRD1#~4B^fhZHj8Wa^Ir6JVbiF-37He_8D5P8h4k|~79 zUzA8uwy5eaKAf8KMRW7ZiG?8az$mWmPpLtADRAIOa*3UCc}e8Q1(pa^(f&O!?5m-I z$x2(7C7i>W7p%|*$u}-nHwouaXCup3ZF6Fsm!Ll@<>|hk^7Wkz8cnEhUIphj;uG#X`dZw zzc3#MA;?Z<7Jx`JGvzXMP&dn%JM6S!7v)KrI>YS4m;96^b|c6A3zesOv3_L*;>lLX z);#GoW_a#B!zlhVN1&&XsixFruy_&8W`1Gb<3sF!$$mTr6DpEK7>MEgT>4KO)>J>s z!@F*Q?G@VF=i9&j4&-*Q(9JVjXn1tyon9TdSD~LI;XlcwvMBk09}-xH(B3c)9s%dnP z)Mx8Aky7mNvAw~HtHhI%-2l&NZsN=Up#KL|Q(u}X76TIBh|V~?C;$9UC=y`>m91Ba zI=sn4aT|?0S?{pI0sbCTX^F(0k)LA_ITTt@lWTg8gXT2NafV3wH~F#IxLf%w`EAs= ztv|M-(_1BtmvXOn8I|>YX;BA)f?Zu3h5W4n>bJ&(uus($PS3i(S6_YZne2Il61?Oi zBy>4{DW9t;?z_U>c(&^}WBcdM;-RLlvRH<^$?dJwNTC$w*Q>sKt25;5$tN#gBisyF zc-Xm=nHm6PbJ#G8h~T!09&<6LV`Hk}T5dlkNpthaXQ`=HGfl6kPX{r2Po~RtN%4f) z`W8`Z5ZQx}2;6piSY5bxz_^Uw_(d%{OR@g^H*lW1LvXuteH>vbkuyi<(nb>-!~CpZJkb*^Z=8-ez&hPw+7WE%k)X#APi$S zH6n7O%QLo*9ByKNWq+u_Wga+@4wRScqXK)zj_5cE6d>qg7O-WS%7(67>{`uqI|28XgzTaU!@7UeF^zacw zC~TYpR4o>;FkJfg7W?rH#;djqw6<=x7AuX{h@x_%Pxd~_pz9-srsxM zij&G&KPhl|f9K81YHVM<2j%KuCKD5#wr}4j_BcTlWB5`3q`||>A9+Wy!tbxbjk7`?A#cMcq$euC9JKQ3w1_sJyHjEii z7ulv{aG>)1S}`eXzk!%f5wGa57^C>ROfP=ph84VAoo*febBs#R3p*iCH~9s$h$d-m zMVU$C1w60|4YP>Bvf*>`+f*Yz)HHh|f?-WfHAzsgB~U~M&`*-VZKrhQFEUoi3#y!Y z2TJvnoIA+i2eP5$>aGnQ3l0w1H;a*gX_KL)D9NkO<5b^*Ee9>)H)fe-GUbsBiwuD_ z7-91K7v$fAJ!fuGTHw=fv8P2o(P5?Wg*Xr4WrbmRdvbQyh%>)Dq^VQ@SHeXRlNX;6>Py1PV@)%MK+AWbi-6N$zC8 zl`AF|Dt-sN&dGKq(nW%XxL>r2s3j}3w8MRu;chB%Psw5Yq%!l?*aK9h zf=89{90i**gUupFBLSm;@hl+M={6^!#!qPa=)hf?bjr-`40c)JN}@LUJ{-3P-SnbH zwrwv3oVQ&rcqp3TE`+P|bKY!Rb$n6^x+qKQrD3c@et`WPX8b0rqb|m%>O0CtGf?)0 zD@dG;_7_lzngFKg`BtP{qqIzy_iXO7pElKbJ0XI`zvH%N=t5`|G!o4cE|B`7M%0-X zKb>-_{P}HbI^*V5zuMd{}jz6T;dh`-_aGdOI%!84Sm&2$EH3OTC^azjG zq-r|qU>S|4=5=ag#@ICc^X)^dtAwbmjOd~Y@a~1lW?3DnuNB@l<3CFRBD{AdY4|GY z8Udke&spm6^OeY)l;9bo-ZK(ppvNBSU}E3VfF^|&nb@S@4~ubJrp3(f?A`3 zfaJuH;7T3#pcGQHAK0twBPD@zU6J0}(kCR-W$4>x+@zZ?FUaAG9TQtT!>KjKX`IUu zw&1+Il_TR98~T?*grxiE%|!XQxZbQnl`_tdGV=UuOgC*QxT3OnzgB^nrMvH%-sz63 z!VzKaZc)z)VDAi~eAx8~4qmhp%QL(vzXip*AD|)zAK@vXc}d!{o*5pp`ypGdAZ_2k&u1If^KS*GY@WYkja?+}UpH7WdD>~up{Q*{ z%5=Bl%N)Z`oy{0!q_whfc;~sB1v~sx0qM|0X5&v>AA4vjDrTm>$eUM~n4D!b|4YmV z$)6PFg@}yd&|^*pbri^yTt!Lg_drRhsVb&WmCmC?SPp)$sK=AD>b?RU-`jOYF1I2BifA4A3=TT%I`(TuiO}o z$PKjShl=Pbe%dc28}a+h(PFW@ubIiU)c`oOt7l>Tz04;S^rB)jX~E#fU%e+q-x3vU zxhS=qnQfx|dc0)`&K%&*(WpltO^&>^T;JIbDG+_;S3q|M%BNIumZhcewr>zM68*e3 zcc6_8JtSEsC5->%sWaUHmW~KQgh!m1XjDY`w755#5#C(I4iQHl5IPKX$z6i2RI>S@r1R!`DA?wy3+RoGon@ z&y*t!eEf`li@yh^VdtBd{iMb3MaaN{^(@7F#G5rZEr$FI^8P3=m4WI7LRhw6wP)mw zy%9qUdAgMTa6&PS{BI( zNJ}rN_qV{(*(&e0ERLDF%=QFQFFfmijT~?X0yv^OE#c}ZF}LqsVL7isGiz#n@0RAg zU{e=WHu*&BLic7IJqkqzNo)dZ%)}K)BIZ-dCHRC%C5YSAu)#hwi*ib9&R)q z>vOJQ>^VLXp%#ClNX3B7Ts>u(cvexyrwSH4KZ2o{L%QARJ~BiT(YD0*5L=RntiuS7 zoySRU+m_x`=1K!!zDHo?%_>z3*lhTg-4@Rw0%bK$c?@{+=Gv%uA0WCfg^iK9Za7ad zMzG3PL|Yj%u*137E{0iJnTnH>;|0CPSoA=E5%{YfhbYnr%O6%@F}$d#_1lkU76*P= z8xmgQL1d^wtW>TqxtSuUkjkwnz&i{1m_JvO^Un>K;qBu;`O1FAfk!zopN)@n*M${W zkCQL=JR#9w*l6j1F9+ap3T>}^Ds2s(Uz{?og!`I7zoF4c7h;6(FMgg>q3@(UjzpB1 zDllK}sb9%U@1^tra-K<%y)Z|@Dx9j@Ff?)`Ei|F|GcwncFad9aHCvSItf@Z#cCgv%^rrA{um>qpTZPG{NHu5f)YEm%KnDaqST(L=Cdfr zK5-u36vG5dJ)Tc=lFl2{&7QzHIHJH;4Q7*6{jv@+IY_||)&8QVHc^?0bXfon&aw;K zjB-F5@=jk5tmD?P?I-phJ$YlfaVfa8MGl<)=a{F>>9J~yw$o$iM^oOS(aMtVy(N&n z-8d@u=aQuxaf;)Gd_ACRrL%vf4*jHbo98<<=Tr>8l{UVxgK_{bf-T>zlxhx>>a86a zwO++BfUK?rNuTAw1E&ok*8zA+J7dtp-*oF(7RsW|ZW3$*JAN+F1hI@C=ZDKGRLk5G zx#7v)ZfG>jal!EdW8|lRMn$YBPPYqz9yb_&E*;AXwcq|s>gI^6luGPKmY{Y@3)u^H zrDj8N!W>`6iGJl~=7{T% zL`Y{soI4jTxR=2GLj9zGP7VNFzyeG2?)?u0Xf%jlJHz<6X?!xOn4(W*x`g}Sj&M`= zD4hY;(+6$vNu>u{I_GN`Z^qC%wDeJCWW;`Gwj4JC*W5(X^4&?HZC!0~l9HA=&lP+^ zUDGsL1A1VPpB@#&Zq>&~mhe!^Mh#98ovIE;yaDTQc^m|Ugc#m5Ni5`GYd;|=; zz6Z~L8|+)wZf$o-UUtE0GVs~NMya$|ntzw>0JfnUtC(1sMF9!uPfLQtt9X`bfNfwP zFz@1(b;SL-dRz_a-eJ|lfn+WC?*IXQjSE&866$h0%k!yzB##er>geQxS3en$=t3XV z;STe>v;T`(N8BBP7Rzya4uYV&cWUlemN?5T$G3D~Kc50riqD-h&I7ZdJ$!;Zlo#Ld zfx(3k+JiAzzIh(E;gb)f^)V~07j=<`K*_|Tq0g!o)WIm{^ zE`T2!5rms(c#1kXubr62Ie9?W2;oep8_1NT>tfEG-2)B~J>Fl&eg(RoS4aW&h_L4y z%>`icvcE{XHR&aOC>+i+HC+PxVvnHL&iF&x z^jGM6oJcL9$cxX{3td$BA)_qO_Vydue*S-B4oIbGK{b}hj_MGA*Rr{@6eoY;;4UtE z*0m4T*ud6D7Q3LW=mUleZ_QiZc+-B=GTA|gEs0c^bYVKt&o8e9Ew&FW2))$vVf+p- zzRc6NPl*UZiN1b{wxGfL*z9IW5-Xn1Bk3ZLIM|Z)44}(TJ@(z}%C^pc?mJ1-zi?~^ zB;q5W^=Bc<`|bhAkqR%Q%S)HLqfjG`tKP06TOcN}s#=IQ5EX|0K8AXQ9Xz9{DEPJq zmZY^<#WsM<&X(_;S77L0YW4XX%&x$6z;R2zRVU6*Nyv2JS(W!jE}UjWt?BnYiL~TX z_5&}nE)FrVPeoIB$ef(zVN2mgV@_51WVNtz;(pc!4da_ZX1Rw)swVofGR{?FC&yZt zHd5cf;70nKrhD#t9FyFomX}x4bkn*tW!QI)`EKWihlnw z%-md1OH&gyy$6O66Z;#K&q&6Va2||j>lO!lE;IIY1mwp-bz=saLs*P^t>{$YH=v-gyo!gaAz&9FcdaP@Y zSZY5@RZ7q0tTRZxd~0DxHn5Y83}Bn+EdO~a9Ir_^;<|WZrUc)aoSf`4GBj*7rd?F@ zqcPV-SngWhq&)mk?vfo#-xhwRerKSs-?k=w>}5>4I={NQdNn*WloO`I3$g>IOen`8BEebT;M>4d|bw7m%(8=guN{UY0` zdjusq{oFjSpwDSV%ETm}^bk}U7&nFSt9q6xSsmHC-e?Qoc_R^@bNyUhqt=RrD!`uk ziEqV$^i5GqON&aSX@mdL{8Yye+J84SHNqs>x;y4JA~6+zMe~uZ8l~|<3p}apOJSj* z#2eDb?XTb6kG{?83Q83f6_u2T6u(v5uS6^~xVUUfA5+C{_}k(1&K%IF$1&eUDCal6 zJo$ajEv^X?O+Q>eUF%**@4Kf=lN#K4^^iX)DXDN{Y3Z&~5XZWn$4gMrdj$mrk_X3T zS-yqSA=~+s^~rK8g#>-fxYZ*Rh(#Mzv@t$DKFHYr{iD%(iR9_%${j<$tB^r=WK`6W z*lT}&_vTrxq6H>751lRP<7&qKyXIHu%6zOC-M^SVD4}RK7^h$oN@rTx~8tFqA?5#2MG$ zNPj%IC+dO1->a+KwB+RE(y2ZCMOcIL6366xcNj@rrFpA2dB3ZZOl;v-^N-(0*HsEZ zPjy@V6sSe%fk2=Vo40Qn`FVN0-wM;ZIai{&92xh%G&V}_Tplgp-rn7ne7Bzn4E3sZ zWxQH>7QgqNXKFwvUIG=Q6;2XH#31=$EJr@)fu$8&{I2zb+ytt8QO+YIBqTzWL7xG` zRQ>#p_&=Qu@shtyQFgx7=ZbBTtlyQzl~H4FNg>0#)im?=XSg*Nu(px2-__+KHN)u3{eKSAdq9u4P0;O_1Og1ft0aCdii3BlbZI0Oss65QSGPQJbOIp@dy zanHJIy+3+-^>lStKX27j)%Auc$cdxA!+!?=08k|*M7{t3uu}j4G!PLQ((@~81_}TG z0VG8PmEAIrSJfSj)Z=kYT>1At)rbT9h=#n%Mt&Th9(IJ()pAbPnR5*2f;uE@nO@($ z0MbUU=@bji*T~a;N3s+cF&CN#liji@btr#TRo(m2LRvH6a;Cm=0~{h6f@Q)?1N87q zf6N6Ecf*1I3|t)T-T!Q9xynuaB2~(()p6U9^U@o$expcTl=x*Z70#EgtmCLxL5ij* z`upPIj;?V|=TQNNUvTeon|FtX_KaK9Jmk4gz|u{ISz;BUf&2?HHqo7oh1b@BIk6Z@0&ccL}=3K!ac&&eg?p~C%7ugi z-~AA2L}1x}jro6WYht}OSaE+1-kKtj++x-F`{cyT^YZ+aX%CY z4u)vx5NQ6tY%k`!0k`I^*a=f!CH|v!&-T;JzcZE=2$yC3`}~T~;!cI$uqpS7|FqhGLV+lR;rXLxBOL>H>W%75=`F%rXMNSj3)<)oYG}?V;bu9!L~}{;1nE zdi>i84%D0+n?oTt1VmGJU;lOdrNe=N1My>_bc+5)=;*W!ut)$n04&sCj&GqTCE&ao zEQz!@O5Re++P@pSt;ZzE)QvU#P6H@01d2S$L6i_k2K>Z_643`h2|@{m0q8y#gSpMA z5W?g<@eGG?$+7>4W4ya45_x|N1v?F1F3o?}!{LS6gZ{c<-HO>Ku826M2aCKh#m^kDHK`9IV>z5n+aWHtHufQ z6~G{+Ado&6j+Prx^2{kQFZq`(km`U1Q+`!CS{kVzTTY!(h{sDHqeKx4O!dQ43;fLp z&cLEUqO>=PLq&v2h;*E>5Bh@Zf^Fc>bFrv@ee*LV1P~b`2zqB1X}?l00r&|Gl7cp8 zW!bBCCryaW1BH_|@`w;Chq!(_Y9*)`q$N>4>2(AmJcGkf>~}Qc@UAnbW}eB{&t7Zjayyz!HGnzEJ*v z?)~iIuZ`6cV*Y)o*%$zdg^l<9!-xeG!w5ch=UK4A=G}V~ga!c_rF_+-puGuD_jGYntY zTO2E5KY*3_$@WbBiQu zVgk5#mi7YX?2tOb$ne)K$d-@W)XJ{UYLp3$n1)>de^ef zFVFs}GRrB{?28Po5tEGJhm-L~8Np$TV!n)7)9C>)IsNCaeps*+wbhKs$Qy3K3BC{` zvEosiuoT2tjfr&c8C?l^+Yk3^Ilq=z&rv2sq^jL(ELD#MNg0w#Ylz^9htmn_!2-As zCo<(k9?rz2sBtAu}bRo?!s-QB4PN; zy2RnY`ZaK$vj#|s2vOTz+v4NB_SFYr_naZf#hPw4|D=i^A@NlYBN()S+wEtP%0Sv(9PVzfLQ^yo z$e2uPy{sYm<0{xf`-krWbueE0@T7|W_6FvAL=cz`+LJ@m;0G0~z3`cMTuvL}Kl-hx z#hb;MULrKWCStjYwysdFqY=gve@BPzOLpzLZm!mmI>!m|y;&k6smc{&-`6Cm(FLK% z*pk}GqLjX5;VjFPz7rtq7l&FqXvA>|#?+Yd)HE<+M>Jk{bi0lDN5bS+uEv)5LTkT7 z(yJ(n%5n6s6b4Zg(9K(GH+!LaB|gFspisq*$vWmOY5k~I{n0oa56h;*sPM;%RU(>H z9~RbR(Q!h?c^{|%jkVl){P6uREa(LSZ%Z|vWcpdi4Zh1dI?_-Q1qQ+dUd)P*F|Tv1 z&;M$HIQM9Fau%f7A1%X^Av*jV4s zT;6&KtEck+yszSn#OTH^7z5uwwDyTCAHuI@ zEK6lgr&A6e%H#UjcU!nfWCF;l%_OfXj@HrgZ~n5fK?IC+tZDo-!r^!1229_b@@g{Y zcBc#B5|x0Fgt)lAWFo85SKo!e0cN+Yz}&xT>Ap1KaxBu(l;XHC55SjJp90qe7hwS^ zEIL1GcG%#v&EPF{ z{$aM!wd5s6TFWx9<*-ACj_OZB8oCnJO5|bLew^>_5%Yt_3}N9&F+{NDEFf#%u#!{S zo7(;6pI#Rg>$=F6`uklUV(YJAbOX|`wXUOrzoFT!Nbsc`lNV{}C)^(hqXk>(!=Q?% zRAx*8Bk%UMVr;e;Onm|QKLYa*1BRB%l{DtFV3k#2*KbUeBTGu|M+$9L`AtMo0vLdu z1;H{A5%-g|icE(!4UAL~7g-dtf;N^CrsRTS46oh)u z7^*X;z2(lfrYbP+YG<%X7hh!faUK4_hAM#Q1cEcPjODp66)o{i@?T|`#kN3Kjl>4Q z5R664vB|%4*9l!D5MSz&)(q2QQ>C7sp^{RPn zdLyV>GY6&*XO3b(>?V0rRjJKLf`jyj@2*9WaZ z%RPWG1b_EZkoh-ubms>CE>2XYu2?Fx$hW@AW>VpSHEM?{ac$5-`V-iBAD$s9E)A=` ztPs1?RG=ia6qgEuVp-;q3}1#-T%UoQeFv&h_0;H;MZB_1QCj2fkE|rIJ5TNmN>g}Y z60x5Mx74{vd*lM-&=GNWOEr!%khRLy?i#qCB78VSsh;YkH3|hN;@D*KxV}l_-Kzck z8_0I3o6oZCa>3m?B~gB;b(SilRN%Y}07vGF%mg|*Fd9@VTzzU+apE zBmIQ+&OA2_&=(?3cUc8R2(bxj)Q~-Hs)?o{d&VqUEA_q)F_rf+^p53Si1&tGGTPmi zZl=}$ZhP@}R{8kl(jARG<)V)GS(C^Lhc9)M!ok$w(VFXmp7$^aW1Lhd!TtzMV#`fh z3k4x3sSsdi0Y8$Adfk`orGE@7ja_h#;+9gO> zzUZy~Pb$QS2b}$Cc6fPbYJu#F2SNg@kd!~}yL3cwedBw&YicA$;ix{Hg#_q_s7s}G z*_HLGQx@!!7O~1FOSNY#v2y&XkrF z+lyQ8N_c*Mg2wCXpXvwO>79_X=mRGe{GnDr@OSY-O%NRs@w3&Oy}TaW`BZ1h66BU# zqV6_-)`-Gbo2@Brl3~O2s-H!7jogj-OFwupOlFNNN*nKWN*pPfE10aoUk$JlP1`WR z(2Rpjkt2)-bD55RfU!|X&9(7k4~NphWa%!n&Y24{S}y^0XD=60Y@*O86G<%WzgQ=@ zI$Zo$p5-$-tB}qAg78y9YJ0M>=C`^G`JB=*-AdIxR8w5ijcJPUkiZ}q4;*O{qND4j zFtX#HsQtEnfhoH7lMvV#0?>!2T5Lb*JYCh@>?niY9XmL<)*L4-yRYRCVkfkbtX~EF zW8!p>!800*D=oLrEiQLX1xx*@De;N^9yS9*J$_jc#(E^2hlklnSYpSWP5}(sbhRn) zmJrp)1&5lQNpUgGQ(kE`Mpbn9>iTVY#57N4K0h$eIPNDWy#k!q+JhEl2NYS8Vq zl;OeD%xIdJA>U3P>holOwd$uZU%F?vuT<6J)mbcvSYqv7j`hyJLKGjT+#m#rt93}B zPV?K@9kyzxW?c9dFQy#8H;*LpS%7;;HW7gYNB?_FGsNJjiUc2K9X>Cf2F1vYWt+2d zeNZwL7sd&W)3qZdfbykC&Z8E}%L=3fg7H~u&X;wuGn&FjXLQ|h{>lg+($kTi(8_o@ zd_S(N;?}0MZY|qyNLQ{=X<68b0YiCtD`{atvFrM|AyPRI;7iEm=&hAj-xtUHB*5elt z@u_+~WdK$P6o8bdWrM)~PV#1F0_s0`JhEk7=`Ge*qd_u#70JDEm#&M!luzDA%1|#+ z1}{adqkhY@!g;@FDZ}yRn36H*k1#dWrh5i> zi*;r`ev*NaxO8x9Zw4fgz`;3iq0b3hW8VAiQrzd>yCUgsbxx(`bqe2Pd(tsO<1mvN z@qR=6=gr!UJ@w5Tp8t%2&F8vU4H*f~G<9ep0RXHR03hhg69WLmV2VN-eke6@N;WhN zskol0&O-4#v+z8OSUOtWf_}!`f?;IxeDCT2(16`<0Du7OH|5Ww0=Q8aiwDed&_Fm5 z&^vM((E$(;*AqZe6ba1VtvRd^>M2iW<7!xBo;KxE(`sc|);=gq3Z%gPnPk7;L*2=k z;OX$yG?5y_)$4L8;e^5FRzGrl>w)ptwvs_1U1_)W4SLq*^LKpC(S7ABq=0M-uxNMqN}JOl&s z0bo+(xC0SE_;3UNTvLZgGZ=sVHxALZshmjR30s=&mIUVifPYsw)7y1vzxgwv)dPIpgw)` zhNPor+DtK+8x-0uS9dJe`M=t#!u16iv}rN)>=)fd5e9dXsFyU$BsZrEs<%Vv*`Wf+ zAX|^D*8(~%&Ymf3sDG#sn*h)GsCg!T5ngt-I!lr4?n5tfk4{Eb4sQPhl`@lzJE>}XqbCi3 z#wcLu`HoUBq!YL)nzr5B!L1Mw!y&unNVdExl?b~nq zHRgA8w#R+#HPQb?Itvrd@ASEYf$c_6l}gFNzEOWIgVnUSP;*lZgV`uT(ZECyWnjjR zm4^AKqCb$Fq88LG1byzN+dQJCI9q|?YC(;>NBwf3=`uDTVja zsD-^~OkNP_XAEQqpo^6lsZCO~_SBNVDeHj=s_N6i$0+3Z9rRc=1pse>DK#`&2dwy~ zeRDzH2$Y@KdQPPre(t*GwUv>l)mzWi$%2-h-~F{HWF)_+FN~|eSo$P`V}VXz_X;s! zQ-*-OjK}3EiiP@&M*+J_3a59yQO^3Gadu4TJ(R3*!Xo15o;58Hecn!I#a!oG#ZP?N1y+=)Tl(elP(1J{fAk(n3br z+C-tn#7&eofS?Rk4>_U&P?HhWU;X30H%X;!D8p!gpBbkzui*-@&%@=)!Fy~|IcJNC z!-7mq0qCbVh$n_{11b;zxlJvyN%eQ8BRGuXI%A-UjN2c_hUP7DUWywtK_EX7c{wD zE9#^-mPK4-EUKQAeXm}lRO@mtLB?|#f_f0+)ZkdE}Y zR>sqAj<#Am%gr`DUvh`TbiY@{VgwVMXnPY>ow2G*o^JE4|^iKI9= zaINMcGvBY#(X$mw1ri4F9+#`)#11N{$)C2J-T&F#3XBsNF#atC9ScDlDgcNMg+4@@ z2GA0lj&bn{bbaE;kW?~r7Vy*O>5cG%7Dk7P#Dl}*`d!(Q5R9^OV`Wn0_;~ndB2z(@ zYs_q6@77&QkykZD5A|~|xbYio5cHgU-;e325v|#i0~usl6ra^;Z=4P;S4!`2#JTu7ArS;!-5)D+mAPbCiJ6kM{F|z-<5A z5SkQ(kp!du=G^k~(Jla{IO_>%gpR%;p@?#aGCTcpol8`;*f8r|uT4p%8&CWw3`X!i zN;AH|SdRg6=Nxpij6a*f5^{rw*Zp?q+rz4XV;_2y=^^*NsAJcl90T=_Rgi&c&Fjyz z?ALt+(>kfkZCN^=>lYo!3wOmKP57X{5pZj$JV*e=dr$M8WPhtNI&D;_OsGPJi&Hl> zdR?m49aHWY#t z@pNmY_sD9eWrku*1CLOakpd;KF{$nAvBN81QrdJAT`1vGmJb$b(#uBXQ>Lrvmt6j! z+WIjL`4wMggGLd@{f_`nhjvA1KK5vSUt)$Cm!5?0kNut=yofm>&EVI{W6lSHv0D3d zp+JA0gU085>`pt@HAt^!hBXAV=o&|EUP|Ibag*%}=kcjflNN7rYK|dsZ*;=uxl2Ks zR#vHYRuMK4bM${|0j8bVb)%G6f7DGjdr~p|{5m#&cby|AVgQJSF9j!Rn9b;o-!iED zss4zDl3@i(x`|ys9e#OTB(OZ)O(#f{M?Huhe+EVQ?A#A1pZpP5O<6zsq@8{^I-4+} z1mg`AM#$TCxk)>w-E}n`8>CIAP4|tYOkg%FPzJXg#fwvo1T81sxgqC4rL8b4Sg%sf zRQ1OykGC=D%Xn#_F>)lCucR!iu8^-6bSK>8kDh*|bE*;rnLnUq>XRGU=ie#zb-8(E z*MzG}?{v#KJIXoyLhW`e?%I65?Oca2Ppso}Uaz{e#AtI3in#3~KzJex;=)tpN^rKo z%tZoK{esk526M_`rwJ}OAT*hMohL5DQltRtGk`|0!(Rak02^Rd!&1LHwwl+nD!qHu zJlQ>_j}qzkQxuO&C&_3#pI;(C%Gn9m^6+Hj`5`T-j9D6|Wa+BG)I=2ufc&JEY`?w8 zdrW>EkFzDmOzM(NbX1ft`9b>p{hxEW(5JPsD@pmHtmKWucFuLAl#&r22QJGDj1~Yj zBw+&jxzA*Gg}vK$e)1_?lE>&M=;1#5>0(SRoIbyWKUV&X`>rzPYX_Xs#q<1b*Aqh} zUFI2&&qw5#o@!m2lQ)9o8am;;Cu3QBvf-tP7c=dNp~GejycG7qy-!4q#Eqt}J3x!j#&?9`8;mT1TcHQsq#ZGn~%`7*_j@m{qrc-}pcQkq)9`=kR z9qh`mj=7XFilP-TQa>|Zb~?xbVlSezeh2N>r%f6O3Gl}@=w7q&+wa_#l~=BO`-JZw zlRUQ5_*9|v8en5S&>-ver326ZchSZ!W~y%RSrzVQNq%zn#{0K6boLGgiZ;$6eqCqH z-h?Ir6+hXrzue@GfkB>u-31l#*u7sY@rCaZn&}dTY>2~#j(6s<>6_>$Ks?{c~;K5UIn$o{)lb z4=7%6OKj$C>c$3VGwCtmgoj88=IuoMRH{t=xW4gQbKqwzRO-scjYC!-VIp-7YOQYh z?CG7cBP=`HbJbZ&uXd~QkFCMt-GFu8o7JxNmCVvpd?3Z`stP*Vxm(EoFUBRG^dEBY z(2j3gjLlUkFtar?3=dZbHe3P7Q5+eT;}2-0p#YEbZcrc8CA>y0r~<_SMu{`~tRB8n zQRJ9=;nU8o$-~3TCeB?*84Nxr5gD;|gUQbIY(MjSG9>18F(F`Mofr(QjwwPeGM$ij zj`EHZcOIuk7hoWe1q(@mJ`z4cr39#IZ8s#iU<`SjKsR__CL`tE6E;?{j#Q1ia^~m| z{Kk3zOy&BkO;h^L{k6^`fZ)BD;JhlKyrc>L^UL)5!(K}IblYAg_)DOE)e4t_X)YK= zn{Ivb^AE#-rrO`uXk@$u-wjL8JuQ3b=f9sLBIb(Lxk`&H1en5;f`Nhwlt%Hehe)Gy zOadacqJ1}t?M+EzGbdVPEz@Ou`&X0wep~wJ+M%uJ`{;tf5btz*JyTkS{3~UT>uQYL z$Ax!KEpcB+ec+=1=p~s;bfNC9eA<#K*)FV7-Ujt$W44O-pVAcUA`bsFTC=c|EZ~Lc z@jCmcaM*K$c11u7Rfh9Y69V-esC1K z?C;2(EDWgV4P@**T#zj(28gfqD+eWD8c%tdMe|ozt=5UXbwiA9c?iQP4m%0TnQd}M z-n@B}xS-BN@~4Tc2RrkJ5l_>+q(TpCWzsmvWzi?B(Wfy^^w=OTr|1qg%yczjj>p0H9Ch=aKNorqGJP=c}y$EyEy1-Z^p6Orddw@+t!1={v> z+r?JK@*Nv8?{5-g%FiUPuLrg-5B<9`aQ1hYEXeP*Y`32f9>G4C(R&sW zVmSnG4X7Dm_0>Rufl%6{x8qT+n&>6~FfzalBR7PZIS2_vA>nAYgDnFcwn}|0^D)hw zJR<9OT&!j8V^fH?R~a8|Z?2tOQ-sG+C}Wi=^RFzWGltAoru8(-VviY4QF1B7-)(B} zw@)MzJQ`^D`GzM?Oy7X9lY#N@O)Ym6?Mpw#YqIL6>z>=>#Z)^VgV7W^Fv4`;ExTnJ z%vlcZBj63G0>&}CtZ7I@A03z$R+RwBVMSy1PZ@%AV?*dWWoUj8tKt#x;@yqvUr%q#R{Na5WkG8J`EkB1urhjs;L*_kdLPP-&o8~0MY z{LTkcBOa@DB;ymA7JTc%`{>>*9m!jM1H|AS445akSfiUl{Fp<^!zuxZFv$q8)ta_; zm$uRHbLH&y3r~*gDURCfqw34s>k*AeNBXN=e|Ik`Fwgx?ahEd~^c9mqE+b;q1n*!@ z<=)ErR`vb!gst_<@qh-p;?+cfFXGx$#g6UkV$hrws`*4_LeP`VQLZ!#%o7vVl8DWe zUYwN|A8y6b4!ra6x8kU&a-1njsfN$PiWeednDl^LS*U{t>M%Y*3#v&;j8P1>2Ngwb zUZt)EVw_@HWTgNPg8sQl+xNn@+fr4=HN8QBYz-$Z15-N(J9ot;*oW%QcU+KHRBa$1 z1&*YUA}>@V%ujgxyn2Q+k3rM(IYNHUEraZlIN9=x&EP&+`@Z@u2Df<$q7}+F#93NG zy(h#;m< zmog)mnt(sPzm7WZ2yn!!o;3L@{{zCi;J18XH~W-GPT z_r33=9IlpDaPA)8+`NvuJR9vjyuQEetaaAuro9a0=p0wF=%zYCM_8p0y!u-Ei4;cm z3!W84b6-lH&3F9#k<2wKIr(u@)pAA7nDnO$Q{L8mfrZu;Aro|((aNw(N;(w)QQ9b! zn1d3p*t{WIlZ6v_6VcqPa=gH9(^`mTJatfs}sI~XIsr~+bQV?3s(mAxn^{m3b#%y)dUrlw1 zUXLGl*S%VA>yDON-}W?_eLAnA_&Yc}8bwW-?hZm=3lR(amihMY?v6(kEY2KYGru=b zWaP9~Fi8ETxjq!x|8N=MQ6qLyMx^zFVBxOO@36vcVHvwg61Vno4W|lCKpifqVa>g{4qqbe53J*^$)3R#}6Y!hwjDgglZT=Mx#EK}L5!+I-luFW(*)7(>P-P@8I zEf0c%9#zL1-k!Nr-fmNle6H%A*j2=1295^v`Iqg(s#t2PUN@gxs>X{wTw^^Xg7q2S z1*8P=y0Yuzj4=Kr>O#>F>IG6!?ZNu4Rh2f+4#hvGeRxLj;```aD8fiq?gsvdVqZH@ zJLt1=>a&@&~aQ}9fsMLP#022@@33(uyy8Bh1@ns29ru0D_byUSeHVFJOGFFz0N zI$bHtI?RmwaU-m7j;a`y`o-C6mYu=5L6HC$H$J`PJHs&tu6DVXWeq$9Dp|aPao^74 zU*$w!b?zIB*HFVSh}>XBNF$J-r-+XpfdalAZty19q#_cqvi=fDqbf|?t3xSmH%Vy& zR%IGv@dskBda?WqwCo6-*Mbb(grPOXYo+5^C!ch)Gq_o^=5(e~r2`8Bf!d*b#D#wJ zksb>Ukr??RP-4E4YRh5%h{4_XEQqjRIyww0>)xr0AL9<>9T_%Hy98>poPTdoaJ@UA zib_odk+a1^MFxAF!4b2!(mGdQjPQjvhTpvD>C%DB6;{Pb+No7uM^o1^-VLv|K5l!q zKHjGJKg2@zMqF{KUdKz_OKxkCA+fP2E|&iFJO2Lu%iOk#OcZ$Qo)!QCT^d!H?A$@w@TB$lKfBm!j7{j;RT(d-w^!i(GTW!?Vz3JjcuJh9S z?izu4T6(oSyQA5M6i{u4H^P)$Reh5V5Wn#2kdb+>2?b(-WHu2czylyf^7B5eGjF5z zAJZPR^Zx6j7#0hMAIDQXr|KM`Lx_FcsvbMcWw~Rpk)lH^B?7-4?fm>b__I~S7XQkO zgn^}MXSl!L$einKZl^TIlkY{<=jz}+e^*J%-jSNO?c>LFe(nynl8&Z*PZ0sOh#OTk zqMtpVlJzg$7nV{f;_K|uC@WLqcbx3J7P_wBlfO_q&s_9vNHE`|wCbYF^AwPv@CuUUZZ9zQQ51~3)hmWYTRm=ZcdLI4;< z#wZ<&ROT3M-?u>Z<{OTB+fQH#e`~eWqCL{}YJa~*QUr81nU4ei5x1{4nbcG9`Nknm zY%PpZ+z={xyUqH;!enB67Kh8U)7@tG%=_Ej`tuEgkG}?-uM-`}dB?h4IR4xCo%fQ2Ioq002~D(y3ixJe;;TXM1Yxm-oMnDn;JE<=RW0eM!a9!h*7ll z4Q>88ZnaFlF3wX&Ff<^$tkY9}IZ8t&f0EWRr&V%0ChhpPS;GE0`*!uK?Fix2k$Kq4 zqVi>$*|du(#fX9bCdN8Or)UNVu+`D1vl%^@7?h|wtq^FGcg-jm!AVk+8Eq5YXd81` z|56zvTFNdjBE^tFwsvh!6Dz=7WBQEA8JT6=iDP!R93L`u*<)(LEfaXdUMV?!NPl$GQ zGXdPQEq}ky1M5uVu6Q&e&ay!AAv43$mz^-T3(8P@2IYQShAd2jFdB?Nfdkka%cd>1B+3xaRr z(j2WQuM4{_B)`3t2%|wid3n<~KSx5ZF-&=orPdfnzZ#_|MKcHPx9rCu#{QgXe~!aI zheVA)z34=C-%IVY+3$sC6*A5lNsd<)F;!JB_w1Vy9xsAoT;$yGA+I)}=K zPws|52>CD^^qkDZ)GPTi!aX~VnU02t=qCv(i1lY4{Y;r1h53%^ntcsNs5UVvh-4+E z1CncEOI@HiA^i3b!VTx{Rust%60=X`)#h1NwubwGiF%B6^qlTV9}#D>nq1FU zcK^Qh(UIliD^}Gd(#gQ=8~T#|lYG~wuNv|+&XLzdp0!e_(n;nc%u^p%#gh?*?S#mx z@#6icRIEBT_%H&7LIJ5LQ2DYsU8)A(l_m(1>X*w|%GA?u@jpE6ESXiPT3kLz#4nmO z@wqlGYnwNk{4mntyA|%XR}Br>Lg3smCPD`$bG+V-h=TziMIEmW)Xh`BQ+;HZ=!2_d~9Dmrqf-BB?*n1e^M5W{8~nilB9mw zMP1e?Zm+TQCC#+h?sBw#`157&?Y?c|E#>WLFXN@;v6%R$x6K(XUzKr+&(ZT#63tcZ z>~qZhzS!%BWv7Sz=V4v5C}qk5`B6Pb#;dHEBAfW92rF;e3=-8VD=3|_hjI_MA7nPx zz}Hu?*zOWb4yDhRQmlA4jnyIu#yL>bmcC=R_Q}{A)Oo(pB4E9v;k8Ej+F<nR71 z)~{XlGxrBLn*41wH;X4awk!uo-D(Z$oHwsM2W1fukCT(>NL7Y$3!!R8VF+1LAW$46 zD3hW&`s^zJL~NuTLSiX5A~g{OP&q+69>WL<%x|qx6^zMeo}CpWjY6I9aX))AJRgxf zoxLbRW480YC{pIdZl*WMl6;il8cK3PsAuoG*L-j?;-G$2I2umouY`Ej?_~;|!3vakfzM~w$ zrQJN*sb#5BmglGQRh{-u8iG$@h=CNDeXS#5q=Y|X0FpA0qW4?&^>CPbbQmDTxs&ZO zRn)KS6Rvto$>dZii`u}>X7-i+l%kxKd@3-$^jO;CRR3bo)oOdqgfmVLNYUREXR)J4 z<|BGEp+77-pSmO!1_mq&j9<@!-Y|wC&;ea~z?bU4m6t<=$t+xdrBl&nm2T*ayMLi+ zby^O4f%>GPw!=zw{XRz77B&Tj(Ne^u>Q_kHDplZ3Mx$dmZQDE#6ad}w+hx{AWYgVr zpBobX7u~ns2@kT4>+^-norkh6uRPYaJ(BZpbTz6rol7x>(R{6#oc+e5c1({mI&Vie z(r@h_SMySbWjP=-&HMb+eeJS=E>J) z>a@vU!n6+4z9uYAS3F#0%~{Q!8V)9Y#=brFbW-&9CFIEvf=4?xymt6f2}=qRi&&GA z`IZ48WtI1rlN9Rk^ipRtS z2}9Y8wDZ?a3g-1+k6uD~``=sd zPss$zbLx=gDV9Bv?y$>buV#PI6GYT(Y0)B?bf)||Mj(c5EZ6ky9uXuJv=UsvUgDHT z#YZaAgJ*~s=@9-{Rj_SDQ$dc+e0r>Q+7hwZe-s5`yVKZCqc1W!Bgo?Atrfk|fRrJb zSdF^hkb3#t_k?pCP<0gYqwWxj94^7UR9Dp3+{G~GyEwpVJ!RLwE^3M&Y={0DittmLU z_I3T~6lR+2)z<5EYNu$9*DZsqlIL=N#*f)Bi&!m!t<~E?lWA!{+f)hxXheF{GXExQ zmH!yf_w8 z677NrI&vsvD!85&VF%53qi*Ay!=3~3vdPa??TzlYQeGXz{U&F7LeG)RF1d{M&8al* zQqBs7{eZr?g@uLYWi1NK1Y^TRw6k}CeiTv^gsc7=@x6H%hF^AuhsBS@j?qy(Bv$2d zB|{fNuv5jXdaTP^TcvZEbbqdUh(7ncgbwSP+UZ+V6l@`N-P?>|G!2TFcnK!G&u?#| zE-Tqy_jX!$`+P%?eGnVciDXxPZO(%I^?LW|!mg9=7zm{W8ox-W%% zQ$Cnis`a%}eL6JU{`1Dx&oL3O`%? z9gjFb8Rw%u?wM?qtB7*+DE3QOK+y#Z9K-5QZ}!iYWev01Pu5Iz6qetnMO^Q}asWWG z5X}+0>gXT#Bevb)>6THxYHz)ETsvDGHtm2=3}dyyS=B#FaG^hzJ-ko7Stq_8ljJb- zJ4)$IZE|+o&5)PS7S<)r>}14jeK)uK^@H)-{GN9PCUcSQ!*B5j^*8y>Td{@)9RGZ7 zvObkSKE%8O_S@QFRy1I>)FI6qEXSPx03ysUQ^cHZJ8EQlDd#?!JG5#;_5?JA@R$D zdb%0;Sf(wEA-l%;90Qg7d|<~Y_SKb&UQ~@77mS!79R zg=avg28obD?Wm}L$kg{Pwu0)*oVCJwxVmM4t0s9oLpMsUFP@c|v=iM6g6k75lo>Hi zELJp!8d*tcVHL)|Mthx~NOJ{-Yo>lNX(YCSyT5LkYT1s4dwzsBsg)dkV8g{VK(DmB z(pXsfUaw&r=e82(nFgGi*vo-nIR8da`m2=7y!Tz(rnEH&XnlA>itmiP0oGBfLSZ>9O*ka zw>yW$CPGUCv7fd5)RPxbXPsbYB2M0TQD2kqa6JzMZeF~ITOHGTVbIfXwwDs-e}s zd;HCQ?4o}^;54r*fL_XAe7PI-gVwn-S!uPb1OT9BeaW06DXz>1T@-IrE4j@H8@t&o z3b7I(V{ukKD^^iRftZlBsA2w?8R^T~^wT>$hMoDKZiwu;6NhZ!kl6i4xynrZbzR~` zRVOax&#)#2Ox9bN`!)}LqgIO=`1q*HjRqBD&w9O;UF6qX#qaiG1S}GjX@XG*z*3o< zwg~xlg=H{WU25uGxchc`J#qk!Hmle3*?khee3ASHj!DLbxk<^ql#}uqY+vjD1L8m( zzhrAmvN(-ut5KHc$RB&}jFR{}UtXABZtk(j(@nVt?%%in^i&tehNjhH&}hjFqn?nk z%C31gKF2HPYw1xj{hg`&GJf7}(2C}~xbjRAb0#Eg5@?=Vw`CvKrsW|3h0IBf z)xg7K!2}>AJ3dO)+4`P{O~feK@j*xwYAZ_@SBc3|1_2}MFn}e#y4s4((5F1xU7h89 zx%_Ch)BWzv;#e}&eas1XGuvs|^s;ZhGaw)ULJX!Q!kP}QTdJlJKxM5n#_p6x-%?`D z`R=emT@&FA(O8V4#tyC1wii*bt6~vcnu5GsR74tf>6t zmL=&xN%2EZOe5m&d})4e4@I7cIC*&V#1n^<+u?R2006Xfow|MQ13-JjvKJNHod-ea z3d2(F{2w-SlQUD|n)v0%9GR?>1{(@%=w&fg?Bvl8002xJ*2wWh zy1eyc+mR;#{O*_MFE8zp$kWey2kzfDeSEx&V~Hpn5fm!66$=js4h zI3iB`WGc>75(|WPMa$rlvwA-1>P$#@JGBU3UA9?QJTxLkJPAX!0e6o=7OZ9+uuylk z;(RAe26T%MrF22aEgtSFIbM{fxKL?oW0|>jV?8kKSYtTxv(DH|eq<)!U2Bgftx5Ng z++%JVsIVm-+#O>CL=<39*C}2x@iH}UXwzi3AXED|HA~jl77}O9JAsG-WZaOAE7ZKk zI@r1W8Wo1C*50P=>YaK-1aPs67pu(^Ig_j=2O1`7uA`Ge$M1BS!?lE-e|;; zn#riqw8K^>k>{X;z+@qAF$$2**1I$}AqAR~YjJDc*mxkbod9rl8UEyK^j|;bcsLwu z;(Hc0EedO!8;2bq8&Pu&rMvYePXJI-{OEg+#oB)Iug+dst#|rM2MRCa?mJeVI8^NJ z@Rn}&_{g?QW*BM;1Uu0pHeU0te=UsbHaG2zK3XonN02kT8oWCJ2UvNA1X?Vd7N_3el# zNpT=s8@6%9)GwJ})uO}RDCUni*;y4sXcA}6yMZ7m65$dy=OL;v?QDr+XBT&%`K2X( zaaBD&Zj#-{frf!v>%z^Vo9oH?B8UHma-n?6kR^qxitqTjf%j!qil0TDj@2%r-YAA+#aWbvGk3 zTe6l1R6ZI3BuNo^jRmvzs%&0I0jcr~=1+2JpLGfxb4Z*xbKV6+lqiF$S^Q>w<9yg! zk8MmldHr|1r}FBJ@H6M&c*!ZMWUGF#v6_Mn>3Cc5!g@PoD6FF6iBz$pN5ALDpZeg5 zR%AZ?TxG2u4`Yjkn{ua*PfQ&xb$57dLt}L>^`-5X$H11j0Du4)ugKtnd;MA6S~V&q z3PcLr@uEPk~~dT{@~2?>KhBj&R!ka5(6tBRh5L0t_eya{G9tOF1V zghEiAy$YGw#2~`Wz*Rb1FSSj1>fmJF5G_|)+S1i^XT32@MS1C*KXGVu;y}5Ju1)~p z%`By%9_mZqAtp2^@tZ)w222y88ru!sSkU2OiZuF@oH+=&BdiK+NGHymTfzcGB3v@H z`KZ3Q3v~e<2PDMs@)A9J4L^ENVxnw5*icXvejdGC#|cjWHZir91d_w}zln^lg+T^CzA-q}*=0IsqWijUFS$w%v0tBWx?esOCJa|BYNfADWQU zBdT~>OuU~l*Xp6R=U#y$sJvvBUQS$06B6!1BjWQ*HmCTJac{o^tRoog8ju741hS+< zArv|(=r`hTFT<-D%ji$6-sB$PQA%fDxq>%0$?@Y-*R{`n8Z_C{5}M8eL) z1U6<9v5ir7-r?DH0o4HsDU}CXv+=w|Hsu`KR}5pjSixpwmMUQo4f+a1IWkjB7sj&r z(QG=O>S6>2wrngJ2JSxSyqWDJwl^C)cNqi}s5r#1!i}rCdcibr#3m-cs4}ydJwS5O zf@df(=G+gc2}UF!7ksZ#1^zxz<75kGrwP1~VKf)&QHC!Rdyrn-pI0RS|`n&KVlPnOQer;v&!%jElj!qZH zX3Jf8b+#cUOS`Z;&}R6c*u^(Hmu zV|FMhyx%%P2nW2dsVno1jro=icjwmVGVEMyn5XB>1LMw_a$=@3;IM72D>vI!!V}nN z3M%OMotD}Hz~RZv-~XP2tF`$2wdzm=o{p!cj*jm?J=OIHp$U5L$>af(u|+_ti^>~x z?JM<-OHH!urq$?!&eZ#bnhYpu=G-C%8|R#>&sBDN9tjDUVOR4#Pt#0Bukk@DYt|M;(cYGHAs*?x}gx?bEJK3^D5pMLUW*E@~?5cM2(GO#5> z1JgAvKteAx0G z`yR^|k9o34luDdAI|UI@*KzHI#`?K1tnTL7>oVI30Fi;OT~%ks{3j*%IMD&OhL9sxf3o&$>;&0qiX7wf^`KKB7YNGwfeXYU*9dIZZhwo%WG zor6+gi+~WyVBTB$x~*K)Rucde4?1Iy%IqnP8Jo0Ibbyi9zuc-XhUt!r1`-nPb+qN> zhIn;Fr4=8`$)ZC^!gJ7JVyn?aU^Ph7MTh5`RBa;=4hp&TeRD)`9XVO@&m1bo#%?s? zR%Bx{aIY*xkdDZf(#7#yZX_eS5;A09Vm4$9nVzM9HhnvHMX3P+1q#wa*Dzj{!4+&? zP+ol%Jj!F>6C6aY^YAMD3UgR_DU{)zCz{`TXoY>;!=GEA)lS?*5!N zoeKIjp@i*#b&I1KrpjFt=v!ZT*ZhdulXW z?Dz}bBDP`gW}5?2VJkq!E3o!_)OcOhu4w>338iDs)ORXxf5=W!+|mgIt&4EwnM6q_ z;ohakeExile-Sy=nkwJtl{{ujoWlnmCMLrsLg_%K9-cQx0DH64)=eQg9Tn?leRX^) z9Y(FWMY~$5EpD{J*bG#?mE)<2*`s4Kqq%a?O*z=z@{GA{^lhP+%GDjHXHhPIom0$YR$p5r)%r42Z~()a8jatN{zn{ zoT-p;Ad;~|gb2L(&#zGuswX6LOJsO{J8` zm<;HEg+%Fe+U6q#7Bb$E$-+ZN##*tCw7s!DST8TfbBg1c@>DjJ>o(@RnV%#k=C=H7 z_lp?j_Gq-T1}cbvsL=+ZQ8V>9y>T|I--v`nuOPGgF@FeiM?n^>A#KSfF=t00pg?I_ z*qGO~`B*o)EadJZJ%ybBu+pHwv==X3AYYmB>(3LpOzfu8X7h zkL7;p2Ohey-dwD8^UJpz$CVR@i=#8$e6=Fti7a{pKq>T zY662wLweL1eNYr1w$6yAWU1F7g5;IYH`XsTcY7iU2}4gMg0mZL*2m*HQ*;I^gh+S? z$V8w+Mg>j^CA4L0IvZni1i?h_6wyx-v*Xq@|AlT5#RfU;!;h>j4hVGc*v~4?c zCNXEHAPPr#aowz*uW!5_Nbbg=r@wTd5B6@nyvWa7ORdMfMz9Injcu&~bssjc4k@a0 zw?WY(N5}us_dl5Sx-*d8UQ#*l=%Z88>3(j;8cluhu4E>&OW97rQePMIe_EgatIGNt z&GuI*%(}B5R^=y+8i|vbvkRIR;L2AM_1c7lKG2Bx+^Rggrm9AP?99GXk-{o{GRtNzJt!q0f+ec94fR(aiqoj{h2 zVbh1TM?2Zc%sUmB3lvDoR%Cch)Go#w=c3iunvJE%%c#NuzjWL$9CuT*S``fmo9GvI z2geZHu=V-4aV-jKng>AAxeu|Tw)~|zak3=7YgXZI*9Rut0oD;kb&)D|dpvPiXD5y6 zLKmBA0`YG>a^UqF`jdY>-{l0h2O+UAo}M{9+RGr?hJBHrC8pj}rk#R-9Lnlzbp319 z^@}aC3;-x_(AF{!&yqA4Ro6(f;jEit=iO{`9<=&Ec^^;^sWa zFf~_&U+8+1m`zMk9o-bFZd^uuSN+Tf54?D}`qJD0<$t`ibLhc|bgmoAtXsr3>Q`gu z4vWYk2(I`GU)ZR;9@dw__CGo)Id*?``a>CiIJ|QuE?C@?n^~!6a!Q=`L4YAg**7O?Jo>u!GtUw6r!836Oh@04p}I4e2`8T8x6&b zcWSoW4E2p_rPk76yvs`L%8{v@pDSn51<&=nUWX%d+p*L3;@AlQz)WO`?ajNXx6$qh zq7YVaB*U6$U4z;MXk6v$QUE~N39o!4Q#$EoW|d7D61!>TGW;NF8LyezTvWRnns8vk z&M;iHw))N=bgEzU%IfsX8#J4*`-zR`0K+<b_{hw! z{N@`QjkjDUyQnXhE|-qJr+eQN003@>oxR@GZPVu-2k8j3GQ1=%e_>fK6>XGm+k2$T zYWz_r|6uHl7@N3bbxU|5wed2h-)fn%lX{7XhiAf`WVH!jx{S>bKXOPN$Ptqr?8p-V z@#Z4Fy{S0Jv)u;BvI#*dP%d`S-U*v_ENmjSFgj_ipIgPx`3?ba|aW zcR4kY*0bq>D4lY~%ju2?5#dzZ#`+SD(?>zp-4o(z^BLR-P!IQd8drYAm3nnX@N=Vot)?4#Wef*BB40O6k1>THXo z8a6S?7?ca$B&d;@Ku08$bkjgi7rA2Bk^9Qoqx*`-r_1a0==ypih<4{?=cQGCER!Eg zyWMNp!p*RgxaTY99YwZ%0|A9l9LcCA;u}~wA6MtX+G5LUax+e<%O6V?I84RHMK5}pF_^#1b4KYHe${odDiG5fC^Idg10Ka%ZnoW3-6 z!e+K}TkjflTIp9mxm3TZ!&-dnU;VtZ|3j(V!+|W=q_DO}WRSY_=Zh4VcY7iU3457Z zXkWS(xTsE#rDh6B*l^%gZ5fz=7|H#OF!>%{CV*{F#fX2|t=n4{+EC(5{LH%L)uAw<<7^@Ay>hMlY4nEc%VY03AVg1(Ic738?u)4uZ>M{T z1QouPefiJl>(?TFlRjK})I0gZmQOi&c1EwPz6knE7T7 zpbvo`0s1TD z>+`mGovac5vc_|;R`*kDzM|;i8~Cn zDl$C=qWhjk)&WHg*=@qJz3KSzkDhtq(n_th3)cxE_*wVxLo+>&(=H3?%aj+?0Rc$0o%@1S(M~?-c}Cd@9YxE*$qMdq&Lln{__dUy&{ z4oIhq0M>Wa>{xE2866tWuU3MUYAe(`x88F-S)9le#xp(mrU2YrExgHbt+(BCU}oYz z71<(y5D1~8SKZb%tX|TMMH^Q)Lm)rzOg&gC9QD+wl{tfMJK7zJ+jh|57Bm)2^9>tU zVK8G(=%bSDn`y=Te|-(kSA6cuV`CR!k{r9HKA|=|N#CqaoDW7>c4JLBG+0eht)~%~ zDXfw1zBpM)aeDvAPkrD-Pt)iYspRyDk#r%|<2ai7)7Z(tb{je?1PZl0^1{E0R$nz? z<=gX=N=)2exc}p0a$f{$Kp#)T1+Ds5pRSuQIhhFwJ47R*bIb8di)OCo)r@0#NK|bB zfEmdO(uy^b0k)f+pNN{>fV~F!P4YEMK(Qx%$ouR703ZNKL_t(yPX@AJHCWBvH{v3& zWfQTEfDCk1WF!!MSM4ij?mswse5RC5@2IM+Y2vOhn2T*-3xoWTtq+%N&0;=Ue~Yjzj}@*r|ppUO0Aoc`>U zjF0a7XRJfPkZhoK0u!~?gkS8*VOWP8HQDh|bh&SrO*udI{*%vLj9<8T{SF1ZG?V((e zA59lV(~j3$*vZUni7hkt zloqiM=7W=JDN6nRg}ej#?>`!3xZd5?+Q7m(BohdymvkRfSVJ$1-Kwz(#OZSSXTRsr ze|zbIp&dNE2!6&r^uToQBbh$Q*fMh;O*;{VThD&;6AR51ZKAiFSSKy+|LFqGR=`b~ zIr{@5E_?GwL}-pP0;W?Gz)E0s;bwD1aPepk#^A&EMQm)iEjrJn24nVQXzCDEY!}(kzo_DbkPyrg|8`39h}Io*TWaa^UIZ% zMKn7S1Ua6{l~dWWuX=LqL;$dCshuS6c{73mh?#rnC>9`CqYXr}W@>Y$cEM|0BNJHw zK#5*n_$ACA#?nbYJuM=N4e3NZs866o!GUaDx7Ev0b2-+banidzsds0)!cG7P4gd2m zRHlEpbh1z%I%RMHlo9a(-%K0~uZOwcdNCWs{>RRk8NUWJOi}cmVB(+xJ%ydXI^?+7 zwWKWoxQ=+_Na>^RIry39F7+~#j*wE!oS5{}z1C4PvnJi2Y$tHP^n@JYu0O*U|8hQ9 zkKeXF@$&M)Urd|AI*TE@B?p=KjdbN~Y~!I_3nnCNGuxWaCjl?aU6sZ?Uh*e%zKa14 zx~lEFz%0Oc)R01DU9{*hrdC4lS{($~Lq#*@#DYTD5qsxt0GTb=7;KE(^}^$phiAmX z0qLOVCVZ6w)1EsuQap3$Kwz>jzj3kEx{d8$-|JH>vtKxrDS682z6T9Ab?>PUj-8t@ zbN9(k1Qb?5!;h}w+Id~S3YDd+Ca}ybr0{Z%H{p*wkj@@pRfLF$C~-;Y8v=zAPE?nx zuTb@(E8@{~ng_YwY8%5&0N4oZzkNRQPacn^QsLb{J$Oi@3`U1j`s4Sz7wY-nc)`_X z}W}2=$+Pb(QONEpI=(0Hz5lUI-#CiWe5WN^^VN=7kW-Q|Wvv zo%3Da>2b97J~dH)N|u;`nYo?v>;!>=t)K?R8`7>~V}UCdO<1+MWl*4(alE3+OuB_5 ze(|{Dl)!8*nUa{ZZ?Hk#P>ltsEtuBo5Ipp@H|zv}Z(h~U92)t)nWeNC()~G*NNEVq zLOL>Wekp+q+8PQp<4whDe&-A@h9GY z;uC-VVlOl4;5Rzr@B_VS*aCniP0%M9Tjm~zQmEn!xflMp6|5T*zI~{Ze|viLdr-^f zFs)Gr9*OGW@9W039hKluNJw}mi*@rC=UUa4`my^|zUZ*kLmGK*!Yt9GxH;*Dg@Q1` zL6ur;c`x5^0O-_cbg)2q5etfMMxMj4lxG4mY&DZbrmoivz{FOwiI_B!1tGfo`ni;I zawcC7%(q_mudOz=wbMtsGC!Khk7j$0IXC@Ih;2Wzotx*4fI51OF|b6bgk$Tn@j5mZ zxU~{TRf-#%=dkU}nLp@d4herkK-L-};yonJy!#*mnmRUKquNE#y@`bG7~39pT7rM` zbbQ|r6;EW>#V|Y33#1f;j~135{DA-5YW_FB*81PS9RK7a`M+}#OR_nvhAZtl+up)X z0N|j`ZWf*H%?gWI@1u_$`0O_?&n<2Ht%Cwbrc1@iUcWT}m_Ak5!sg~>_e1$2v+yZc zda-W8+q^lx^B*6FLv_L-z5xdj#N{um#=O}c*PDcdgbs)dUtW)W#iu7!!IK5Yy2HHW z003l?VABHA9$G;GqhJ?7SP&6As}WyoX$M5X7da1n2?B;8$4dlcz-lIgLUkK?GLU65 zY+{x%qSu|UkgLRa(K|4nJ}{BLvC&$s1+m$#r@7?7s?O`VXSc3ol3+fXe^{4z`*fT8x+2!CnN5b#;A^)$hq<`~kjbDE{ z{J}GYzyFB4Kh?ycYx`s--4a%#>}mUr;|A*hRhN%`06>7*(cDjc@WlV}2Y=JcOtylM z;>bg@JxkaE02ng;3_H6T3K7*>>6PDU)vw>?@>8Dt(61f~QX4%_FyZZ(1-14qiW|fI zOiM`EORTl{*((fyk4?a28i%_a31Bld#4IUJp`G=^+?3GZvQk%T@Z4p#Bp#aaPL7Hx z*ZL5%HG{5siwsPgrM8afHtc*;ho^KvD3r3h<)uI@W}MRpMk>wd#mi=`wq0ST>pS^! zrZARudJ+?A!|iM*^>1T^nYJh?gaDGIWBkUVS$&yn^IF%zMnE@>BE6g}9xoP;cxsGf z-hxL&kmwio7Y5(}?V1~3$7oH*O-n;!7`_u>Cjczh?eD!_`uHiGbA~N2yFDyT@ICv& z5B+%N&)&%X_TSWh;6OAacBKFSKty3xW=4A%gPAF+p_@k4y+}_k z<-Y&E=|4Mo`Q^FQUM6!_q!dRU?n8ww^flWF%v~trx{zA_qPqUodenIPG!Sv*aQ1;; z9t$vuIs1={z1Kdy5-pW>dm;%53E!q3^J~jG<*3=58c7R~LqiAW;j z;BW9Saae=i!cJ({+4?1vZr2G<0GJ)kf9$&-{^x)2+AS&b?aRz!VB}Se)7ih+1fi_7TNstp%3Ls-_?q+*_Y`hycxmj@*moGsWfPMac};7 z;^CQa4-#s+UWv;-%ui*;vOMathkHiCEg*T zK3dXcCuS25q~`=C|%`g4o%76M;VSlPM1i{$W zVRlUYCk{7$h{XOy&*<0sBvnO4aLjBW$KR`**i9Y*`xsg>jm%c^AGIEMLA& zE3ERx1OItJ9;;d$z%|G4L%8-;*_b0vUa1KQ0|qn4hOgJ`3pb3f~;Be z7?@qKt|LlCY0<9hc%w-QEQ5%^TaF-F6&Z;>LQct2n$r#;4N}`D6O%@(d;Yudra+O^ zNCt%LZht`uEN8u$(cFRY{PoqwVx<+v{eN}3zRDESnS4sBp6cP+{W!$8V&k5+RN7Kh z+!nKam*EglpyCjMsts>Y?V_#CN7coaiEKK}h$s}Q6nZ5n9LD@H^!HIjlsI#46Nr)m zXfB!R#i((^i<`p~bHWaXotpTcKV|;KhgE5hl-j-tX2;Zj`bgu4kLCaGZ<)`ZZ~ePx z*FNzy|L{Y_pSoX7xQ(0xa$wWEOcd2+Z(%0@a9HPbsmC_anGyd7AK&-l-t5iZFfsFJS5U!0NZZu!Tggpx*Nj_w!hVa8R$ep@vak_19js zQEgz>a0v+m&kpDR1H$KTARE%G7^uGaXO z3(bvIJeCnB#?)i8-T{|A8G+RUqj}pF1k!8`k_8k!6iG1ob?1EtE&I#k`kxQS^BJnb;Edl;C~yXbf=2p;!v#P%7NO_2+ec z-s(D-mhU-vS8}U$T`HOK-Sj@Me8$hrG89cjoH%oC69R=4Dyob1m$`bu+qi!9o$Ejt zjC!kg`}~fEodEFMT;q=}js48=y0<6S#LQ`1`=y8QXCKc0+vnmhUkX0^YW34E@Tq;7 zfBb>bgWh`4HJ<3ju4;QA;;0Up(O&9f0f4RMxW&rHZXf*s;5qX2{=$1tj(*|ArCuiU zZU~9fC;HQm*GD}e0C>}G_(dl>o5TWd!BFLX)gz0$sHUxu=Mma)C#dNPB<&EU@CL|02D^2*^xuDvTKX_amE-EHF zK!v9L1c8~!N{sTt+*g9})1nfq2B#LP{Onw?Qjc@#@}V+3F)NRc*fA%Nq?v9-o;x2Q z;HI9fjnT#+yS7n*O<^G&v2@T)19smjn)cLziS%kcDrH?)32po4_n{n_Df*eBC!IcY z_b|g|*vb9*%Q3gbgx>OP5l{#Lp|q=_KCc@KrnzXM>RWCf>B-Dkrg+HD92V|4iYyr- zW=dkt?EnE0QP;8hD%CDvd>c)k;b0fSP5}6&Pp$sJ$I1u%`oQJ=`Uq3TR{zNpvifBC z-+ZNUZXK`J_<#NDSYZ0Uc)axCnMPhT%RWmOjP5(O9M+-du#D*(- z%U^nVxySju4MdnZH6lcRl!h($FWdRatk{ z4#-&yxPl|~&@5NHvH*+iV$wgt#lyUMtxe_`XR?OGL*(LjxH^>!oCa)gYCr*yRekUp^ zy(^lx3=CF-)%fkCYgd07W?;+Ku+?Y{2-S;!cs`|$@5`^(;~=I;_oviWxhhliGeuwZ zA=`=2?q`L5wdwNBZ0F|bMQ&oxUSZ&lVm& zT>8szUg>c@Zw3X-oGkZcC1))uo}A=_gdw9E(re4cS867&3Mt|387I#>zzpBce5xZLR^lk5 zWVLSVEeNc-+7!GjD=}ZIv?kJ!cSO!n1s{Fc&V263`C(!*NCtXM+%Yf!8MZN77f}Fq zAKhhr=jc>+y&f&BwASi<3OgN{DfpS9*Q17Qn|5y}bAOB)dGmh^00IPCK@DuyZGBF! zp9^bOLLC|aNT)Y{+bw6#!ck1kkoB3w@K{C;CkO~unu=^LU}J%Gy^mU!yMXfjQP0b~ z^9MVicl29df%`^BKQw9a9$7K7EyK$H{C;&q=l{hQD>oW&aW!7ysekrGDEQ@{epo&< z+L-Xe5ubLY@|MYR+~_^*1ZyB}Ko6R7ZT63*-gh$d{H6V^+jV$$cYS7x>5=JNFSEKu z9~(Q{ym_Y(0lB4`ue&Q>=gJ(V{Hb?--&DyReYiOJ!7>)&A>Q~J224fGeSU4}rRF=A zMuV&umynPE0HLO9l{oLgh4FMg4O1Sc#Xa)C+{}DBNM&IjEX(PXSPtA9fxJ`^udmqG z7D?LrWL6#=aZZhU4^29gu8|ahy%~&bYm*)`kYO@6T{pY_UAH<#BeqVj!a^x|WHPf> zkN)Puy6Ca^>n75X>7tt{da~ytTZDFck{J3|B8QtzqJk9HRb#=dyjH8uhhf#2`0b1H zTh5$Vh>WijXU^@1K?`Vlc11K6bmNA#@o+!Bb}if4=D+*Q+Q0wt!s$Y5uh+f22{Kc1 z{a=67nQLYL^;4B~BQLMpYDk}WmNKsY;bWN(?T@GY#&nh(G&_1)m{_;^@}{A%j()Kh zJzD@sdFp{fqh}5_zJ9)M9-gx&C;Q^q3H`3HZNEv{|Akgi#asWDy#7pNqT5y8B4ozB z!{0NSe?YJwCEXO;3N_`@)42LdkQ5LlBn%_W5NWzzwJ$B&lv1g2l}ZEh&c0rE5hh^p z(fFPiOR2+vHv(DkL>$p&!<8mpYhYFLM#PQS?$1M7Kvv;M#?88{&~9(rClinbGC&qk z_R!;l%mgN88KXnJG>SS>lyly`vOiT$U0Ds{NXDkuyohpTI`60RUO$R#fdL5mreurl zs9j4_QNbF-%esC!UOU$cD&MX{L`3O`O=r$SB6kc^`zRuvICE|{2#6?63*)Pzewl+6 zGDF+ad5c{RJ7dHD)0e{k?R&lHRJgk{*=ejk=xzMVkGSV+_P4)9%Pn8s}R z=f#85<&PYy&!qWa5p!y%#P^t3M{G@x^|1gzaUe{L(&@2N^w31%eWylWx?Bm~vE|ks z`|rC=scLs@L$;ItfA-!hII=9g@BF@Fu1W9UfwCyu-i_xBhvUeZ)sUm%h+OS%P!dD2 z5Bs7QJxHP0SQD#_-IZcPQml3qqDYA=dWvQ^G-G;trp>f>)#a;DD0r9NUU$y7519#| zPyh;r%&x8~++S5BfW*z4H*a2?Jpc2VKLYBOXx$X0clpW(+m}6agT+V91S#^4y*E$Y*OnxK;)Z z+ql}|tKR7K5+*U*y8*m06TEo2d^Bf#{j7aD z?H@_ffKBYfulOe&kk>#v)%%Xft$|_pQepuBFmdOE!1&3bzU&78 z6zM+Z*AoC}R0UBvZ!G`RcdFa}EtoNxK4DLMA#NWcbQa8Qxz(5)aA}om5Y&a?>iLba`(%`6xV#Iz;i2H2eN!{~WSy5ru-Wlt)Gh*W^e2c%ax}GCZkC$C zwz6~YaLElz8WE#!{e%d*wVge^5lEJ2e)~ z^q6N007r+S&z($Pny&;sR}cuv2M_nBpAZ0OQhkheswNdLcnfc~^5=HkXEbMyJe|mW z!Vo#F!eY)38$x$Uti4XPxr0%89ujf@SgFJF*HxtjUq8W?Q**o)UrleNOwKq((xIUbb&raB92Kabf*~};9_0{bYfi!6!ln))h z$DVo%kyfNUR0eR_i}H+G;>2ibtnxCn*DxTj8OnJ*rxyh4bX8aH{CL+cl^3a*{Ucr!YCfy2Keb=vC)2-4&qB-Gy zkevYF2K4V=t&T+EUplN&AIumI338uFdyjtBdOwffy-b%^&8w>}0Ib&h-+kNv3yXjJ zu>I)?JeiS4Q$d6UA4=veX$l-5)nk+r04Q+C@72H)0Maq}_~F!8)}C4I)k-Bbl(6GH zH%#iHwdzY{1!-umc{6XUU43D`y4Kt_MFA1xqt@ZirqfRfvi-1_^TP%Ky}Vd?nMzke zc^?w;@Zc$$ErVn*9wUR}h|NuQ?=36u4@d)P3w_ICgHe4%!(t1Ql0%?xmZ4CCmAWo9 zgSi@bU{qWji|L#N3Db;89XGVW`qT54Xp4%|gyG1?S6043g z=Lk<6!pI>lhZ#n-4xKsg2?$6Yb8A?ehT61lt!e!bIkMjuvJ(IruKt%V*3w^&J~w!; zns?uikV&nN<($VpWxcs<{pA&yD#Gzx3EIqr{>T$dqnH=cl;aliSlC5%S)?@Tv=ujNkegdW+Zzu3#W4`Cq1T} zZqM5uAWeaX+yl~pJ+I}G2IW#tY$WpmgYX$q1oswBG!;Z_o^st4F=Is23wxi=-K~Uhe$SFDHS$FY# zF@Lk#C^WaUr~v?OqM2mL!#sHc?QznUA7F5RXXN)BjeecA=Am|j8VjT!x^piaC$H2t zv)+%S-_cAB{^NVqfAn!PCl6R-+uI=>$JQ4o*mEP+n=9rkv;0z?&z5xie7-*e@6W(s zTz=|^bvBES51Yr5WT4-NWFf7|Z}rEpOZnutde5^J98Zr~Cx(N$m5pm@AJ^OXsqtP8 zV>9i_ihW04NkRFBzwl1|`pb>Li$)?F#<`o1KbkXhPbad^kTDb%bKWC#3ybHR#aC<1 z{4J#v4@$qd&D)0_o*^OIqKO<|&sX$o^Pq`6JH&G~9ne(UTj)eSP0$k-B**w8Ik`|b zuNLsaN^owmS$EWpe6Uu7bBmNRdDgZkbMVX<98UN)IH1}EAp4j+5Rf8Ls1-2Y)7*o! zRvuG65cOIp3J|sA@uApS*_~Z&7VG<2_GO&eal?+8tRK-%>SWk<<{o!-noy(PfXb{l z|9+)7(=09*y@s#1Ync(riovIi#4%(E$2SAO16ch0k%53gjn%I5+7!4&r5>W(+I8-i zXlENYfETBl6Uo@$f7~>vr_k0z0_h}geqqdcddPZX(Ryt`yg4Hmy8WzHYyO{o;D66x zA3JP6JsN#{P@PWuHgkIV_#{n%2P%M`ZBzh&oEn(%-YZ3q3?-kQ9D3u*a^2ZyT{Rah zHy-ctFxJuSg8qFGG-3LuODpGK`AT)CZ4e(oS`73qMq!k$fEqNbS0 zMV3lVBC^lvkdVxd8CJ{?{V@!`>-1U#)C#_w#O%gYdw zzn-(B-#96m4kv#A07yE+n_oHPJ~eDTHDJEJAm3T=m#dwV)AICBt~K6SN8 zWaSgXIwe|c-|kg9pup|jy%PYm*I-)p-p@8-iboD-kBy|xO|R{556OXu6*GH0jCC~Z zE7VC?o@q|Mx_b2|^PF-!ZN()^9=0bwmq+Vx6d zwpv+kG|P_i^_Jsj45cm7hwPEZWo9xe(?r4t1dbvgU+F+;rGWql+dB^F2LyzGh{ze2 z%+xJbo_0!C8pRvU#+s{xjTMIbaQxi&_V=Ca1b|{g|K?lGn6$rglpo0E=G%j$hGgUG zll-|c`Njf!W5IZ9-dnA8#HZ5m-hz5>0S~1kPmj{kIRE4XjaV%XcP-tCH2DsivEGlF z0*?X*x$H5|7649;rXD+zJwKDzJG9=}o!p^B&xf!9k*2#`7e~dWUS6JiD?jtz3IIfQ zD4sQJG5SdM$mg^6aoq|UsCw_Q5OQZ232#*_zod#+TX)_%BqZd)M-#O?TCB2jD?%`^ zxqm1|5(5mgOF9r}#UV%tNJu`;X*@{@6B7nYa6Vswnuj%)Zsa`xh(vI?B@|~Bj}1jA zB`Gd=+)z=2BocHgKX-X50v(VJfHXoc>(uM9Q=e3Tf}TPF_ZCrv=mzJD72?p0jd@>ip}zTbM-<%{f_c%n}rg!m)&V&@jZ-!-W_eJiO3i*#u!J=NK#9>h3W4(_`xrBZ8P<9|;uax)W zq>>#^^l@Ok+rmz#sIL5QX6lutjW*@mVa4U>ljBD}Gn6`Pd)l>C)K{LbT~B$w^7OvL z*C9KAhz2ta7I7B&(hqCpOT9Xwg@lAWSX3Q-amCk~Wumc&C9|S#f)`GsH-P}qj(pmn zCgU({!n4E1LY-YI;Dwdo;!>;ODgaok>(^)K(lQy04aTff1MGATj;Gw56+qwu?a~?r z2?$gGDnLoS^a1L|PBkeXl}B7)&ow>~QydzIFAOD`u79_(lM8M|O*3k6(Vr`d+Bcok zv*SJy8Th=u;!eM@vU07|EV^#p3%2WuBqWRH%*@fq(Aj9}kZC4RlR{*Y8-fV}Q7tN=>cQ003tytm=ze0BiNua12aV7+lf=PoLoJ?>< zbJed+Q~5^FSak#EArCOzr?L|OJVoag{og;&|KT&{p-5P5wGF6)BeCF6Ts}U4mrC9% z3+CJNy6$d_NP(u;ZZ=;7cxw?}nq|jQ{Hv$!3~$^yfUE-@c+BX-<`hJlp?>Oj<+WA@@OR5WVg# zYKddRspV4hjjPLd^+3j%w4^jezuZ#*h&q{8+rAuRfW8NfMO~V0tzB=F7oF;IeOt{5 z07gU%PR0i&BZHX{9Jo zoj~Y%$K8YTr?fFOM1XE!Q*tH+lY$AsBuBn3L4zjN7W~3BCqG@Ut+~GU@cXvizp@hm z8lHY}+D%97Uw_h0^04M=dl>o06L2&Mr!(%SC+rud<$FuI<=rxNTwQgpu0l2@K3HQz zHvRJBv5AO_J9liNcAjlN+&ckCyA5WW&cA-CEFY@Uv5u+J2VqtDw%lA4oP1zI|#CS*LCj5D^(L z#&}zHijMLW0tG_`fJCG`XyyIl4QFktSzq%!C)h0~?qNY#R?ak|xBudP=ywDFKEMk% zF&ovtdWK92W1c(0$eWCNM-##E7+sqXe|a@{Z{Bf(Tl$r?G`utmrocrPlUV=inb?zq zitE-kgBU3Y`qo30+&aVu`!cdTa%Av{_D}C|l;R*iO8+uYV&Vk9}hN*k=;y!`9w=6d|%s2()A6qBcuVPkVv(0`2eHR`lV3 zqcDYOaLW*;z|KM=;>Km*R)fpmpTGR#yw}`Vf4QIgzxA?xNJz*XS*gQcUuu*Z#y8Iz zsT_yEB^^AlbK(!1cH~o&^5W>7in}A0cxK3)tI79Q`IS7(6a&X608mO7>i&6OFOgi&Iv~SOs_Vnq`8OAJ`Nmv6(I}^7m z4bR&lez=)-Ga=J9cz>)@I&_5Ft#=|KBi<Iw^i}|o!7f#8T;@v>D-A( zbdZ}##*Mq3Dzpy(0e~SQ2+kRiB;J*m?Z(8UwGM6(qFU?rEvU9BOZSO4+mPP>e{Q#& zf9%+waE?MS!I|iMgPbwWkTGNk43S~m9SB*w8diDGT2rN)-pZAFX}0A*?76k;+}F|0 zHiahr*(EeU|H@f|>9D`~ZgBF>q~T-+CX+CAD*h)Iy{R$=w>kp50sZtQIW7Nc$vKjw zXUDBCPYRnFxBMxQCgrtL{Chtt@*Pq>iaz+4jHInoWAUF}Dm3n}G9hu$rsW!}2w8J=)6<1UP-p-ENGaA@+O&*M1+KGjAo)ksi@8Cv`0}+joKT$ZPn1*)PmE%NHBvxu)9)wr%*&I5Q$5lCg#+Q$uH>sY3?0iP*lc z?M|!@5fFGM=C|=XA|SOPJC)XfCatw<+n#IKQWQ$C{_48fx$Adsdb)K!40XCiPIg{V zd-jMOfw?KR*=b0Nh>RoWC^!=W1@DMY&XBjagiURr+Rvi`Y!>|Dw7Yh#Sy^=4#>1am zyUqh3I{{#|4u5dYO&I3aCI#pN^!DrzPX5^pp3K70ILx--k1p`*d8KZRrD=i>7F!pV z@V#aI(oO$lPJHuGD=V5E$C~z#t$g4{9}b8#c?}ds?<0la?BrNtVj!}Vzl%quN20wu zxNK(IBwJK$>ZO&Nudgg$EpFQ~ZevS^snOUo-#Rh;NRr!qvq(Y2c37|dV>=M4NNKGU zsX+NY`GNM73Ig)gLy=e7?(n|e4vwSXC^+MsiCtDq0!Pojp1=J3e5(@LqK1Ur3+}i0 z|1R5C1Ngx-ls)~mNq#Kpk@7<$w>?3M0w=}2$I^5t!kXj8%?e&9j$U5Fxl-Wx8&i;y z%f5eM;S~cU(<5>IQ^Ls@IQ)F_4x>AF{`v zPG*kURvOUK)Q?6-n-A|+-G-bAMob`W(v#gApmu{?O-gmY>4ZZ;>rRd?5w^=&^=)fE z+hrQ>{Xp-u0d`$aS=;FZ8H09DAkL6;WQ=vc!A>L-VLii^b<}7_aBh7<6`))4O4GIJ zH<#9KRNRKIyKmWjI3D(8`^`KUvXcPjD(XMK@0r~AVrb^MCrFV0XckXl`ACG%Ir0DW z9-k=&Tf%ReXs+bVm*MRN{?4MBNWeEA&zwv)nQ}k}5V-x3o$Y?McDgU?Qzu8`M+PHr zUcQTxjm$`_-_g!311z*wgNxsrn|*h+QEX|o+mSJjBWIH*zBH0Mk%0X#G~Ss`AQWWV zx2!#m>y7bU`Px_Q#&q3E(fd3i+OEzQOiCsNGX#@-W9S!*vAqQ6l}D=|IOqTJX1x%W zi-&}SY^CYLwLCCnqj4!144P!J(8z5M5D_T}YQTblh(JNZag3OLT;iZjs|_qWSofgi z>87Xi%}(apTm>D{Ri9StG#J?Dn$-ZXk#rL)MnT$FtUW&c3=( z1Gw{gC1WUUY1k5Zf0w+eorXp}x^>med-Ww%xY1m^P-vF7FGK4%b0%bb$QU>g9XuV0 z4;vbSJ^O#|9|Xh=&40@ztmCiRv1U=50-;Ki)}V;A?)2@|8x3+dJ$kd8+h*!Qx7>-h z-fTX?jbqyg*tUb5U8%_sfwd=8ZQ0rWh9hUJokNSTgTjO@_YjZE}7WG4V9P1g&-@0??{6rUaoKLhp%N%GES;3TSXn=iTXZ@F&Qy(em)MmxSgL@xDfz1Is`HD@nIely zO4{PkQ0&+sJvPn{F`h7yquOti0t6z`J}4ji@y10AK9;q|v$nOj7C}s)X$!;VtY`PQ zb=K=T88W|0tCyU@jaGHpZ4^AWzGDGe*O}8EIvY)nn^uao{Wkk`RC{KlDQ@>3Y}Y+9 z(ObK1qXL!^*rj^Y-fM^|DhtaGDbyAlV53zM_k(-tV8sh#{WJ`C+-m z-Vx+IlEzc0Mt+9RIjMj1Q)+HE>u&k_@~Xa3;Ft0+mf%ku5?_8yjKwwXx!cW-C?ERN z8kaLXIhvTr#rG~d|2$!nYGQCE!)Bcd+zT}3_fBQDfW@a z6%mjlhg+?*H~VgB(i2{dD^t1`Ij_c6*R+XQV)P z)o?v`g>`Er_Vgxrl($k< zX`7N3#4U`Q+!Dmu)+D1l9s#HT)w&mGPc|xsWVwVnn6eT!-;0oBj2V_NY{B}M$Vy7P zt)O0UE5%lEuDNolQJiTtOP&h!w$l$Tn4L7@17>={%1&Cj0NjAyn)fWjGM_Zgro2#j-VG$kdnAJ=pm^x#*p0@( zzxZ*f+}tKQ=P8;g!F&ZS11~6Nu z=Woi2ho2n}#$o_kh061;AZVX7Co8;Xvv4|TRF!eFB44>_UtaZBs-C~;qtg#msS#XS z)C)x~W?|G|<7x5en0<1HjV370k>GC5f4eoV4gjb($q4|!5F>_2MMN%XCZmSy@ZB2= zF^Ub8(~^!ySa6*DJC)5)k=Zru4#Hhkfzd<_tx(%)>p$; z*dZYydxD5cExeRR#(2gA!C1!7a=nHtWRDO51t!9<4Zt*U7>s}lSkmB&RU_Zfg@&qo z+6xE(TwlAsF4hA8;2ak#X47Zo77fRo!I((eJYn;g!6k<~cNiuDtw^hmDN8?yS#l_4 z4J6HSmF+G&k)dI6!xYGRoqlMoy_Vmow2F)6)!F9awaUs=y;0h2@*@l$NtwAL$)VGc z^byM*>^gHkV3+RgOW5mi(e0FEpKGc5cCJW)Th`@SclBzsaHH8MdUp&|Jj4jc$tzX4 z{TKInf25b@AQi=5JbJZ=sy8ZYwhlYF0&AbH_ zsB3S{zWLYZ=C7={^$l;#U9RWHzk2+{7c$X7akpnIq(2aprW!B)y9>2V^_=(l_|}*0 zLl4i8kRDN*>Ml(e@yA3>pM7eK58IkZhstvw5CD(@;kqzzvFvmFf5A=dZ0aOGdruIE_2_enm6Z(dR~nPNm`_ zmX&1euAMnU`iFv`fz<_n?wxYsMypjl=$>s4UbM4K!-K!LOfe(+t&=Lw4{o%&7ZAu| z{$xBDk9v=O&3I!q@f)wJokYB^XssF)>%q;u|DE^vrzc}ye|>2 z8>yIDtoUnn-_gA3>2EITB+QKDaqn4>aw-Y~X-X32ICJ+SNv3y45Iz`Bo3C>;!;@ z2fu#~II+KT#qJ_=NS?ur%17#3y-m=#%Ws#LUBk(Wu26&K;gQk?Vtdiq^DvwfN?DuU&rg1GnMr zr3;*uFhBk46Uk$Y84p@c>O(|j&iT>5das@jv++YhK1%L~`2W7QZy`{8e5wl8612$w z_;7R3_DT08wfSu~jzmV0p)`5saAfSMMDCbvXBfAD zK1`FgkZmC#283Ew_2qyW!xJO1!K6Ly)OX)9k&X43T;n$Ui?7VT`@N~+V%^zW``m%! z@u&amq4=2iP@OqLc7ZXm_(t>P-+rgLYYj|DNJz-;5P=uyl^POqK$$d5mc^9eaR{?* z?-FEy3>gO|##uWP001BWNklJtzSHfD~+`q6 z%{xpykfAh%G{rtbtbwmuHLtwfSiVtOx?WniT&xy$t0qH+(&AQJ#D~m*6VahFk@$$z z^pUuv9BA5I5*c#PEU4-FYOpp{UAbCby8~ddvvIF*x zhAZ0bXCdy1(fClxoL;%Z=pXMb$u>V;|(n6v<~-3W{W z#7%s3SWf=J=(nC7{72H*a{jocNJd<0mevXBi?Fxt_H?Bt zA|i)&gp(T}+OpF`E&y;{3JTN-6B4FzIEytGvr)l7Wus!P?iK5POS6_o>xn;^SDGu+rSfXiceXJaSceH_#bjbII&dPAJ08hR-Y3qS z2Lu8@M8*Iaa>lq|l9LE(Sea|BU2UygtrupiZYxwJx9~8?P5^Lx`ageM<1GHQW1;fg z8_0Pi%_2Dva$8l#5F!#D9})liFCF@|PmTQNH=Gx*)OH!SiNFoC8|XiKYw^49E`9vu z8n=n_(yH)N*llDGTXQS+#d;aEIe>K&rdwUFW zS~2;_e{d*sQlbo}Aom)EJZ2=5R)%Z-{r_<8;!E>^7i!LskdQv(2C!IB2q>7@3fL35 zde%~5%=0z~000rVKyIKgQJ5f1WCD-_Rd<8;Zt{p^V;TGLBO|AVjiXtfk&J0gYF&2r?BEGtNj{jihSQeg zE5Egaz(ZhyanANAJ5`|TrRLI&{PcVCOVfG39%ucr7Rm5v1{lAi&k;kgI6W~e9{GCW;%f3YU#a}`T5b1-C{0S!+c)d)&eR8z=0E)0 zz?V*Nn|0O#$ZLVsAK3{2C&v;4Nn>}}X~)gGO0v~TFJ4>y=^tOe`N7&A1t$Ouok%?O zt3$Cd9tJt@F#<)*OeU<1U{ZPdum9bTDFsEh;s1si9i_ zElH%BsNn_;w-XqgEqN|vDh{pH#884IOcslYsP^oLv<$|2?`JE;P|_SonoA{TTibI0 zU<|ondud}E_{wd#m9_fnY;p1G>dg-p3X5e!4(EyfJHh`-Qo8rpxU=rk&oe zMq?2GYIXQ0zdQXua`x*#cl^Ko_&`d!^%%besOASLR>& zqf4s`H@4ki+t+*i(*viznuz3BIPJKXNM^*%RKiSgCIP@{y5ITNFI;(TI`B6%=Y2k2 z-LvgOLPGk8vNLe^;Opac66K%IF7-szHs@C!^E;Q!~t%$*LF@7j#jSs-+pgEqy zv8)v_Wsfh_H26T$8c0~C+;J723(okSni;lg&cfA|`O7Oy*H`lk<9Vz zONEu`a<$M5YkYR%;fZ#(Q3U_X3yl3-{AWh05_ZdpKQJINfsr(~Ga!u~_a#t&>ag+b zubq7HdgC{KGJk2Ix|h!pU+HiE;M%u;aP8-x8v7r<5IG!IhG2bIas)_3jl)BUs3jZD z_Nxq5Oyb_ck6J@{x&G>ZxqR`JIj#2k(a1PH`uT}7zc9d(exTc(4-V|K;~v3~+cFY2 zQ?`gQX7g zi~-}wBnT6Qg~CKGHzif=>$DI_4rz{Q8z-`&(7?3KnN|Zath&0=)C*cP++fQo_X1UF z_@xE_fMu|ix?ZfoNEsH2-gt%&B<+|jW3~~uq#^fXsbUD0OBlJNX^8C~&IRX!v0Z!U zYo*<$Un@1%W{WfDmlm(Btj!gj#+_@#q$Oi1d+2EH=woBUC$h=Wn6xpVAkcoGeN9S} zCelQtK@$;y?#@g?6}k@)5gD*{i&}_~He;ar;tA_>lc!#| zR{y;>ovX`UplFwdx9j}Py9+N~p@HQ5H$OT4jZcnc;)dY8%FoG>WF~IyBs=$%VN2k- z!R&>#7k~G{+H7@?&x?pgL_GV|$)~=2G@7yq$X8y=uQ&Xv8@SX-&plxCj}Hw51O&;9 zh)l%IgyiP>IxcA{F4g}0Uq3&0X=xW9?U0a=kC6K<{@<7FT?YY1&*w1!ss{eYhMWQ0 zI~abRofnA6flK5Da07+WsorF~GN*WWLvg>H*4tO?r?G20lym>YLYRFD$Oi6l%q$@;9t&?yK?YBiw#7525S?fI!1P`J3|p`jzz0O@Ph( zgY-v+fQVe88E1AHJN;=t6eOxIpR_-JBL1W6{_nn4nO<|S+BZ>IjgAJ2U0 z$)Rt3dgADC)D&Fo*HU?MB$bI-b8Fk@y4Z1Z_u>kzs8M##{pjZF-?_GX%ec)jj>*C3 zC%@g7p|@>TyYBX zHLvO4u?Ub0ZpDnjiPXqs>hNQOLr0R4q{%zcTHbA)PXwe%1-h*~{q_IrAy5J$(ga~4 z=w>>h;BMU}BCt*YClefnWKwXWeapL(5Uq5x?p5>6#cQSM_ve>xthH)xm~VAQ9!}W_ z07UT5{-*R#znK2{!w?q_yYg&%pD@m3gxN_jW618&J1a5x$_f13vD{x>^8V!Q@?6n( z{5^@!h7VO@xw&iJAjDT zt`HJd#E9D>D%dvfW8mqT4_1HtJLe1YwNP`0goJz~cmb@{)OmuIZxkK&nNcp1_wmMQ70sw88$`|P-vPfb=XVICjbOW=WCwh zRp#=|x2O0((mIrj92<^Kj@V<_XfkTdxOv^aK6cmHb=R3uCF)*FSOm3r`-(C9H@k z`JVG$5)or!ARaNdFYh#LxowgyX{wi-7hjor+7{W4kTLedhh$)j1GiJ$Ji#EG=B10}16Sr8W5K-U;jcTi~P+7RT zvT${E;p$4Q*oZ`|-Crm&l%|NMqq*_a`03$8XLH%HxG?xGXF`0Jn*gW{w6XL&mbm&jtZ~f_;<@u6Rchp|QXQ1fPT=B|$>9?Q1`18*k z`T1v#93G6vZDWt+{wK%MshGK~?39+ceY6ZbRahv!{KxNn@RMt{J+hal0071?mWe+1 zwaF*Gcr=!|!$-yKaO6=LkIFazXwq)rxT@tT$5oEj>R=|ltV>M>OfYGQh%KY0u(o8< zZh&FT)tVX zd+$$`29owzHg;qvacV4ccqlQNiJH64KrG3#Nh_PQ9bavhos1!uOc;D~MxP zgLdPeN|RDrDN@9JmY@7Pr(nQ(kdjxM912o$=R(;C{cQ)%7SoPlmDPg06H3*z0#XQxZWdaY3Br(1;CCW&{CxaApf{a+`T z2>`4U)ojP^ks&gUf-x?b;3(R+oV8t6vAf4@E^iemw-JEn*GV{#WP8@xFaNAgYyBr^?R8r%{n@9MM3bApAd zE3f>Qcc$N;-}142pN~Hu$@Za#XGq9BCLpS`;PM(2s=-oCeB}f`lH?S4K>9vgBVM0c zw`oH#vv= zfFTo{I3W@5PBVajs9hJTLAP^pwbrWr4Jl1Zw^MgfYtqn7)7|_mo1gO5OMf4K2(-<2 zw}Rcqvu$D7?KI07;|w|P{%74wx|?L%ZXnbt+T7iMz-@TTH!6!)i}RNYg@szHeqfz4 zdg4GtJKOyJyTMX5`S;EgPNX%1`?>HJfiXaij3bvQZ8Rbv?R(ZGs1GoXOfoZ?i=_VX zFWXb2yYXRv$k~HdjilFD`N>Br_#93~mT+3MTevU`<4=syFrS@+*J( z+VYKjn9vdu5^^6x1U}JP6IaTCB1l@y*K8yrqJn`|AB9@mRG8OpJ=k8$?tas5Mu?09 z7aJ+HOad2pOR>X_isGYWy{#_e$Rr8_g(;*Ji5t00VlWd=$IML3O2^HGe7(|eYb{?P z20Qq26M^F^$5*AgJ71_rOfkC_DYwjg)y-F(;k2EI$ha-ywy+G&5N%WB5_T?Oo42}m zwv#wjplgMu)9}~kDhpQ%)8`h-E7d)`wQs>{gklXxaefNO7xZL74-{M96tbCk3S`z7*vezt2W1*rKSL3p%Fo8Ba`<-(dM2(V4QJ@W{gGBC`>>^fTxeA zpE{O$XR7>1ugt%Dt-4UCyL z-P-N4QxH*csdDAj<=6lGs@uGak%DuK=OSl+X5xu297*INcYeT!03wrUN@m*YcM&O4 zZT%T^y3(okEv*mz-Mp7>dJL@R$?X3~+Pbnc?srD{?!Alwa>jY5KthO4v4rIPFpSko zmsgwTe=>Xig_)K4yXZL_5)$(Nv-e&>l4a+e-*MNcHa!=l|IuVHo`X$2mS>jjwp(M|VZV z6W=?_&t)hA9^mv?e4b+aLkRj|QwRe@0KyOx2noPsqs?Z|nfXAR?eNIU?QA5VVn|e| z=uj~rRv{(;Vu%ocNP)1JGW65ROga1Vg{h^Qce`SLxnzGncf0EiNUGfV{vrfAA^zo! zFR#t38A~f?&FPWU*|E&|iR@S|ku+69QA*j=Xg*FQW7F-2zk1#ZAVwI6od&)8sTT)v z4-R^YXf!>J3l{I!HHt#!pqN(pUdYb5{aClng`A6*$WToz+QeM5=da&3#r|) zuK*iiw;M8500DY!TKWfjyOB*RIoJr)7CTE?z%5b|icOPAKW-N7ux_u1Q=#=h;*B$G z{?vvp1%34kcmMHbly|EB{m*Na+s(z>cb%pixDn?MSP+J7{Tb%*&z9^209;=U|KX3> zKYGV_wG0V(g1KSqI&&k5LeU^GprS*po+zma0O;BG2qZex639sH{1qUCUzyE5e>(gA z&HVrM^E+SMuP@c@Xm_C|001t;a>My&Ke_p%5AMBuuJq0eQ&&!vN3(juAibRL=@Bbw zkfy!8CN1aU{k@)9c~uD>9i=B9WX3xDeeCbVC?(lru5saLm$@1Ytmdc-XCI=Y9XNJL4^GOaQm; z*w=lVV58|hSeKn}GjEdsL;ylts?qM|qEC>X%E0SY6&0vxko07yvYvO^pTDZ$yn^#d zZKA-(b9yeRW-QfEoW+{mc0=2Xyf9`D51e5f_#yK=zuxg71Q|=KG~H_3t9SiVBdJm@ zZKy;5U}|Vvw@*e{;6|;rZnxoh-JrSB3H``4AD@S zKph^JqrA6D_DzWxA`BD_Vhv&y5DlUM1y@f75JRFsqCqWz^c2L8GRqMJ-n=yS^10H_ zuC4s(`*&|FwiasLc-P_+0MK^BAAh{?(`zeVId|^uD~2Go?Gp#wY_Wi8^yFa zJ25dmVoekb4z}MRX~a4;+iAG~LQZ)c?#fzV z0BlvEy*-0~5C{YS5OB+2u_fSk`{@RRVGZ1MYze7dAGLn?!MNE0SJ?+~#5z^CI@eje zQLim@yA3~Z<6Y+EN*=+pC_4cFAr=4mUv&SAcQfx!f~*X>Gy zSOvXkkdqAr2t%SG#e{kiswUiZIHgMPJI_zPacT5t*H-@Q{kdxkjio_FXdgik(U0fa zpUt;VjaYA9Dt>h~SI+8&igz}8{`{|R?di-ALMv^Yd*#$CzjvJt;s4*R6?9 z*o^uJqJY*Hx;Nfi`tldccGG{-(~(FdlKl`+u+Rofz^tW292K>=pp&Ey34-hKjN7)| zTiZRXKiFieM`yh~V^3|uo)2)#w`hI)0dZepKB_XyP-@PN?9D9+oPcPMXozU*T|>cR zC%@tO9M9`xxkM(R<&%0LWvn!ut{*#oBoKIX-et^q>_uHKssQ(XwcGT}YA0;imK!iX ze8Bz1C}TUyOg!pWL{Qa~MApntWTq~Tp1L|-oX8T5JSl_k9@(Zs!MdmYL5s@6heszm z001BWNklY_74}} z5B{oMdo}&`6uMN_fmp9{zWKGsMqc!ed%%Y6aHAVgKVlX`L;xfJudB@yR1N5{Km@S@ zi4Ij0=?O@*{izpSA@4pv^~$;OPd;D#t4|j1)$n57e?-K~P8bJwSKYg-?q7bq_UgG@ z+l|q|WE8?ETS{H|#@Uy?dnsMqf2DHCLEwzrO?Tm1^V;7mF5PJC>HaN|NF+l@%>jRP zhtDLcrF?5Nz&D`r|hO z8&3cm*_#Lw6=JQgHha6NP3JAx>#w6Kcr<5Ox-vVKsdfDM)z0;W=B?%SYL_^{Zj(4d z%GNr89nkqThjP%gch!OOVGxyMO3Cqar86&1mS+lyoJrJ^qB-}+@O}b?5OGACmCo{) zoz=VTR>iR!zVAd#23s8-PmvtjJB))rdcXTwE&U(9mU(T)B7y?J`nQ2Cp@;yiXIXDe zR0a@$o@EjB>yP&gjVCo&_HjVCUMWt8ngvz!(ebpqJ0(b&>TkVr=IhUmzjw3sH`l5+ z7VYJR_pm~94`a3E|3B|9A8;~6!R6D%7r%4y%3EhO^8~c0c`6CqsB*V<VQrN+5rmz%Tog1kS{gB4~aky1dZm`dM zwkOY~Z?os#B#@{8Ymlgrs1PXtp&bskJ0UB$20!(3j7~_68~M_{pQ(Z#@O_iJ*Dz-?;zaE zqd=+&Rde6&&4&RY$R_mff2I7|xy(F`8=M_gQ}Cs=L#=;Yi8z! zGA8n!e*&3hFdccZkWS7c;FbT)tM1B-Fk=ONGtKG`oTIFu7GFNxoo@pLo zqts^{DLeageEP>fU0!O3zxzV&r6~)Z;HCUv^inB^28j+;qhFW&xIhS&v)1ptKKt7F z(VyQ~dGE%`tqQ8N0=}1=&)owN%#^I>zA<^_?dd1gne$mj2oX5Z%B|MiCu{Sct~M*~ zlb(@8A~_O<&Hw)d$3qBx4)4^F8}p@3{LTgCYyoSSfoD9uWl)=4*ESqzXoEILixw|h z++9j>*A{n*yL)g56bVoyP$=&1Qrw}qyL)kmH`o1q^Gzm`{K}kJaxB?vA1hmXAk?IK zcIHdq*ANLL#Cv{1!iCCupI0A2y;Zg`USe*!zn|@9rrqAW(CF6g=iNBe;{nD5RSWj- zBH^af<YOS=!KIj$MubF!}lKTpeq7y&zpooXFvd3$CQFHmZZCzgA zZl{P-S{s|y>j9|WggKMG;dJQwgSx2ETuY>}D`4%u2yYrQ{XA+Sc2Y-1p8fdy&Tb?| zv-yl?ET5J`>ESR4M6KPf9GiVLz2gvoo%)GJ%6Uf4g8g*W%FiYL>dwcz^aH7EH@fD( zBRRG5$F;%zUD~iJu9->stv*KgBIiuz5#OpgeNEF+?Ffl;4Dpn&Hr*okCEnH=-bN5T z!g_P3Zq>C(<3JtzNl=FupcFYAtrEEct+HxmK6lo^u9e}m_pLAmI5?>c!JKY}yO3L` zTROB;e3C48y{zG$yRTCB()^CHU;ZF>GNjrdg-Aqa5Ed_~DrM@i_){pc8_8Cazu5U| z5U%Z;tMC+T|0augXhN*7capjI8f$Yyf8?br^V4ea8J9nFCt%GDnpvy*vMR>E0(XviDDndcbnb{#u6que#EnVA4$XMeDgTaF= zz0WfJRCT`Jwj)xOqnwG&0M7{Fe44a!X`z7aOiZ_zItp8ifPl#UZ2feZlD zjR|L*mT(4Hdme`jY|W0EnV(0l8AqLyjK-3j{b@hcR|r7u29hIJBF7?Q2ZHQf(sbU| zevs^F#FeA!fpLFhC0ceU{ovB-L6%h)si>NA*?l)LJRLDU86q(QOTCy|gLxlUv@I1d z)mfpB%vjA@dh7Fm(qkpn*)lF4GlX)EeCYhT{kUdrUoSr>9KxLsLU8zuTtk)1-#4N~ zEJRuEhc%Fxi7osNa#T5$tWRnxwiU^H@S&n%Niw*5PP{13oPknYod}zOC>E?wI%|7d zSx!nure{xh%nOq~s2~05NyRU}XYGqDYp# z>O-EevK?9@_VT=|@fo9#5DkL>R0*IVO16F$dCkfL5Tktx2#{c_4w^foVgX*+saw9* zV~HsYc<}1L4wmRBD%(qv7KZhH!upO^@h8FuQGB%=i09V*En?zq z#-zpC|4+r3s1SY=I9w?mb}ua@^gMI^Bpc*Y`SWqc`L3QBPZ9@MA^k6FiT^VY94PVS z31#uz?ZK1LgSUTb?-0N|Vhf1PvEsHlhTm)rH>@)i5`lZ# zvHLEtP7(p3$dX9;;;et}^4uMzeviExGY+Hi5p@*@IF7lZQoIfi(7&`%GNnZJwj1{I zU|Nc=LB*$!?8v1+*UyegB@L9k*__<=&~j@u+5or2bu9+E5%>h`vPb`hyIW$mNedti3V& z`rU&L+M#v#3^M;Kn*nn13eaEW3WAESf^j4mAPPzVZn#D`UVw~gIxc~j=g46}$}FnA+58a_YbGvLJ%MzNuxu*EP%w&y{K_;wmCNo+B|hn*mJ1>-~61FT=PYsrDhA?;Sa-FRkYbR!`mRW_rwh|Iugoipbj!@2& z&F>qtYe?suCuRKQ>>_8NL8D|)Q4fCi33J0cJF|(fn=?lRTupHA_MPYPI#tWyppHQ? zf9H$vRm*ikMq$p6C5KbA-X7Ji@QTD|{CerZXOos~`bWIIVbb)dJX~Ky92tkt(7NyL%r@Eb@WOWJ8atOz zH#@KAWvLp}DtBknLsGSD!|IeiWKL;cV1HO!TUvZTH)7`_^)6_QgiGqCoff1P@6E|u zYE#PYl$y@S@06+w8|ArDWr_Iexx`>8HqN3RH?5X=9T(~7=+>p#t%bJXO8Sx9IpXy~ zq9|Ux{quU|<{RHY!u1Tkm(?QRhzGGmqlae zMnHyT{3}548aSX$GdPVN7yRccX5cW&PvonaTvxH5dVt1jdbBk3uT`X32bQi&xkx+9{A5m$>oRwa<^b}Ss!ZK+)o->aS*^7h7%1i z4001Mk_84_N)&#bO=*2iBOb0WkIF+$IhRd90U@rcrj zt}s1uSSO-n{=q8GWkmU%0xd%)5F5n=#R$a+n&HT|;7w>L@oks@#Zh`Q;7-woN2vM4 zy-2_Lplrp!X)yzu^T9mlXo*-n+^g>;Z7f-H;owbu>Z)Jc31L) z`QP(FyAd0%4#bH2_qRH~5CrF)OgKWi8S7(oTrd5*1_)S#)^2c0uU|jzB+~Dc(q;qTNag5dB$zHSF6;5Zr@N7KNXi$q^w4B?tj5VD1q0#6FW%$Rn zrc<6p*83pJD%N0zj#p{X=*;3GF->~;$MkYc*@oH1)5;p3D<>q~a?+)(C1tDGQ&T2} zYs{(Dzxe05A3+^gv5xW%IfdF8n=spTE|%-a8XWi3h^lyh*)5t>z1nrSkoOP2QIME_ zOx3Y{GkfB$F9?4+k=x$Qn{2B3OnKd;6=)&OfAV(lc3F0}m6$PeR0^HTz7*HyE8$IK zVeH;|X}X-uB>A9^wdhreF!JAUw?oDH6H!pHbEkBHr1&^)QQ|nqM@F8cPx3SzAJsUf z@<&G=J%YjdJOxagjLx-#@TOJGCAU2{2(RHQ`+7veLdi$23*rf1CNFbsu^O_T4?LEd zt`pGj-&V5{r)`SFgOZZn*IeE8vCO?Cc2rIF8k8X55HXG+;}=_UgIF!<6!6^?FNYMh zE;zl)Shm)|gZ_%F46T%O7;eDr5pXAG=;)E4%qnWiK&N;9Jr|K3P?ezp=fFmB#1k|u z?g1X6ma<0TejAau)Rg5?ZA#IMhUF0gvCF;#H~rqzsjyOpgQ4#*uzk?PYl6Y)SMaV+ zJDic05|+aob}9EC;$+}MnEsp@eJYu9d-_(1joB&)wmr~xx!8f8lKeAn7oOe zoFaOqVl*?DJF%i|*0zxSs2`uiw9 zf@|KK)6wq}TL#ZW()~Z~*h8ND4)@sv2CAEIhpvVR4E)0r-Q1?H&YG!;Ls%`bO-4sy zoZ$p2H;<~{f%r_n4T)qFTsv>=sz2N<-n`4p&KTV`N54C>;R~OKOL~{h>mTvjUH+{g zM>NMn;YFKuKH0|dU>fj^Zx*n)EN&_~$BxEzSv4AFN6kr;!d#BrP#OHf=66 z7p1$-2!~u4c-a)8Om+KLtW$its{6Fz*E(}{sMnq>V3eBTn>nctYxli6;u(`4lf06pFuv`Bcw5+QR-V)qdVzsQ$A0F0pC%bmuYMX*I@20Qt{VP-Hgt2*UqVFu!n2 zs|&|5?mJ_0tH>6$&3WxS=4YC7LAmRK*d|3rV6=W(O2`qzvQ zJ_!QQ$j!xuiQFnCT$-{pPG2(#q%x##mt@Ek$b29sn$du+tq7(mkwK$a&HaXhVm&Eb zk+n}l8KVs=PnPw|K20CjCe<@pCKPzL$;wVL<5eZ3zyi-AkIP)(??Ls^f#3oHe5OOE zLQ(K=ns+<@Km*)m;S*UwOoeC+g|Pv@33ROjeM)XH7*gp#U7gQfK6L7S6B7Fb#OAVCpcrtgB{?Q`k$OUnK>Jna#j2nXcbu&5Fe6WOK7Yq`E*ao&CH|_x&zDxlWQ(f(2$yqXwx>mW zT7PbymzPo6)A}Q+bpJJmlRxj8%QBxd0On+IPI}II=#Yl0q|pJU~8Cken;*@l@r1 z?J`EAVa-&rzG%C0-aDA~C_%nt$-Ihno=p-*=-F^R@S?L}CWev8zi^#trZq8dwStPr z&`y;2IFzh%?+-ION>;pCo1luYR{t#w4di0>XNXi)v+}s<&=RPSn}DL$&KqxiC)RU) z!p-kIGK%krSlk0UW%v-sLHb&SM5X>XOFx}SEZ9&YHjxe+g`S9pXk6jT_`8umMOoxr zQy5>k)HSr!6;xcZ_aw%{v*{&129rpoP*MP+JQ1;B;t%?Ff-t1$AYQbMztPA%7)#-y zUTYF@Qr;B(=}xkIQH_&&W^7SZgT~C0o*7sfSKIqwY~(pV7x(GXn$8f@+<9f97OSb`1`P6IoUEg zHZ@u=8V%y5m?K#UdH0Ui38BHCG9%KKlHwW)c6pc_S;X{D1;kU@-^dtFi!V?P}C-l2o6q7z^CH zw0Q`I;(Z2LIgN|Dry}y!q=0L}D9XJigHJz0urZBy!luwS^FDCeG)!D36RkLPmDfPZ zX5U&}wR9{72^rB1n(})ZQG2)jgpcGm8|gZ~lGAXD!PxK^akGk%Bjmv|rZc5Bl7uQW ziH&ncCdE;A7&kAUKPiG;f>?8Y6xwze_Zq(sJZ5XkD?|o>LnV5&MexuWn~*C?(~7L< ziV()D!YR&~{XNp?V2`LyP4!|aAky}qkBM0ImgUEla zW$(@fEAPKkGM9H4+>HG~5%ubz89w);i#!Ixi}ii)OBS)G8~Jzs%Z>i1`YZDrLHD=z z&@F0mv)%R0kSX+iZGl^xHpDQR&Hl7=qrEPvryWCXtOez90=u7gkLSzI#+&+?lTufH z{jJ+dvK}D?i_|dB(leL)urY&HU1scH06?oxQZ8aqPS3*d-IBqIfuZ=CD=q-SYC=G- zmnl!%&dqUs=5#z}H|pD@EnMp`b3hB8nx0GYvhq z_$EZz^qH-cWV|99JKHGRP=huyv@$X{{568&Sg&FwRna6f1Syvy8u6-bHInZ#Xv@hvfV&s@L*c1B>Sf2 zW>4it(ea9{o89zc{Xr?$Vie!%p-)|m6sQAB0%!yQLn5{aI@vn$vH+C9tN<_tMs`6U z7zo0FL_|i&dgIuPG*!ZAHpGNLP21m&e|(jkD&dE zFqI|DPj~Jhn1w;s5TD;p{YUxCD~;Sw9ee9_TEjL^(_}OhgUI-Q z2p7TP5m)_bSKHWy)f7d1N0lffYH?S-)`(-@bn5i-th$`H+B7g|e;7Ys zSXa~lbrj5L&n{kY&Kcnh}>gr4y0?5 z`@)2;GZL1UBDiFrfN*JQrP%QE@K9SG-68?T4^+v@v}n(=lLnSQw@dVg_bgvoqy2rC z%^LOK& z4HNn+D|X-J;9##mSC!s`004j}&v42PNUU(`1$Mrn@}TNHVm$zg@nA4%d<2PsxWqZd z&+||L1WF&#lTx^9YRZ`0jzaNWAP$D3yLM~oudoQreEsP#Ut?XgjC??$`B^|<5)6{1 z{x-(GGKAFwG(xCUOqtAsRFB1hnP5BJNfIR=LE1*=4o8b7j7l-|DaPU%K@v6s0G3TA zi3SF~437Q|L0^A8j5*hNuuvP)oB4PfmEv@Nm`uCkW%qdG@fvRWL=Px%ZAp_mvABSb zozy0$wGsbi-7%6U6iHW3lDZf@O0kCvq>W!iQ-K4tXr*2@h8|v-(c*95U)kNSVi8IN#qrvFW}5&tmoJr|F76?G{d468?-rf#_S6c*qqWxEIL2E!V z(&~Qt+9HJ0u=igSBjwPgm@57RMP z$G0DN)UQ`=O;-(p7kST1(kD)htVyzk9vqf4>acwqx5DMZd*L~iG433f5x1hc1Re!v zDKt7Ux>9RPy)@|{r@>(&FKsQ?y=D7aZNI-)zO<3oyLU@M>COn!kGIF(`<_9VO97aQ zFY|=VjB%H-RTm9eP_^D=a=ZDC<>~9pmxb|nK1HT_8M1ot0o_#jX!EP}h|Xw21M4>i z%<~4r7Y_j3sou_NXGb_7fib4>cXKAecWY$Yt#c3{)|SCGbG zFd4}ge^9aI-q93jf@q)+GsqCgQkdbXO7dw9e@ukQOytG0!*a5y6~3s&)M9-hV51GU zWjVN40e6&~tRwx}O%{J!Utu^{v-c#>`hb|$qv^!6R(S0MxL{ua7P z$WX42s{bDiLxkD#3ndQd+GBk0CsfvSJ<{mQ7_dNMC3Q@!$;)6emBiV}HFnCHZqq1U zEzxW*nLdc2%^1+frlfIox2F{stS7Mbiqv$+3)= zuQ$u27VW04H)4qEm+7F5yFx}o<%M+l&iisy^Bj%x;|t6mxWpwB1}a?`vfSLBZKUV5 zXA2ibO^EBk!R$>*$J`m_v-usG3w0UB>V#?zwz*UNwPtf(mK zo0D(vQ;KTG(izP4S`1VC7mm98q1qRdPZltCFA92DLXOOdY8fH30^sR9!~U&G?Pk5M z=BWgxK#@D7374yB9FY{(J;k(6MD?C(?Sthg3Pa(}8o7A*NknN3oeBHR(Xx5c*njw0Il zBvfU%;rL5y?O)D5ubF{pmew!lYqqc-c+s(^2D~r#h5J(76u7}{+#J5u+J~JAmW?+*`FgfAfYXv~K3=ndhfoN0rReduPoRTfN<8d`z8a0Bfa_`7b@R zna40Va)3az;^c+%&hK-^*T_iZAm69UVf0NCf48Umm&XpNi_&Z5ZW1{}&(nbe10BnoVU@cVXF#epjAsM%4CMU*REwLzWR}rd^)AAzh_T3X7upbf9CYqg=o>! z^RYqmR9E@EuOEM5(JeNxva_cQl+2GRW>Rl&1Z^+4k0~B|BidCD0xWH}3zwH_i=94x)#K(p;>O=b zCR?AswdGK9HAo%r``hpl?rgD|B2-OGMFIIooNw`({|gG3>{A)3k1$8$lK;iB{Zohi zbFbW{2|q=bn$Oq&>=9=GDG*Et#K(;&{=LokdmAQ9UhK>mDo#^1KOn!L{-&lIov@tG zZu-id`+DgkK}Sx}==<|kA^+!_a{asK5OfwLMLe9Dh!X&d=S=L1B7(h5{C4AZ&V4j< z=!Bp5x^$A`8F>j##=+nXve^DF)b_TUx8{1eFEYq1L4OjgO$=*-5(jlf6e|2 zl+x5X;~?hmg&cQFDL!rK^1_tRnCqTP7vSL8}Y{=hn)cL=xT5moqwo zd^W{HuMYOf(6}kC=-9=p(5_)Sf)JP^q4!5ZyPP9fI>0IP>|}mEx%Wmn<-#V5HDP3$ zBw3h%o*Gc#`TXQ|&!9ovUOGP1Y zvlg?H-roh}u<^@mvuy>AtU`SfdrWmKy5dH^5#L`6f7{sb%=pt}4)6DUPKKlx zdYO1#inHB}3Af(a+btW^)?4fSpKNFmVR(FkB{4EtmTJE*WY#VKTb9_1FY%MMW>4J{ zlR#kXMA4?!2N8a#x;)TGbuvCxQbWGK%jaOl$1;D)5+q1|3CFLBe2Efd&2(Kov{&r!gQjL$9Ie`Dbg0b z9LI{_+cWbYBe7LneR|H1pU>Rvevxyg%BB`^rzrY-Q}V5xxi!tLv+`aP_xTu4A?79U z@pH6fzZUJFy?pe^riGH3ngx1F=&rq7qiMQ-UDH9&nF(>_(L2z38b>}e6#BT%vifpX zx|nEp<1ohZpKV8MNmr_~Cny-u?etC(UQk5ylZA@GBIK?3(^_Z0+X*Q)?g1SIK+AN( zumc<+^5D>Hg2?!p+MKe~A_#eln!T3ZYJ@Q;Yxq76+>{qD>bAsxIYtw9AF35HPCxF*y=WtcNXv*dJH>l@pY|vRPwu8kB>5Ih(cgNFCq6! zI|)mlh_TOnzX5ZM9#ejG9-qS_6|2UTdRfCxg;KE}M_nDfePtcfqJ%gPr>N*CH+s-y z9F!sbjYjNuk`q(uqmSRSW@%zg@0+|wjJrd`kC|=OQ<~+QddOHU6enz#LzAz4LwWM0 zUiN~~gZF4Jw?V{YrRs~%*N~?FWv9}iXwcX~hJ=*M zySUCm-O(jE58JoVYY@w%cym<^3gDtov_9UnZvMU(5ltAQ0CsRvQEH@W#c)m;65x|Y zsYk=XtsM!+H**7alKwV$JOzr_t*+(PGKU)f{L6%3oMHycj=N-aH`KSL#%C(Gmj#OV za%kWB{E$4Rke5(Zju@XrXsZjFTV!#57ez&dyDzUj*{_dAcufw*@r`u16_0L|0k z0b99gr@=brL&fpTzt2eG1=#HHffjGO>-x;*%lpf{eV;+{i7slw_gfY!>^WQVn^$U+ z_>$*u1jhs{5FG#7%Wknwe$6Z28}!-Oer3#1#81K6UltNM8ZSkjZhMoj@@$U&D})e% zDSn~`ovLSdFgM%mxX|NSlNCa*z(iXLF)QO^j^=)6F1??6T(U4K&-@0ud`+>63+fEc z`^d>uXq9SQL{JPGt3R$I8-$S!;7TEkxC*60?o(8E$rr2GLg2N zt}7mOd~4b?%-ElN)*?^1|GxKKP=w>a+c@tMqP|ip@b5;VlxB^JEOYo~@CcPIA8;yYWT$DsW35^av z6U%D}dZXuj`!?mjckTC&3q%Afvj#E#{Jle@8Hfj~lKZ3~q(!GoKuG^{2Z@VzuU17y zM^10Zqk>MQ`|F77EXg9~=RbUZ2rjSrq-ex6pppqm5S5v~eUmfZH;m3BF>lsYX6s_5 zUsF0GKt-y9y^UK)I8lal26dHyjJVd0W#MEd2pT0j>tgq+iZ$_L=E_+R5Ox)Dsb5cdF!!=Yxh*zx$nC7M&ugsHG9?1MuSU?rr=K zT(>KgF%$%#1hOK7J_iGWr7B;Efm0a>sUm`liU?5H)WA(&h~ebnW<~j1b8%H_?7DOW zdUWQisf2IVVrL9`&s8po)pGrPo>sV1r1%VMxLIz6)!%*p`Iq%qo|uM^>RF-jV;VjS zUc$Wp`TCU-gT}WRUBpS;6-LmDK}_-{8Mkl>0olmAGN^(90sY6?S7xr)Y&|9O5qEhN%$^lzV9#DIL& z_Y?tvvg21`^w4Y)NOhqp7rbdRwzMjNeJ3ny_wF?^0j?dIhS)Ee(7mf0IdIi1uhxueF8d`l@eLgy3idLpxxF!HzCSt2sk{lD`ahJ!QWRIS zxJaoEk)QdCCFYC<;KgTqmtoO+R$>O1%f}sjrFj${q&cjE9c|2zE!{wR>gHM8vuJz5 zO9=wzO2Li`$vIOL+nvqNy?6668F!Q!NlXEKq@Mg9Osm5WF2&BjvmFQXy5sHiU=Z?(-GvvNhp1)o zoukX%j1+WDp8JZ-cYDHKj~6ZoBhL6A`p4@fOhnK7?6?Rg2ts=oAgb%0ofp7dv|tpC zp~9l`U%1m2HsfbWBxAo_s^eq90jk)*PDhXC5gi2Y|I$rI-tGl!mz^ByMfCo-`iz|cFJ>h%R)cXZfPr*c9SheHgPF=MIT@o9ALfwfQX@P~c)R_SjlRr}e zsn2@~34%yENCvtqLbjZk(y-6+O`@QfeB74~bbNB4zn97A1=eBr|0i2CF}gy_--TNq zgA89oy+re~!2xX8S9b%vSx&46u1zZRT3Zn=PH^x@kd-%)o%S?PSIG7}9 zA6tw!smjk|TOQB#q$)BU%vSq74o}(5-de zNRS|n-fP;ADnR=_nFxl@w)}~r|9az=#I>=F86FGX2>i+bLIOaX!CwN{z@ZRufu-o= zuRNp>fXDZYftJE{{%^8YkpNMLbx&U2s`&RfsQ(oQv9W(^W|b7+gJxKM3}W>5wGsqn zJcA2caHqSsb(rrvb8WcH)wU{$RKt1S!#c?WGTt(w6TarnNml}{o6=mk8+gUhxxZZY zrV|ecD*X?LV`78z;7oXO64DC+48> z&4{NGN2KiuZ;+L1N>&>jNIxuv(gIIi8g?;t`=mgPurULB&N@;T<7<^_4z4PJ9>(Bs zO6CRM^jxfYI0&3UJOY-Kn2SAh!-pc8A z@F+dcZzy!9uWgPO`R5do+557KO{u-tbDejc`PVX{jZ>ELcH9*3>%4)VkvKyM`*kdx z@?=2SD}|t764^nel_>*KmY?BHequV-C4Bm#WP69))ThZL{^EW1U;g_8Qd<2NCXMsr z>udQqWsFD69@4b(7~QL>LahpJ3v9mjwO0bUpO#uZ?e%;j|Agg5#LE;|zxmW}E4=1&3u$wo-zfUC%3 zThnY=>acLc9#mQ-S+#cW=X5W_%&cE9SN@H4>>_YLy<{Y~voy+b_%4#T0YKvh+!j9Z z5)aM_H^Bz}Wmlm@)wl}CLm-Sg&DDd}Xp`gPsoiS6F7y5WJeGupNbKVfiPFdOJR`8v zpKKh6>Inj5day=N0m|TE?2pCqwpTV(qX$O1=q8_g22UPBoS3rbEFLN1TGuX5;JGgfz4Dfya&USIYShh$<$76;;FY;nG7@z(KtI z)Va^EJc8`lnFUHJzE=5v zaELx;zL5v(i8Sz>cJoQ~@xugORadinKgULa*0Hah{mnrW4)Si)%f> zB)0X3R^iO-MHIxQ%eUk?=y_-NrgtOz;{z_8^;L*NQ0AhJ&Lvs>KE!@hxS()@?*YpT@}*ggtW739_b5P zhn>MCAIPiY|EmBcs>Ecq@+J`j922TokxBcF|&DXI8PrAv>`D*6n`QaC$*I+_uam5WOkZn*l$Nd3l-S8B<^ zy4JSvvDBT}&B>2Gpj?+P1nja|WWQX9KH@&uo!Ar&&MHRFz;`kqtxz%g9zOPE{yM7) z%SXuE=9O3hBeey=re$$D>$LCcWe6ZWf)~fApA1L888Ky?K9X~&;*vjIhC~Jcv(3b0 zo8yH60KtIWhaU+z;+JyEp~@OrWmJ=Z$f|bPFkr`c&fUy#LDm|%dCbus4WD36z1lf- zrTSI#?pW3<^NTQwdfSRa)_0g4Wb#SgRnD&jB1PP8wbgc8YZGKmO-zd>{tNFKT28DV}Px{cS`4M9JsOWp|ma_vKH#>h1Z$iYSuXq0)jWfCq5&Xhqea*WoE~@YfE%4`2*EL*udftb|G}~AJ$;3Hp zqtEFLB_9yc&=F)~g{aLBCyt+sDN^$8E|-CBz(5GVgCf^Hs=D+|hf-2fyT&IHR;G)< z#w%mHAh6j4Yr?$2GNi@wc{FkNfZ};*@h0Vy4I|=u7J1j&|8RIrhwW3fDV@ptnE|Au zWpKE@e(tFVO^e$Hlq|vCFG6vglJb*tKYv(n@vDrQn~Mj$>VCL3M+pSCc8XKRWEF{b z0h+Kh-Wj&!w_-{vhnZ3qwzEIKRJ&V<#OKZi&W+vpx<_%%E+n6nog9SNoZv|j#dE+U zJE1}|a|Exh0oN~v1plHkF>V$7Dv{>B*bG0j^a{$b|EjDVj>Tb;&7q4QF=v_9aXn7d zk?3`+x9977i=CL5Xf0uC-W?6S_}r@AI}o1sO~vuFara^LoA~17bz&cU<+%d+`N7Gj zW3w?AoR<3cqV49Ov|nJn^{uQik)7u;7E%RyPdzi!>9euj@h0zR?+Rji=L~y)iHqoV zYoAp|=>}K4rKaYx*?z_AVPfTV3zV&wfLMS2#z0@&%hR)P<3}SJVp{{>-_WY`bDz1P zx0GbR$`H4IzBJ#@?_d!(+L>xk-YR@I2#}sRxopg(&iW)!GIWBS17=Jd#AnvKADl+8 z6f=F2$m%-|nTv2-7|6@pdT953xR%KXEXlQVhq^GsHr(y?ebx&BO*6vslL;haS?OI3 zyQCt$Zq`t%BHHcQa=k|_`&J*{EU))ceFP@Zk)U|QY@T*YV*{_>Tb=HXb8VA9n5`5E z;b1w{rGlh#t)W~C6K;;(jNbhO>VYHrT)04b7iW(hzQBh_6aMVk6AB-C7R};%EvgyEEx9s-g^8Fra)7mc<x;pEWtj`9t$%iR`Xkv_u@cVy|URh z7t1TTWG!aR!9Z0(#dJ6@A8x~soa?uHwYbutr=PVdLwAC?D)XHOq2qM{E&cE0Q__=U z<)!0a;j5wBByIvH`?&J)D($tTp)d3J22asxT8eXl5eNmR@wCC@w$F35Z3}hFfPqA( z=Ru&7EY2QIlwC=9?6Qs`9XP9sJ~Wx2uWL?RzJBG)0H`UV?V-ITx7kOTE6g>*FbHw*HSQo5xqm=OS&- zo%}jdQ*3#@RpanJs%%bIrA*`BY^rcgP(!8i!;cl8yV}H_Y61RU0+XZ12%l5gR<~Sz z15g*6oLjIVrlo>**PgW|(yyGYM7kDLv}}tf8|OprNf)6AH5c;j0?#95@PM|D=5;qU zVF{S@UHOD^tBmUYihm{IhRKQ!hY_;%(~>|`C?hNtH6k@?`~Ht zoHJ%v&d4y;3{$V&@$mkiVhK7X5_n>T)S)N)4Z4wSo=@yJB{vi1?9U(kxpx~7J|l{H zcbr@n-TpZMq@;NO1RzxuOx={V{v~x|8t}WUaipmyzWLm(KP%)X`}rY zoqjQ2oWKS%3&N_mvkEQ3n$X#dJ zO?|zHJ@?o>fY9V#BhA_;AXU<7|@zxOpKVoJJhW`v-HnUR^wVv zwi{LDdw{8O^nktfuBU1sfVX-}E!>Y*UzB<`r&5_dik$cQ{4<)$`E;)AWe<9;+b2Il zo<$ke5`Tjj7OO|Qbhj!Q1l)N#?u+MguGA+u6ZFA$X+`2i!?k?Ia63;14WqeRYp>9< zb#-Ce?DA_#8EkgeQBcIbx~`UVz%9Og+u3LWt@ScKU-SPz3viM`Mr;CQ%hDfIqrV6=G?&LG>WS#EFsZ6@)lW|Ev+trc#{We}_y03*-k{au;? zc*?B{2$xm`iQ=@qJ@}c7EB+}_&Y;DoG5IhbuE@BZTW4dc`_UqS2E}JL_ssnlrYt-^ zFkNTQ?j`Mz<+6IY?$XhmE#f$#Z>Pg|c8;=i%&NQxYqz5IcxKkJp|>Sa^<}5n;BF#u z$iiD40Zwz!i$v}4>}@AA3N+a^9w#0T3Q$}X^!$_ZUdE<#x#ZAQ20&r9%!>B%J8Ecymqq4My2#BBo_F13EC60=U`lxR;B-wjP zz-_78f7<3_+j9ERnqEfwP>mN$;>cC5^`u^oW$N+N;-00h>B-wKr`DQtIOxsw0PfM% zpGJ;hk+_P*o_y=iC*ORZIzv_)eIHa^AM51*d*()bI@c`iR`pWNUTYc&;EYO!T1IBW z6l%a%@g|0~qWJOZo|*{9x0^>sJTaT5tR@^0Y%;70GP^-YS^0i|sH}7lz#X9jnl4l#xOp#!Do(z+m5RXS) zM%Rxf%jG+RQpR{RRVhy_2J8%49|Ir-Fz}!6o`H9|-ShmZ!{T8UTa|7o9fTZ^8{?4} zqIwy9ILmI`bfZ&xiRUI*dDk(m$ZfgmyFKWk_jQ0jQYn8*W@e+;>*abq67sTfFmWQq zQCNqi%`g6KXJ&TzcbHwXCt7}HR}9mTgUKraxQPVmw zJXZv#Z%orCRq$?M+d$-BmWfKLvKvt|Kek?V;8-e-2GD1u+Vb3Vm+CsB;L&P-MnvE! zNZq==HUu71GHq7N;6oP7ySzbb868an9`JhFqxp=uOLok1`gm}1-{j}GJyy~}#`}D< z;TcM60!0$tdPugKF1{KshKt8K!_0o>24&IH^3CGL)&8W0(HPq574le%%~q4SPukid z{Xq@PU=jQx4FCZG!nM(@DTYK5)ujZupA}CG&?eF#$eX)C%lF1ob`*6Nm<^@;*YYY; zP}wR=y-B;gwMBO|eDX>^JvD1Vm9-b4B$W(RgI500Jy=KC=wo-TA|=#&&d;y-3(kyu z8&QaWfoCkWfBiC*>(pIDjaxL+#ckZ;0@2Y8@3bq6DJOT@oE@33TJ_Px%XukJIScc@ z5lKYYv}x~G!!MpjpC0VDv}ivaRpiJ@*h+tjG|o`TxLQQffZb@*x9FiUjxlqSgv&E* z(#MXSnBiVEkE&*b2hYF0l>m;G7=e;tz>@~8nwi=5|v>%hTRw-?5^wF1{`zFR7rMdg1f4+r%%%XPHS# z8rmM`FF(og(GFsx)z`OvklFlYAfz&#!1GF%BV{5@X5v*qMp3QqT$YpX*z}zu+5w45 z%#3JW@M#n|*obrPn*Jj=-DPceR9%S@2oA4O=P%i5{L0YoS~(+|N+x_vJ%FC9f#NUX z@QAnBxG+F-Fl)C$u)CNZLM?PxqUbbgYkNYbs`_qY$f%;Z&?~L`_xi&$U(|7u_c=j* z9o>-P!oD3o`}_L(%4tYfCdYY;|J_bnvUTmGm&$($3`wjw%%_|brIr;m72XVfXmx|~ z?duQvH5G8>5^mqE*)U50Dj2#WV>_yU4}vnkUr3~3y#2=Ce4*|c^Hlm%0Mq`0WJ!gX zUFvV9a%vtd@28oI^xy~2m64tvEiFyv*`h>pWkLB6%)r%;HrZ{i7xx6KU%tiAvbf?H zH7hu_ykJK(7!KE}TJAEwWq-O^w#jMw$hW(|^l*u4$3s69BaJ6z!c?bSHqB3&_7tt9 z@3pyM<*-#`_@5D#-O851ekZEp{lCV(0;sC!d-oDbDIH2kcZ-6+CA=V|)CK7j0qMSU zcXvo!lt#K66p-$2kh&6=?tBOT?>F;)Z|2RsJI;W>*=L`<_xjeizP0u~QF9+;z(6tA zk!D5+z+_Bv^fhYbLf|#NHAl0@=f&3y3ZkL$7k?kM+?v$h-ta|LjCa9snsocdejR7p z_I_;J{EA3mAns1cTVJ?Cs6ti!S3Z?o&29Gq&k#5K-fH&n4f1pR+WX7NqU<`s+2`XP zFB1^fO?ETc>V7Nw`tGe;j_h@r41$HR>fhsQN@uGTGwWgDmAj7ox*Fjnq_y+G#&E{r zYXp#MfEK2=TL55dgn$%G$Td_$qac8eX)RW^GrSF+Emg2js*I?#w3$o@DP||o#qP-E zQH7ipw@`FDyW8ys$xxlEiC!BI2UJE>iw1fT4aH8~rfwS$ZM8BJ1MXN3h!ym8bqmpd zh3Z8OVkijDuIuO*>la6Xk^V=N@$2il{m3b%dWra-VfZ#Ka>%Q1!@1K`*|To<8xeNe z+Az;SC*fNw!Znd$hbd^$yNn^jcN6CWGQ5e_V-q7a72Q!tS<8 zv`<-t{uJ>%47Wr<^Q3(>G_*aI|2s`w&9|pB@q^nrUgvW+2S@ZD6Wp?)UfEiO?k_-J z5OY)Jg`G0TJkD&HnzdDkV@It;p}O%UQrvAT3fHBY-+{@b0Dof4biOKIb5X7)55g!O zWQVlTM~Rsp){!oQc`h(>UNdfCCI5gX{ekVwlgAUZ2;2Xk_6Y1ufM5i8jSt zndQl#F5cY2;;BxEF8Ut=5wmFTmqz82sI0~%wcc=q&7#-su&C~IBtPL`=e6$|GwJX% zBZnS!`vywRWIFGJceMdB4NSL|>WKPB5|y~|#PKHwdU#oM8}GdiCT8O(o3XLJ=b9!m zQ$@ipN6S34-iH`O9773$UPjP_Jx1&5J}BOl1u>xGhmyI^U&(O>jpk~d%C+2mn>1%C z6l^IC+r9aN!e(i&*Jf*2Z9|i#lj&$3=1@CJ<9uTq`*Nip6->)P0P38w)-n|t9%rT^ zl?y2yCpDuZBmLY!*KT_=o-#FKj*~0d(9C??+@NuNl!${j-x7c!zy~0xyDv06*S3&2 zYQ)}#N0K35C%Uc3!Sq5dNkmZ}4-D}k!6FNo(aZ{iFhKL5QZ!u+?-z%`CCFs+Q9)l8 zKXDhh5_XOsuh%y(){mI@s8>&YbA3z|b8>Xp67{sS+!m}6Q#A@kQ&hrbfaMac%DP$@ zSHG*BpdRY{AvJ}Z+vRr^0NIh@qzc{qvo0$YCJ{r?(uTJWixKma`Ds6Sf?}=G=5&cX5vNY zTf^u`hUP7Jkb_^*ajoekHaHgV+`fO$;Tk0ik^LY{BzkT&O4(;{^+nE1u4`{^R0Fp; zExaa~Z0F;iX@68FAXvmqa~DVP7rK`BZJ;}-;OkmYNNsJXFf}W1xxl>KQW*A~+#Tnd z)_Vn~t>*`yPMeL_v%B!_88)@#6YD&^vC(THj-0EEe(0>eM`2&9{@LxwaZt+*4PD9G zop>igy2>a3HgA50CcFC+?8tdls9k+(sa$clvRJloUb1kWyUNMH%#`Tl=+GmZ=iG$> zg>@04b+@UesfKY%NwJntmkS)y< z#TzB<_Sn}&d1U_d?Z+v?-;njSC}lxxf{g}?SLL&vZ(ii@h6XI|-Nmv2w3d9?`ZEx3 z4TD+xef6KVj~!fVqT|y6+5p;WN-}jw&eILSzv)4oY|wY1^NjbW_DbiHtAD-HML$## zV+91*oqgK#4*d0OEJL&|B`@c+$9VXzYZRRSDwl&E;R6CC5GVfBFOlruC?I_d?vJDj zT7GT`(bLv^PMaDs5Soe=TT{9y)a<$Nz4X!cJkD@;jHSl8c;>8{EJCMlja=I(NhG5K z=B_w()wMk~>Gtk0SQLoAT{l<(*d*S^gaUM6Zb2t%EBqBbpK!9o2gi;Uy}!In(a>9@R@i+K5uxE$vGkX9B63tF7Sx{agp<6RqW zltj1S9cCTwjXZcFI)eI#&Vc4|{?WvDQs|R5u#1eOPgHf+D`bAReyZ(^*U@u_fJZfL z9uE?4ezG^sy?E6NdjjJ9N&c?D!%R^~YJ+8{L4mAB`LwY>Er9%w0&Om9t=5<}!SK}7 z-CWIvSgC&SiH}vqZ&!fKX?7n!QS6#oILavwG-SjC3ogiOpwgftx@?#vC8y%1avUm6 za!hF$jB9Mt&v(;g!gP8+^sSuiyW!x2LJDeZ6~1t0$t3mDVT$(=l#Uk%GDy)Be)gtu zojos|{4u>fc~l>HHQUe)FnFw1Xt?s5li=sEyhZ{c(XMZBC`l@1EN!DJ#gib6A2gtbfwb-QdJ;D#N*X_cNH`WDWpI zd|a8=7OL{@HhaA?XO#Edh1G zM9=XjkC$Hsyz3f7ddxOf;RWtuNqIlZ4;mN1^V@5hBA^bq4LO=W(9uH5atzWR| z^l!98Ks=cAkEWNdS|lDpHa^uj}@EyKW`IC9K2B}dk0-{4h4 zNo_m9cXIdVf-ekV&YTtyo;Ze?`D-d_@k0oH#W;$4*0n$CVGwg$1JARSOV{*8S^E@? z_!o%sX@|kQ`Hw%rq|g25OESp!)k}*XgQWri5kV&oBH7C34ku?qBSyvi^<^xzYjIMx zD`x8RfXi;lpNAV`J~OTt%W*(}8XV#T0SkQ97-L%VGg`D{OsC5lyebSAOYqV>ky)wYZaRxdvW z|NShn17A65^^Cu^HhAAQ+)NG$^9~$PFVk7U-F%RZtE#+RAs4;HNQUG5}d?tm=E?S$$h?!kEAg`5?d z7q+|e0-K6FBZH}YT;1nDpyGs6a7Z%Kls*-d{zg%Arw!{$ohpEa?NjSDhZjg*{@7&w#S!IVI zufE2rqGR-yCn%4N#NLC{A@>ks8P=zvI;Lqs6AQpF+T1R>1y)WH~@alyF5p^Fo&bKu_MajOG&n(bH&fHw&a)(+$ zi*cb6O*JL2L9a;5Ow1X{Tk9@Z>9WAigG@AiTF8{$WXyRh&B6t(kfU9*qg9%(et}CLq%I84iyBbOGj}F>~UqMCW!1rV&Z~}asSv2Lx zyj$~2fNsnZkvJI!nD$caJ9Ro!T6s@a^>%|?%BNy&K7)8%LFKXqLBDtm*C{_|M;23h zWWOdpmr4TRy7br$CFe{o25Km8RuSGbbP`kwk_8}`l#-`*I@kf_MmKe=}RS~rvk~- z$L`Qnr8tAO7G!LplefK@!LI$cq->s*B#0$-sZW(Gi))9~jx%nRU9A$7GIOeQXtC5~ zY3KX>JqYxZTN~-zu~HK_SJ>8f(DQ8C91W0&38kZqy7X*vp_-hD?wUhY!q1JyKUQCf zb!T2*fE^?S5`V67i(vMq{-T?Y9ibVe%OHYl&1oiWhXp6o_*)hkBAKZiP}pCiY!sfD z)6iK|OcPCoRT3#P+^&oi!b3hsFi-jszBV3t75CZdeC;0+szfYD+Po{5JqT*p3Y5|E zr)bEMnfgSDC$?(u;#-xRTmLK&R9@nQMv&jC{!4RuYXufR5G!mz@O{$F$SDxR^uf~z zKzs;46)=j)tVrz}zLy;G<25*OxwXN|#w5cc^`S!vb;$hPYidWRXzZ`3?_Fe?3XM}r zjhnLV9NtN{uSHcNp<6vwv!wP?ESFVUy>KR{g{DRwt|z3+0ubQyH$1VgjGGe$gi;;2 zOY+BPLU4MkUMl`5o2?_kc)8Ifc3c54hGQwr?>S&VenFM2w4QKH3y_hDe{S8`!xDlS zftwK?(1X8!=9cN$#4AJ_y_n~g1SIcr^`hfa9C3qBcS-!x{W+eNl(2lnMiuPbpiZN{ zu{Mb3S)h`Z&bHZQK=4EclfNilAvb;mZdzOW#8xDXE5PuRmBbDuItyN2N;`osZvrAE zuX_Sa@HXvdLoSU*Sk@ZGOu1{j88iEn;BF2|k)G$s?S(&r?(cfv=VF4EY@9^pUlD&_ z!MYvbgAG33lHeO=&m}a?cmVoHVknBsQBO{ANQAFfemX%J9VXQVxnj-Nkv%l+ljbrm zE-xoL!(Zpha%-;b)TPp0v%t`(@W zgxz@MpKIB`I z{g4VW>Pb^teVwKnLQGCO? zwbaO43Z2|4z!R}y{02lBc^ni1U*XlhY_W>*xluRNQ?k_UyW*iy=K$P6v>ybMSQ50* z;OJ`Cgbh~04_-b9uiNGM*w>2seQx+10lukjfk`B?hDkV;4xGZZ8_^E7J#wQRF+&*I zI78&4(?z3o=@;>;VhUqUJK}|WvqQZ6bi0n?Y&Fds6UUD@*AL`sZpw+MkY0$gszB zR|8X-u^`W-nk?Y0syK$m4G}e!T=QD@;s2Xfad*upXE-k|P@aBQknD;Qav@s#ypFn6 zpVY$@j|O50OYBoUJY&N*w4e}1k{#J*C7YA9j`uvsgEYSH90Oc5sOHW z&tql?)YM0gs5G_wAH%TghidUgOG=P8_M~WS-=4ncK;$WK}!XBlA$I@>51%n8>a ziTG1_(Q&zJV!mPk0~dQe3y>p%kSl5qqbZlaKle(@1p|R1nBD>;i%o#}r~lJNkL5P@ z*^)70!h~DU%?9!1HsHu|;!c8@x!9BQ$a?YzXaqk?eMKj#xMIiRwyX9vd}08Y=pmZe z+JcO1wCQVn0wLQs5Tlv9Y7(oSlu)OwV-WlLcEEQKaTdE|aHky=dH(md8<+e|vl5zv zgadR+5uwCEivNqC+<*Iyw>X6d!Zk|>s!qu*V4nE!rOrn6#->Eadt1o)=-_)7H}OSP zLgm0~ilyzqumA?vRX8UfThD_=NBN-9JqoqAaM)S!EwT*#Nh>JO{(_he!eG%eCtE$T z-^N7u3@NN0_c>tB-n!#C^`TGE87hqht!#{v+#@)5PMn|fWjUE`O}u=&TbZ+qfFNCV z@G{feDJ8g~v6t*(!@FuYv6xM_GauTcEh8^X%R1dU?O3R|@3GOt!mFk=+|)725Me>) z-2Ek%q#@saA}cxdwr%4s$A0K;$Ipr68wH~`>q+M3X4M;{{1HeBBH5*sq>|)26_&nQ zgm*@#=hMyfJ$_@6gZmo8=_8esk!g~=rFEa)l-GC4=D0CtyHt1IkL~Qc`M?Wa8wMlg z3SY$zVE~g~@F0oZEp$8k2O{-yGt?;6P}*AvBv`8z`#&=G(SJ?Z8NOn6pfiKBf6U4gu|n7w}p}g^tXT}`O%UAa0**<>q9Ww zYzJVcmawzT+!kg`R2$#Ce$)D~_a`&VP z-%o88vw}yXn@OU!yvUJo%ih0RrR7L=iWW8==#hf804_L_1lxP%K?vrXYp{kpA1#c9 z=Wk`u(bE3GpB%cAl(WDj_#$WOL1$k|*BRNUh-8twzkMANv)?o+dBcYHlq*Ha_YOt4Ac;@ z%jZA|7)f|({;@(*t~(b+2nf?BsBwc69Y2mg=P9j1UAW>$*RsS3WBpQ#W6do0Bt@j< z*};MWzu-Q2@oKTo8hN{IdmGTB^>SR_a9;i8W@SDbyzVhR+C;u5SemuV23QWmVM;(r zieN-t)(h>}XGE@WkJjcS_`M*1yd<5GEsv0KDk?s^51!MNve9_eS$}`HK(;L#XH*dI zwitBfYOStcFY5~1fG}$NFpz7a++hyzDKjoMkjIh=q0zD$kHd)Zv9 z7so*rgVnJ}_yK1Ia=L1(nloBvhLbR39={ilR+taz5v(NLbxg%V=K1tV!fTLV8}jV$ zGvmU((=(N5wm{+%Vc1kPh1|QO`-7kPLGts5w`wzIp0wDd7uy-gsnpj>>rSU45 zH8PbJwq($xA3Dl#`gl_8i^Lxc_}TC))9f|T+*5*x!;(nx05}F5uT_7&S_OoqATk?{ z?a?qWL=}D#kAZjY=^CQQD9J+}WZ?q5%9dBa|67i#`eoivGiI#bum41X&y@V}#a~TK zoabFpXBw70CFl768d~^<@jeQ`OfQlFIx$`&kINs4b`XIMt!&Qd0Dmia+tDFi^2+ni`;MH9S{F0s zpU9t0-zJt{r7GI%&P1!R9bi*FjQ#GH9e%f7DQ-_u{`AM12;Kk?!!uRk;J@HktRHi& zle2b|CnP+wtX6gG*ux;=c6d?p!DR1>3^iu&#R;yc>~1c@$u^4i!B!soQ>O@hA$}wS zol!5YfT^(`#Ax}4{*8e!vLFUMgl_kC2IFl`ugdjqvQG5_>1BGT98)q!x^Zjnbj_lO z90%8*m6H~8s@BbbR{Rp4uXf9373-e11ZI_*5rQDZO!}t3e?C+Ypda`*MZ<10qHg~( zBYILGyTvnThfU$RJKvWR-s(+6t8x6b`#0_VZ!DQy>3fB~*81P3Pn5a5IL<)#c~bx* zHI3!;p<|=>8&w=TQBGnWhcorf$hcTDr&YIk*G~-{1+q|{QKUaosR!nS`@K%wNtK3o z%dR!?Q4~EX?2_Ba(weyBZusz+Xcg`xLpaoX}HsLT1fHR z_aYGi_-bslj|_QJUm$7GvwAC~;!dvgS=t|*J9Qg{y6|j{Rp-|53!5i*be$FSqCJg} zNQK$K>8p~;d(CtkE$so}sL~kef6QD;U^o-jw6mz^^%FWTK@%$h!RQ!pNn@b19g@&F z_$+eZu}mgMV$WIx!vEdO^-1L+Rq~4N>R1stv!zK@TH62hqlFnk@e@U|zK>YCh2=3u zs$o~*0M+VZqJ4d(+;m#Ms4%#a;Igpvf)3F$`zv60Rr6?4eLI(Xx_^VGypR3UzBmdE zI+ebr!EtT~S>LXQM3z2yR%55jzm2+qKM}u|*uwPpi|JpJk3_^Ha9r*C@;pI6>odf; zU0}-^YRkH~w{xyKKq=FZpMz45f-guZX_aKTiNNh!bE(oJ9XzJTk(Pp6pSf26C-#t|p5hl!-rLC0IOG9Uq;3 zs;3NojpI7%CQ;YJom^ILnxE6&3Y6tcto=_}4v3IZs&34ZU3Sh@?KpuMSKo}W^ILF< zQ(y@UHMX3e+2b=hzHWRyv|R6s0Ua|GLVPOFlb3D#`#C=|Vaff8KOTxWr7o>wU>OXR z#lqX@dvj2hdb1S`Mc2{4gpA;HZxu80!c3rd*RF~y6htK`{YXLhm!Pczb_`U8^=)7K zBuU`kb|5dox`_&Z<_4lfjc936J~Cx)oCTYPl-jN?gTkEyX@&J5(37#HysWHgm&zoAwB z7M#QZ5z@3kpOqw8mE8Y^v;ba%?NA5#dHk(pTFb?Crq^S+7qI16+s6Q=mylCg#Ji$U zHJG@x2jE8&sichK15?CLRl)B}5!p0o!aPj_x7uIG)F1>AexvX7%ge7sSCj*Bz%OQEIiBg&Mmr9Fkb6=U$i-1gS}be$KKzbL8-aI^xMJ2)Nr{xnfrX1 zJ}EfaO=s^z30TcU3dVd%Q=|#=aJ2a^3CWo<7^!FOM^HI~filRA?L2`UdQOjO>zB@= zaGOX1@#Tu0ZMF-^6iD@U-xsBaEcws1+ zl2NUqb*;@l39a!9oLvfSjSdvVdH~k($^PSE^2p)T!A?#5YpwVAC}+vjL+yp}1>Vj} zLOc^T6xuNi(c(U|hCUbt> z%pm4q?OOmw(r@uW8Mm|=*`2uW0E`@_1DwP&&`I@O@u<$}#5CJS%yv(9Gc5e@y%pdXp<$kuvddr;r#nfB|cCR9F2(-twhzwLNhbx%rV_&wi*DyQ`LzPxsd>%;k? z>QUssiZPnHGqbv;sYv&!_PePv^Z>pQpgl$LcS;}I4ctt5vEflP%srScy(III2v{Yn zL{_BE{h-O3fO_&dm`4IAa819S8iO((yd}%>wzR0Ngmujb{?kE+9l)sTO27%5ba;9! zT?7O)Pk&?t$}C6a%S?>;CBWmvf6!#aa2T$B5Qtv0Y&2PZBc}4;U zibRXr+uxIhZ+SaLZKvh-puc^4l~R`WoSh6{xJITWMM$YUim&|E`i4XV<(Um6t6(pV zN6&=F@O=}8j`h7eZ>BmrA&OnnOnz*SrUUC*P@!$13Rw#`_P8qL%*HeCa z1nd`J52#_d6BBE$I$yIVwTYuuON9QwzpoPg3v<kqN#PfDV#k}!|`P-j+BSk~jY#LAX zIK#k{V?O~Ml?sy<6p-+0(yJDgM%sM48R-5%B!huzXi-M7_@48)*v&~S1qZ>`mib6w z(jHkw`8quK;Vo;c5HK2QpGA!JtKFUFWOo+~awlp2q_>3Qp)h2qgg{v1%;%)(IhD23 zqDGtR;*nhr!kWHcI)~l2uIAuRgpXQBD?G;!M``en@7c!s(zdThFV$>W4k~l45J=VEIQ{o$7 z{St)$`AYVrri}GvuQLt2JANRY`<)?uZ&b`KaCZHno|Ys6X3Zy0?dYDS)g6M14th#D zJEXHIOM_py9HQJ~2EVyB%a74Pe7*)?DC{@kV)(IsH8kZ<4iN}Msc_DG@n#a7_Z0vG zVTdKNMRi%xDa`t@`gCiE3<&$D*&PkUCoX5bnnI_X4hVrsh7c|5iZ6h-?(t?b<)4;o;MtH9jm|MrAnx^Evk7j!@Q@q~icq!7y#FdH7cmXn9dxea%`<7yA z%k13%UDnnh6-lde8%5LX-P4CeM`7jMW2=foi!AC#7|vI zou5%0vUeWW=24kA==MH+>!}Z|*cU`l@V_-DJra@z^mgclscX03d!CNhigeDx3Q z+Vljeuvxu|uA!j+qSxT=<=9E@0=?T>X48w-wUelY3$M6R#<|@~H@iDeL9e(678Et| zde1t&1k`G&Yc+?#CyFYLKB{jm99hZfi#7%!{{`y~R@i)wsj#sxu6Sw)_ zS@ zw`%O}uJkv{$*X;8W#7FsF{1}eDP%|R#@Jk}+TKJ!>jO&QA2)7TkAMXbR96@}6<^at zEx(V$jZ+Ha21_wX1|2Z;PaT610D|HHllgaP$Jl$ew-E}wP{||+7t%oiB)uXklpRYv z+a_Jx#;s67Xz=5>*v;OJ;26XiM;E+WRSlZ+o+rqt|kh*+V4L!CHSX0SU%C7yOD3Qpz{L`|@VtPj}@_2PCuh0I!hF}s~c4w1?IDSIS(&^`MnV889!Mc2r64x{~<5!$B0&Q&?^X|*qRxS>EnS0p2C~#a~LZ92SMC{Z3--jyEz%D!fpjzHG%NmK!x@;T) zKc8x*)(ZEK&W7u*rQxy8!;~j59>BJ~o{Yl~-Cy^xyZ|jd+oN0iK|HD$Hz261X-&(c z{yZyU#Me6N`HYs&l$xQ}pFx&VvB3yqje^jU>G#xK@8+h3?>&Vw&BfFjU#527WlqmC z_LK)X7QQAO7A0$$Ydyg{bS|kk6~ubjET|wqyxLvp#m%cIyFRwokl>DmBKMqCsOzj+ zkO!!i2S%+#abpMZySCw1sD%QD+A(^x#>7IxmF*;JyigSJD zBEj4JEWLKmXSsRXym)C?s_ozvEgzD3a>Qj*@Ia`BeBPRWIhKuUOWts-42^tE-IV~Ro@`kO91WG=|Xazc`mQVj9D0a82K5|x%ldSy!b|6x>^WH z|1~Txrnw@XSM9_973 zDl7y+pN4=JUK2rBj03*pX!7+(uFWs+vK(LC2V|&dH{7)_D`wIRO_oS=B)(vlHM!)X ze^>yU9HX@rnR!>Y3yU=geknyoQHUI3xM`qFIv?QZqB?-Fuvs#zxrffX!1;yv69E0< z2{4;8IS?ts^J?$O0*xqSs zl6vh!m3VwSjaS0@e%I9tsC17j#~GGkLSG_7FK`$5|LNkv-O*I{%brtL9qP$tP_I1< z^H3V#Jh`NhTzgkTM7YZRt%Jw+RltNZgn|~Hc^zgt)S+gApWZF& zw6R7I__f4JL&omHRj}IrGPnMndR)7Mh~_$Lfg^6EMc2$On--9V6$DZzPE7Hg{%)s< zMFQ%cn%O#HDuInd2Y~|&DP0?_-Q?iFwyY@8hWs1Kn9D==JjQWD{GW$)xOFkY& zyX(FFuT419)joA?>X8SRgnS1Svf`rn00I0Wj}OhPm!gmLbNAqZ4r0A3GPEAt$$ImR z6B_H)@lSon6<~LZk;lu+*2YVM17NX{`a$YbVDvOlEXmJr6|Sg-W|^?#iq;tj}oGXM^NcI`fYc)qOFX(L?7_qdX{Qz{oDdXIl@ z@D`8c;C%RyDC!>+@EgjcXld~6kp<=W)iHA5yhYe~xdc_eD-Vsy?4XXyNOW+c2&(YJ zTxq*?xh=&W8q7+@Xt&7hjt3SIFMm_&lxIrnxx)g;Oyu2Bx{ebVU}<~D0}K5hhL4;u zDM$f0aA1I4h=I3nmTI;?ni@Y7o+F-Ij1txazcEiP4L%-pr(nOFOnYd93cKzysemwQQVnP&C+SU{&- z^{PIZpHJZ*n?kjd6fxRk+~RgSymnoByssmFM2wp7;VoEhyjwO-2u?W^^c#>fxn&Ln zBKN2_UY_2VQTK;h%C_Mg>FhmwNK>2W(hqyrH=IsKZU!ab2hnT{a907aOPhP(!TfPJ zrRTrHmRt{I;OLN7(JbvT--hzX&DWX=lLev z?BXq&O0Y+E?7udi99n0Q{EAe1#CV^jiZc44tadPzpUO(8Cp3Awa`eCC6o;FyUCZx( zQx_!5CHs}hq~;pJp?AP5Kyz*xWZeR?BrJ7{|y)X^^yxua9ktmFL2bPpmWc@Y43Fm_?Zkt=H;TpUXNWoCvNpz!?D@n z>*ebriO~)i_{C;J&O~L!=}fCK_R2T2`I}7eWy>%-EBDp~2F(1;?B#%@hmI_5r^e0X z;S0uG#MAKYo4KQT*;PM!Dx2`ry5m#k<)G`5E|Ye&S2;X;%>KLcvMrl|*?RpVN=rqz zza}G;0Y%fOL#R&eqYd-c*H>*?Y4WTVyw+%ng_8K|&{DOJZ7deJDL*~4V5oE@NW7`I z`wxRZZQPGvDZ7ZuCKqIYKoN<3bBUGpDY<2d8<%r=WASTFMI}%n%zm2kwHnLn#{#pc z5X_42gWkos^si5UD@=@T6eJ(}S_|3DKkJ~X1sWhh=ok;!Yqkh}K%+Hn8V71XyV!Vf z+r~4B0yOwwlZ~I6_nt~wC<*&!YL;xn))nwiZwtcq5(>peC)?(Ss}9U8K>E_p*VBzY36Vw?z~H#)e9-I z@T_D+wjL&MJ?`4Vw;!d(vx*L$3Qe!KruBFpW6ZN9K67X7<;v?VFO_Z~k6>(LQH$JK z_B7NPlBQGiaz0k)I~+FN6}gG!c7&AusJ$s3jX7$D;aHo0T5XB0xj$tP`vD$4K=+xN zD>&JTEFLpC8(CLnX-Yh{SX??{O+0DN;o`PD<7Sf0IxQdzsOYRFx_B4vdKj6w9=P!J z+dDo*vLKt>$wb<0;B?Tgv|3on7+K|ZWV2A&V$ey%^3vCQRp{flOdrcQ1j6H_>kZv! z=CN+*m^&ew-Yv;J4SQ=u-}AM3k9AJ{F6TZk%%U1BR2$wY!aZ<~j~m>$aFR_-;VHs5 z8k8_O#H15We|{nq!;qxtn?tox-tw&hj=tg%=dg;fFXtPCb;6Yedtu7XoforecI&*F z+tOFnO!@FpE;JBmmlU~Mk`?1=#}Jj1ep8ST+$=6guLV=J$A0*aQy6&V|yKtxs;~Fi$A#g2okAlI?~TIZg_f4t_6uRUQO)99Sx6?&N1* z(&KkFgFx7%vXXCA_duX;hW+m@SI3U3*x8TAxYv3L)ds-1P_`!y!%bh4am?TpeA^@d zTqDuF9x-=*`hIWh`XyRkM3f-#V?#HNhV3d9^34Zeqw%erurnWbP7L1QmszYAht1Dv zJ9|vw(8<=!30M`su{@$P>cY;0A*|6^|4WCf^m=a{vo|A={$SS8dN({JM0oPWUd0nX z0sHH*)s5nr)wEi~Dedwm7-Yb~k@)*uJ;)+{lnmFY$!;Yva3b3sp6`%IoHnLU<}}%Q z?8FO8fuWvvVpXUn%<0u&QfakOq5ywM0NQR z{po1WJPo9n98l@|UXvVt1y#;BIdQ)Ew4f~PdtIKlW5Z!%(rwZ@gB3N^c&LvCcNQAG zuZnFTwLAd%ApZxTk`QI2+h4(2>0j@%jU3{Y|0X9EoqKGu=BifOtVd7T+`6PJ^;Le@ z5iW}!-I4VQxD;Y({My~6IGa+W!qj3cT;g?4Gvogv3 zS7p@ccL`<2XkxKNEUoF`MQH!J;;W+RF47-K6wLgIzEgHsm?7|`)L!oZpTno#MhdB% z=JQD1_G+RTCgj3o@lD_9DRr0(#xE{!r`)0S&EKcho82NH5XPjvW^4V#^{jZSxJ8S-7wy-kRd-4Y$z%B2a z3j}+YEQ@7)G_BDk)Z4m*yuQR}PI!q)$jWVc1%)y!7>4VvlKuX{d)vev(SIqk-Wv_h z#5%;oVJ20iyc@UnkV$STU(+ufmpwW`>cySaRlGP__m+JO;(@94ALZ73t_cwnp1&Mq zNh#{@nGLe8O@uSAv9JR$eRA~U8|+hZc^%Qrqqznf&eE2t$jqyeUHXq)C9}Qi>>Yo# zkek=q&D7{XN6D=gq2Ei0GI$E!9TdcL2Z|LI?=O^6+i1&H&`!u(sMm~|NP7>1oB{XJ z)FI@|*qhm`1U@~)@UG+XYnz7_b-0k78SUir*UcFX!E+1lfVIh(1>&L>d4@tZD(iL>P&wq z%xU92kjX}RY+mk_4oMbXGNe&I;gd&pT7R0udi9Bw`+m11ko#8aWPM`YvShO5=4H%L zs@?JqGl@1UP`9oY;o$#+ZCi-9w$hsJuh&bcv`AZa0*?vvMpc6SV&i3_9-Ev3VSA|& z(AeLJLlS2+v*HOQ2)t*AHXn;7{8mG>R@36)mZJ zzK3J=W9!`hx=j3&sBp2h6}lX9Lp1dvWloU2v*ooSA^@@VMz8MjltWu4F3yaZ{3l>@^j)Fe z&9x_vEBAxh-J*H%^iap;3=g@lkAJ=Yc)NQ8t^umI7LpfcC|nbtF?)*D{Q6Oj$L2bt zqD#Bb0@iz1_@U?Whfp$ET^O*<^9v?mfGTLZVorv!%UwLAM644qS_?cOadjK;$c`r2Ex>2nv3#sd?eg(M~V3N7kT z?qghMAwGIdu}jadZA3u(778J!l{Zb!TrjlzP$FiprlLD5Gr^)C%4Imf7_(bh4imRz z)f1qHI*iBTJwbDtaT|yKmD|E$u1)n2%9UGg`%woHbr&SV9_ftGJAxlY1%|sSm>xnOB zv+O`hKn)(?i`#_+My}lSN+`5lmPUG?>cf@xP_`7W*hnFF_YFb7?6zkNhS$Y8s;FR( zaNGp~*MP3&)zX}=W(Qy0hbAzutvH(qXNIh4;O+ymRS)FzHB-MM__;s9MTe9t>_zgVzM*@NrR{};b&mMwxzbzJa$U+5RqR% zLKfh4!__tY?`k+ClNhHvY*kqG3n^q9wTNqsheBJ#kpM_NHSYj;wd;}C@OwtG8t&YF zRpQPmXY1-6T5s{Ae?49KR#38YTui(x_FnW(K z|I3-jGb?%_T!EjD0v7-92Vd~zxrm#RbqRUf%z{{ow*Iv?Jg62kv`;d&6(O9RGhe{$G~* zuWMjD03Egd)4*y2aF1_q|1JB6IcVu!4h2d(fzP+M)Nhc@%Oa5Vhnu!${PzR@r}O`> z5$iST7A1VQsLTz#sy*pyz*Ow~2=Crvq6kMVSpWpe;Ju~;5nKO5ud*{xXInRyN(NZQSVITnjfLv8YLHAZ8|Jxvhw|%>m zRo|@wdFd+40VRX?wgBKRN>xGjxgTiHjMxxnP{a43w;|2HPgKaCCU*pD%kkl^O}|Ji z%_@_P4z({;?uf_aC;NASraE&}1hiDI=X7LYw2w*Z*j?X{Qr03Eo<*8(y4L>;v)zfu ztCLWiDW=Vs^cak{dC|33ni0b0BOa{$AQgaT3^0kRea zU=jF)X9+?o0(5v7Y+2T}#%oT-9=eKHXEw%O{fcyFPO>jvK*v5-1>oiB;wNy&Zy^T+ zfpfqc&}dGY9~Z4ic4q(F>(hoTgKMbV;hjtTMK}&=DdlmbAao~^QPs1n1D#TdL{eEP zGOZYpBNtBG2rx{@EMS}*SaS$|Xr(mOxDmjyR|G;X;u)T)XLE)cPdh36CYEnI!upIZ zWz2%A@F=nB!1I|maLK(yRvzLppAxI;gm2(YlBLtJ!Bo6GPUqhf$NcU+1WTb;VQ9%fBe0S z(vOzBViD?^93QfeKh->YZ(i!g4?QuJYpT`}_ppp$=+0JCRrMcyDY#cLp&(gL2wFkb zxl68oR6}rcZzF8aOyvW<>H4pHrG5&<)uy*v8e05dU1{c%Yq1n?UJ@%wZ#Sx?YdH=o z9336~%~xT-Q$r2zh|=J2a#`zM?rv*q3t1^LXQwm0bW;rp2?>p%apRRK7%TQJZnWO| zNQL0zGj~|)>IV+}t21Y%l*qONsO41rtUrpG_2-gs$owZ7p+gaq((!eE4+wns@Pq z8mAUD4ULI}Dd6DX;Py!)f0tXBQo9ZYT0t)~2D;sjQ^)27Iyn58_%;!svm6isJ?~^d z9Oe0a`Vc*P^fFJ4e?_;8%Ty(?yEBHKX@Lyk^?Vk(BxKxl|{{gf|~Y$_>>fU+tQRT;b(2NJtN$^a__{F)xJqV>5*#R7%o$a7K%Rt zSvmOWauQ9rb4c6!R7;;L_jeNG0(|U^zr%n24y6fp1i3?@@ z`7McgZ83Bg0izPkTwdF5w8POxq)<~yIo~Dc`NGqM z%5~=+vE8;WUXsa!srb)wIiL33L6C4v@w~7T*bOmCyHfv8Fr2TyQ<}m@u^Hm!BwV|F zL1S)&j|NR-W)pnqwHI{^hxdDVtJS3|<>qKNND4DnpP5uRO{G-fe`vmht(7z!s)Wkn zQsf=D-vhNvQFQJ**=iJT%xX`pnitI zki=EEq7au%-r@KcU=T+zv6@*`lOaN9bt+4RM@*POZf)RXwi%E$bDt`+;PLoE+Jo>fPCD?aI|B|~0#Qyv{;Meu2> z?yT+>>&9cp{3IoX?>rpT?(E06&`89#Vm6`VP>ds;vWW<+A=SU6tNyR|Gs;Ne+cbhh z!h~P6O$f_}0pisGtRb>*qxT*p`18xvplM&a?GnH0@PnlJd{qgdP{Ipdudw>8@ger< zkDYQU2d1W{!r|37r3u(hRIuC3z4{l*+cF|uZU!6JfARJaiUl0V@PP|g$)Vo`Ko9(N zo0g;6@(^SD5V`4gDMgD9@zU~-lXO~0|cRO|w2toSc-EA)^Grn7E} z={4*73wH);XyP_xQ6-Lkn*mW1HPqzmemD|);W@OhK?agkcg>fo=6OH&a({OBlyQ@Q z`wjfbk_$rAU$**O4|CZSA-x~dU~(vsGBx>L;~Ph&cA_0R#?<_ce}R%9NJAUbiixQH z9m;V3Y(JF3qVr#O&$Zcz^k~yWGrFIi-0`|2Ru5k$YFrtBT|cB4u=nPNpEwaHx^p5# zPr@D5nIS|R@?wIF8F}-=^!D4Pe|c_LYRpWcG!3q){5%MEF1gMwC0v1^(`G$+C)Ykt zFpW)sjqH`!yLbE621PRFtCe^MY%ks$Zq)1h=9-Wqxy?TL-yfxQGY)U=Is)^{*8F>c z;9`PPIWt0*F^?hTmGB3yF--!s5)FR_#|)+SU11{TMjiM|xON4dK2EIk`BcH3x&!jh zV3fYJ*!F!MDRHVkZS7XOOPm$``M9FaI{&{>>pMG-K+kQFYf-bL$gd}vb+3|iA}w0u zMXz3~zbtj2Sj%6~z!zU`&k+}V8!O|*4puVrcvbY}EIT>~S6}l!S$ltx;c5h8d6k^# z@?Kk(Q4`~=X-tgM`(T)4@1~#BlMUN3JMh5KDAfhhTNW23q{-AQv)yKK+Z&XI0)P3l zu)m~;_J-C295{om(#SUnJJ#!nCr`abLD6JWEWNu;U8I>ApUxR=3~ph$bAN0vR^Nr= z*ZsFs6y}Qw=^pY%^g3AN5W}4sf&nl`o}x*P17>9JDe`aI+)g>qq0Jy@YM-QnuBL5O zF*N$6)egxycov)SROQyS;Kdb!hNQ}QqKv8Zei}?SefdaO^;KMV11tIIRUIhDfIb4h z?C5G-@Q91>j>mVKbm05nv6TIN^lPyoFV3#ce=qswLXLV*K6~A;Ut~1ub=FUu&e-5v z3U21SOV?937^Y67Zw!wqoLN2Gh9>d&|K-6?m8@WoOoLlY5dP8OpCCuH2Sg-hKn9Y< zH6U$KyaL;CKP~+%{28qb(gd;EAWMIobYv%}{p+F~Z|23N(P8%TT!dI8Cy~wO%_%t? zCmiHo#a|Jr{9=17iH3;{5Y**VVIe&!VHf{Lokwb+wEm|y`K}11kqMz}{kDtOmF2?( zj1zh1h3lHRWjCe0wVhFY_^)B923>;1%B}9c@aEx%Z_AeY?bQJ>{KXE6uB7YG813=J z^0gz+xfFB7rE??aA~&~Cw-f4#?>ODAE$-J2o5YFKz}>>@bJo0v3jzhfeHUJg#h;C@ z+w_x)_8<-&FMGb`%hi`KKCv6*)0LRMYT9k_?F*M(Ti1pwgud7(2!Vv<)S<}iJe$`$ z62&h{?*PUz$f}Hu-3XgHzF+;40D-H%;Eq?`3z=t=?K;LYXNzw(Jiu^{$UJuyy6X`^ zPRod^xHgo2Gv<}bWayjS+_xwVL-O-x!phzUJ6GTxLJ_0-FwI8P!m;)`s2{X!3X|00 zr2#BZZG$PoML14uvy_9BZT7wBt;2{%53LYB>_p4u7ogkc6VY{Vzx878B1!8YCslie zxJjV2l{i}vkGm100@9I8@(Ln;Kx&*?ZSCY#a%xWn9^n3|MHHbuL#jCbQYEb!%JmwL zvHtTa@Q2cs5u({oRtZ5MG-e1sj5KTt%3lkKSeV&v;nLt|qo#BKpOg^Q#@H%~3+=J1 zh0oCuP+o!xl0xyajn9z}3-UX?v_`a`MSNAb%y^)g;{y7XLc!TN*{KF|njJ${6|bo4LAPuBZ{3H@N^jYR6O zCKQcx4$<26kCQQ`6fvUD{QP*t^2IOUlI(BTBM@BwG_T;pd6b%@i3wYSN<`U;IJ~CI z#aHQa+23oYt+oF!jEdKbtmtsQi{A@VRSsl3W99wlz3Ui|NDCzA3>mNlVmFPI2>(K? z7TzZD_}x7k2+mOzj|3Yrc!s`<;tpVdJ$?pzRNuh(CM)VHn_mEA8sMElfP4_{(p#8x zwh1Fqt8zZ~!F2xOf#eyYRX}o3Z(d|kR$)EI2sHgH0@qozjowGdA zZu{enW=^C7K)GW*$@is3p;U(9(#`rw{Fe_a@D?Lj$4P%ij3xVSz~cP5jt(pU+;sq^ z`>Nj`v<-dVW+ljAw8-Q+O>ybwY~^&M$wA|)R%&@Z&GpWdby&?>k!pPHq=-iT5$+#i zSIcOqA(kz+R%&*YphY3+VT|>Gn3r!$Jw79;62ctgG_Vd-;4Oq%o6%SPuFVVYJ$WeN zFaO$}kOo;IK+*Y=44uzJ$lOeJ)eEH9`)AhEM~q=@k}Wbxvt(oP-U&^4z80Tg4}SZX z-p+Dsy4TRpmPegj&t2uNTqV)>P1>MG$C3QD*=O(OH?Y@+JknU&aOw?KsXf3xZraG? z10@jlZSqK`vp>pv%Yx+?N27i`8c8vL>%&{HzAN1s?MgQq_>tn$@ZSM}8i5|BVBu05 z6H_2B#vC2qzax+WlT9m-TWCB+48D;2SZdiROYT615=55 zMhr^bi_*`7L*F7Z0ZF=8mSqd&3fA~K?d}f}F+Xe{OsQ5GYyd9ikV3T_Yyf!RJAW9* zIRKj_l&2cS`!oDy%}9y_Go{u3v@gl+nA3LDHxUS3B2`CA7w}xrCk#fp^N|s}pM@K^ z%|B>kQ<$GJO(m-!jI2piH?05EVKraO`ly=bhmanWSQ;&3VtUnY7)ty!*@ zmu|Yyhg^BEMz&{Kgpymr6)QVflB08Qx0fy)LR64Kfkj-aJAo7W1q;G#?82pMC{v&l zQa9z!1C1m0E%&Ei2lUN>J|SUWe?yziu>XZ{i? zDO$KdD)EroXmL_g3($w#OVq;I(y4kvYXP}_GRUK`0onWNC%W~M8X}qiaTRkqc?Lf9 zpsT{do*%4`>0|L-9({yP(ido!65hac<*==!T#0@>k0zn(pOWRacKiwU;f>3$ZZ3-B z@dCTQ%ZV@DTw8NYW<9Q49}Ir$E*~$`IG(bKyW&mE+c^uhJlr!nrdN558A}`>%njp)` zkMjvMX3ZDferAoZ#i!pQ(JA7$ZnX}UsB~`s2u!7tRK5GjAG5H>?ndZ2q#QA({m3kHEG(oe2F zvi`sq2R&>lHFT8HmV=lQoJa z*jO@61Kl5f4!GSu59VQ7dQ=$)usuvZe1jIZh6R6Dee5aXDih*J0<+Mv2E(ZYSb~ITua4N)>nt~XHplmI?RH;*pHwocJ|bQl{U=04 zNXI`fg{D`#We!hZXm$(v(@6{2N7hpxSmADEek^A#FNQn1%Zc+G1nlYH_k4V;*d7ct zj;#zU34b%%oAH6z7TX-a{#>t_hfQ?Wm-2y`6f$U^2faHVUsQ6RWow3Nl*x>Rd6+(K zglzz;#W18GV~#49j$8Ot_Xb=Rmfvd$FgIqOtT~2Cdo4;^@vs?O9LBtJ??pEChzCL5 zYX^SD9Zbaf_<#~1IyM0O-%bkn48EHq`Tm~(1c9Ist{;m~kNTAOn5W4?M zYfm1Zj8qvvTl$>T-XGr2ET08Z{qc9ieXhz#(Gi!G$YK0loh4| z1<=$|tIl(LmY@RhLm>yrow2ou3u#rslWV*SnI=BSdnU8&23y)NcA31#<-c7Asgd&* zRI6$&?*i`k?WM(EcPE5bO)9@o-Cwvn`syZ$Y!|C=52N5ayoQIEB>3eLUF;H@GsGkXLyu;|Q;q%8DB$U0P@~oE=ka(&<|r?sm;5Kbv&l#Vzz9a^JtoLJ z-gBT<;jWC`Z#}~dF6sU*suougRVvB zaK(e!?K3M2=)0VJCWmPtsizYCQZg70uNEy~`>fk6tZ@DyygxB;$;!fQmI>8Iq;oLu z!q2bu+X5y-uA?WX@+;_vrggSEcK!)ldtuDLWkvmKIoG*E1~rd8_Gdu#Qg$d8m618~ zwD-YBMN9`SRSap3w^v@KzqUgK_Kg2=kK^^WbN2Fp1!^(@Kf&LY)mt z@I2n9ri%10gH<#&_g)F6OCGOQetcGlX=dT4kNem+(B4im*69qk4=$V40-0zEq-)He z(J$SUZ>;YG`pC)21?G-yE{r76(mqM73elmZiz`YD{G?3uATlHyg&EZLk?K9KWsFx+ zG&P;Ogwo5XsPsIP$Qlez>k^?1G*&86eG}u|Auv2;p<3MB=1U@sIfMoVs;a6QTUss^ zLg`yt!tgAH9jo_$KdwoJ^ChdaFiUNo1~>mTUFn#ey`+HB1Kl1&eQQVL6XBh?fpGYT zUOBOZ%XlGtjI)~BpYOLMU^GrGH_&q9uo})+V){!kdbMsNlLcva3w?o`i%S*jht7Bd z>QL0t8GZuQ1{;n4eYaY-*t_P5{c_iV6+O{O_T%~OH@pt#;Ri*92cExncHXs&XkBW` zPAMYw)Ldd(Sz2n1kiXp&OL8T4wN|+|Q|-i?)|dDgMD}zha(8z(*JY;aJU6!>%!O-P zl!}T}s@QDm^6Umbt92X0FP>qd*mD{1eK-JdVpE<~7nJOKOd&rSDx zm_AHc4SB`hIo-V>jk`KNb*z@?O^%KmDv7(L?bH|~yzPnlrn13aY0g9L_pr0oPLt44 z$7+f~eLcxl2tH)zZ=u2E?L?p*`L&}i{jcoxK&j+652~9bo1tEH&p}1wbBZvNjijZcB)@M;F_`D5`je&Xj`TMuz>N?}yn1X!| ziL3-|Ev<#=LW9yT=vTbN%(ZOIUlI0lD+CFvGX#W$3EJA)(m9hmS=ccnO$FA->0ISR zYA_hgaq9+0x5wkZ>So2t&W|NfXoa2ifzQp%Fxcbs{rTT9)y6LQy)Q>asS+6G$=dQ! zsHMZKC%({IlUl9|4dUd-H;K1L>8Y4snxn=hs<^OJOUHJzzq9kia_Gy`V_iKxwwHoN zx*;Jq@>yC1A`J0SsZsfB(i?v_G4%s@nlB$tYt+yXdj7hiwyL-d;&~)hx5t6!J>{+W zMI+-zliyb}k=C@}A7|_dtLDpM`^BleCO)S}N83WL{-jVjO%$ceb#-@i6p8sCq3b(3 zI?B}3_*{MmogbB;(dehQv@+F~I=%T`!ip$o*4dse3tg%b_qs;{YDDgJSARPTTdfo231&VC#ZM^M ze;)cj7L_VahEm^r5kN&kU#CZsTm5_PoaZW-x(@qZ2w!#ZJ8ocaRPFn0&spww;aVN_ tzjcWWQ}s}87!Ly%EBybErALq}X?pKC!@OULGPi{rKvhvop+wFy{67$Wf!_cC diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/4_Adaptive icon_image.png b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/4_Adaptive icon_image.png deleted file mode 100644 index afcfacc11e127459d65aa668979bc8c77ea8f59c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 255559 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

    !!%^uD9TbXWCn7e@_{ta}X78V=rMC3wK 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
    m%Zy~6EGg#o#l8^oxn8O&H1YjkKbFF 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μ2~S?F((KOJ9KpXgk3Q{8oAa+9TkB>wQ83r2|2V;?=8CSyiPp z`I03ivM4uCjzUsJJ=QORR&yZPVfXIca_smqIfZs|&&V5p1qJzn8^E}wd`1tRAt6cu z4^)*wzyu{#Kr*A0ELnns@OuFS>4(ITdQI!>HD}jqA3Fo+rU{|%(Waq_s_N4Np24u$ z?>omGF7~AT_(wn5jQ*K)(rU-r8VMB=!vG4PoAIs)9tOYxTz*Py=mS3nC*4r#fQtY) z7$A+oe;$G-Fvj`;L^yT2Qkt4tW!aK^jKvhmO2fsLzE=6~Kl^JrbL;@#eLTiu1b{Uj zdF+Yr$}=zgE+kpyU`%n(43G@Q4!fQQ9&7{0312}cz!(hxD71C4Efx1OOK@F-MPhy5$tcPG?t-Jo4}(a?gGDNjJa{99x`cMxe$k z8tN(H;^HM5&jUDvc^-gJ^gay`gH&jswF8kRnnk#gJX$OF5;jrBRhAoWaedI zyhZ7E;6@+C0T?j|TK3Y#^H7UXi9-t1fj*^#m1umIH!5o|zcm0{5hLqXEthRuHYsp| ziIGBM_mY8b zU!;!TEi2OHuYR&;^zT?~M1LzE72_Uzd@+*tNt9tfM;`gkXi%S%gho_qG$&A0Nn zo9$TPVQ}Z=OVaexFQo7ENrBiFiQlzXivE{>eXB}`AT8tlr&nG%b>-^Sdd#c#P;|Ck z6&Cq#xBb>!bt>r?1r+1lV$HhsMceP&z6=r>@%nkdPss=d5J4(|pa`z(q%p0e2!00& zPEdXUDGN*3asEa+G7e1d*PHph5yToqQhCCkFUHH|g|IK!lMNq5L2a zKySYF=J}JSPghZzFX)Cbz;TqRjkUIEUub`W;w>f&wB~2qrq4cZ{2H4&zUQ37cv&qR5!*7;qr9-DqlVGd8Qa>mv*KE;@L-!nLh3~=IL9C{ibS<@#!*`0 zIkwFb7mf9;iN`*_vZ1S^f8OQzW#P8^LkVf}NMf2KU=cTf2p<3<01UycCJBcTU61w7 zhJqtvaljjkgI?ZL;SCOBEEs|>#k`m?WDJsx@!K?--T5M|+m`1m9iKJM^1*zdPIfSe z0EjT42g5YcFHt{zho3cSajY4lMdA6ht5IHosPP);V7E2-9$?O`_{5m5Z9A5p&d$y3 zB11SF#+-A$%ScO0{?QMAxFIz)HGVvSIJ54s z$bK)nR*kEJWlUrO`_`G(8HYoNo)=$w>2zyb8^;|K$S%C7YWqxVCz$auIIvy|UDA1+ zUHBYzxT*E_n{VJoR<}(W)Mnav>dH<`4jO+aaCSY=)7c??T^%~_PgW8o0DS8^-;sQX z2Io4#jVlhCYOo1CheH_8Le6zuSF!Pqz&|UAlBp zKKS4RIeq$+u0W*?@gOQSEltPYq>1lDPOAs_ z&12l@&q-edD+KRPo`2y5RbgV|A$GnQdv&N#iZ$Zn@og^j_sDT)fjGlnZ$jbX{B^N$ zv3~tUmipq}z_>?40{06R#HQl+jVggFfd#a?*=z%tUv?|=9a4uyNbgpHDW?zvmQh?YZ#4?&Gah2D@a zDlAk`0_H%e0;qxCMR9SFELmEr(mkrHtF?s%P|HEpCImk)FU?|rDT<4W<^1{cPYtqSyh%xS&7|GIbxg|9+GmB_I9vx7ucN11?GrjcuP1I&qzwnmZB#`7#`st>+GjT0mS_BY5A13CUKnb^=rV?WVV`zZR@IyVAUSOI`_6HP zOBo42eBp(4P(k7!cc%Sg|Mo!wM}05UtHj1D^PP7I35wvQ1cD+sV5l~N>n_8%$?ELt z18`taK`5wGnp%4$IVn~WV*$!e#H9vzG}iHcY3pd0Pu_b&db=AXH6kAdGq`tA-R2NSDc8Q~C)Cv4LayFUR$I*^UO0+x_pIn0ldR@@-PDk zMsWjZ0A1DM0yqK}M4+ap3u;vw0a|DRC?O7D4ydwds>S#LFa(!0ypZhB+}tEF@o7@9 zVx?p)EtWy-v0NA^X#nDQJKN;=;m=g6L@z=bw9S4Wu#MvLclz8RCEc?`P%W4W7ktMli;?J~`bQ zi}%BH4Bx&sOa9__)=4a-r`#r{rM0#9<(FT+0N`31CIjxh0w>pneA3AD)YQZu{_uxe zpsp~9bJaK53}EeVJMf8gT{tI;zWbacEm?~B@Yd@SeoMHV+WD&&Up(2?(b0wXdIu2k z4H(#@W5`dTWWQ{P3wYv*r`Cg>i6*^i4*PlO!;EJGK=4V50KGQ^$-su!%P`V1oWDoM zz5zrqkUxYgzyQ1w&;m4iw1;5YX5MFBrbC#pS?1u8HOb&=k*0AAKJYLEcN zKQG~1)DUYU&eVm!{IBJci~x@p&&*HP0wGuie+;)jCn&-XhyXAGJPN;r2&fAi{4am^ z^J9&TjjfP&sFI|SU#mrVrh3yxzng8I$~g1-(gw}%Oy_hv%V#*$T1JC*h`4t3>R12A zpZ(eUh^K^zKtP18V={Z9I954PoDC0_#u*l>J1`ynG|qZVNbs&Bqq)7kT@kRDoNQj!sm2-RblZ5J?axQ19DaIJsi&{seZ%$8^46HGOE4Mx(*)%G zMtO(5{jw&fP5#%XGIjDd2)2FZ_r;LX86ON9v}z+ z&XI??_?HFXr(w*=gC_bJPh)@(w5vUR@=jNc?C))m&Jn7;ntzj>pHjPZd+EibqnY)FpR zQH2Ho5d=l>XQf4eO4jj)w9cZmbo*Mh9#gch+A;NT00p)pFkL8R+d`dr$K+#s^hZLN zL@=d700_Y!zz{KD9&XKzlE+G-q$JrKg0jp|`pVYrv~50TSg`)SaN$Dz8*jaJ0Tp=& zhzJL!oU_fiof*~J-(MK(j$Ms6rMn%9Ykud~|19NYWzM8Q-R$cGfFgJ+?2ehc9_Z`t z!i~Om%(Ko7WAO4zOPAqB;Ss7vj?i1AhtgE1F8*Ubs#9LFDSo~z0X1w{Z5 z0rB1O-+ShnbvZdXHx*4o6&k<&?MDK!wyIa2-?8~|J;Q>JsiCN(K<N?MBbR2NEov+@yC z2TY|lgYS}KF&#H`Q!oaDt&z9l`(Efa^P46ph5K#Z>YB=I+_VYn!Q*2jb#(Xi+<-Xz zt5j2H>EDI^9_`w|3lR9ZvNO_4Gcz-a@O%#H(($wm4J0NV(V;jwJ_#7f&RL}WdHUoD zsjjS0-~-fk;+8ukM&Pivx6i1~AT7in4{f*O7X2}(t+;aanl_MS?b)+i78fiQh)Bl) zcqiygx2%Wys+B8O%E^-_RiXpa6#^u&5>g{BKqWwJU9CPxUS6K8TD3|p;kIg3RW<1D zVOfOR`| z1z_+(+^?#yiHUJ*o2bGgAArdXC_4+%CF;?JP5>@>h_7Zked~NX_I=ne>t~?|Yinz- zu5WC*-OE*IzLwi@RxF7^I0U!yg zfcD_83-7EC@1_>gNjwmv2(XYOK~h9aVxoAk*Y9s@lZ32H1unz@01*RS*nyWfQ*iY)2I z7{YmgO0^ilb5J@&T4Dlpb$H~;rOTi#@l`3aOh6e%G z0Tv_@K#IZwNhr#fDD+Q0Bwxfs%EPfQK9>t;P61poAkhd%7wGvSjwkQSmp}UMN(J%QJh!sV=e>O8N)sePUIqZM2k&(d zzo|EHH}9d*oCx=Ko_=}_z|#5j+`Ov8uqNMl^m6UQ8hfi6j=M8w&sM+w=9?GrN~!m1 z^dr1gAIj10+ikz)c(hqLNyk_~F?c=6&wl^8t)La%1keVgJ;~GHgsYOLsX7Co zUj32JtKbC0fqt>9CSJNE--%Ks{38i;2TBEDfx_@ZaWICb&tnpLO&G&rII|#t7Mg$` zTxV&T`+q#d4rWVCQQfpn2@>m%%+a1@=g>VYItBer{C#juQ>hIZEa_~4YT%S zaW>6l_C#?6L?r%ifBL7pH*eXp3%6e*+S=Qp3=mW36o3deC|DW<+q#&9%!ep14yLie zcQp(ZW>zLXvk4n4w|)jTrE_=&hFL!gW4d5|8}783-lh#K-|4sMoMFs2m7n=&Y&x6A zS!Xb}BM2H@;IxFPDpt)6mRP%1AE@Q>|+)FFhEUu3A zF@)#6(hw>jK}!&r-pmBbck7ld`HwyN=n612Z`ui5_uz&uCQHw>W6QvhMv#vfRv-kWLb&ut zhTNj0Xt^&xQXVOamISU~H_71L4*&M!kFOj)a-<3jIWL&PLmR^y_9zb9zu4vb0 z5ZmB>(u~Ntv*+Yv930~rOwc5MDTyNvQX=93ilFI= z!!gYRCjuiN+EzE|oKrCVb>q&BI&TFR6y?eWh#$ZAzI$b9$udcRdMmDcH`5RV(FJf! zT|D%z2^Jd#8w6@QQVd#glb_7QsSFR#pM3ghS+-)iKPe8q2V2|Q&w&1KAs~Wl z!a}bLwsE9CxZme3H;rkH-*u9Y+A&Z~b2>ojkcJ@W9w02Xx0 zVW_j<+JJtQyYJd2B_$>D#i2tAy5l@e)f#ItCm%a;Lh9=3^zkYAVat{+at_iUu3fvP zb2&ue0{pODDl4kwYk)8K&N;_#0gxdhBOSntPqlt7L#%)G%2m< zJRGX2t-AnlN!ac8o#U>!s3_xwAN*iFZUj!c-}iuSxX{ue?br)basuvR;wiB=MyC;s zz(a(500^?6@&TGMv@@wzgR(q3pq{W3>-a!_A5>ESa06)y5T7JK6JW#{j@NWtB}5iLn|95Q4;|NHN|eK@y3$U7r#cqkH>QtpA*Qy8xJo z9|S;R#48ooFUhs**QK$(M$$4DNx{BE{Zg8nmY1!4l@1Y_An2_{%>AjPk+q*xw%crPRe zMC1GO-~a`C)B1XVhAJf;k{}9;3bn64{dB*)^3u!F45<|fDak7Rg(?x*_4)bvD*2_a zzi$NJWI5DoT){V?k|FUuGRZ=j2<)pVG$R(YZ$9RaB{x$_+FU-g7lZuu&#UAgJ}8%g zK{HR;^7&1SG4R_E#$_bO$R9kjLiTLT8I$Z*_F(N81~9H1^L`cPzkW!?;cXxL*kSQ# z;O#`OUAs2-+u!=uI(!c|ksA^gkAGV>0(6S^*YCV@;l!y^)tKw_g6i$`pts|GYcAdo z`6}GEfqx7wT2b-e`OY(2a7dm&dXxNr(gIYQVQ`-0-xBmdK!gEBjDWYGek{P058U1b`6+1VJi~XBFl*dO?>{9>EHRmgG4D&mI^?dY1ebyO#+z zIg*Yhzrg;quS|B7!1ifT>bBqy%j@8?+kCXGpEmcR)+U|KANCw3+!uG_#*Nlr{NfiU zum|p^gb1Wpel5ztz&@{N1+z%+q=R;OWTOIm8GJ1s43 zMRC6N+qY#qZKs<>P1iqJo?vm#FuG}Moq_I9{7ggREW?DDzY~SqG*iXfbiwS|bF>z^Z7#N8H0NmO*e{gfwk)Sx%S8lx!-jJiv4&5iY4B$> z)W-U3EK-r4X8EhRGRMuot48{D6qi zOPJr3BrtFzA-c7>E&l5-uC4EE?Q^JWncuoudJ<5W_kh{)U}CzI;uZ#uJI4OAlmOD2 zv1sB)TNZ5Om=VmsN|UH<-W+eZ_+uG~!O0jUfPA(I@qGtcz-S%~g+vG)3CL*k1p*;( z$weB#0D8N#S`PL@Dg=N%!CE@{9CPbRN{;Q=ykqH^%&fF-+?=9Rl7;(l9FNBF#vjF= zaoj-^XyU*4@sBrcvy*6J|9nRxdwy!1eyJRPxE1Wi4YQSCuovnifG?T1uHOC4JAP5l zQvj)CyWI;eI^MQf$DNP<#kvqzSdhCmJ}y38<4LatTL$r* zY8-Q*32^*nnqcuZ95xxEsW@QG!Y%m@s4bwhh#Tc)dfS~~2>y8U-Gf{61WC}}hr?;E z3HVl2BGay&JD|$qj8s-u`I)cxZ@*8#tdvh7g$NpibnGu%Rw^6tZa&9a)6$F^)o5M@ zB&ksC#i=uA0EoD*b2_omdv@=JWQ8_4eB?`gAin$j{5;vTaie_p`4`$I&iN`85Qpys zKM)K7$sYy`;R8ZYl0j}>zHGhw9srcmpz5FjoOM-MkkJMIP z2iT!sfi@AYL>Yz@lHt@uNrn20Jb)q&z5AYAK6e)Rhak~n2xZ3ss1q+e5Q*V(0ko6E zEpLQ$^$*MDyY5z%8I)eaZ;szu9VD7mRNR0{krY)c1Ch~?SoF30>K}h8S1w$DbcuLL zg@lM`l*NM?=+_1vlwjHu8QG4*>66%l^^z`GV49fpa1_R03~090=bwFcRaR!^Eqgtk zYBT=f!*coH>pF}l1DBD;{E3ZDAU&x)8C}b%{~tdbNZd`iP91f5&wHX z{pq%cAAa}==p>D5YHn5u5zK%|%9cT|n!vC?zb~0TAD9iwm?P?~x3@34CSq%0L;Rjq z!x4}>sLgkdO@B6DF;0u=7;kN7oYQUNtsNL={h^d)(^{Kl(oEJ)#@lpLrNu%u&@MmS zBeHvaif%w`PFsWZvm_cDZhT|^GVNsXV^h!E$9h1Bk9>Lfvuh{6K3u_D`b6tvp$V(o z(j+c;INj6T>%MThqNx0G(^7=p)Eyh&M^>a;b|<9CUH~JqaO1%kk`C-i^Vispw+#Zp z;nOVoZu!TD!l6?M3}37vH%tf?T3@UQ9ZfkJZbpkU-o%ZLA`&K!Fx1-u@tD8uu9Jg( zjZ*3D(c3aw{Z0CV#~LXt%_>{BrKk)H`avr$_$F09Wi>kAL4-UQu2DmSgYJF%_AR|@ z+qOawdF;rWYKX7;x?xBTLSn>~mLc5wu)qis&_=x4D8Y=;rUMS+&Oh+{j(~RCM+uB) zIKynb&1S=FdK0fhl&R?eQBF-t5ftU7DClTak--~6(O4>0WJCc75h-gjA|*aLuzXw3 z{MlINMnGKOc>kl1$}rarLX`3lu0Z;4OV3};(=QoJ$0!_TX1HB3>(RB!oMRtfhR9~# zqW9oXAXGzCx(lLtV<2vq%t`vq`*OU4(E$@`vA01wj#q0GSzS8j-@zagFl@P&$SIl*kUF?4Jkw=!T z!;K}35ohnrS98Xd%l5V4_Vtk?hZP)AU(egSrYUTaX%;v8=4L}eQk-N$l=I5frBYH{ zDtWp2lCvmVQj$|~qcH(Fr~erJo*vxtZC9Q3HMLc^(Ro#_UM!&-W%wWT%WF67va$L)IFu;;-o)<^Z zn1uX>yp&LY^_I892}`y%XloUXPgEc5~7=X-6n0sq*OFHbNRB_Ca2F5e1 z+KlAHg#6q^*~`Jeyea!G(vXxAkp(gQDNy}YUUps1;Wm3iLp|Pu2jBq!ApmNC3M!Qv z!S}%*z#A%|A$QRtxq<^|rqw+e-XYanKx2@cfXWOzTQ4msk=3hK0T6LWRcrA5P#VO} z9XsSa4s@@VmFu!Y#_g8PoAg`x;?Q9*a?Kj##-TE$Ow`oWs_0`%hp>!YN(PDr%|!+; zB}Ne#k%Q;ixMi#4V=VOabW0PShvNzTZHLCZ+Ia2}s871q+TK|~sU+dH-wzyj_u{rb z_Fl^YESYlLb>dw&L5xBp)JGEZFbL*;+~9z;SC>n}`O^v%=xuL<hk3O|+PeB6fht}ed}OCol$XgxNUo}{Ym}rE+y&x61}+{n zw?kb8q&p1bFrulY3&4q3S-xwJWGr7RgPm=Xn2`x}Md^|N)j9=`e$rN7p^{HJ+nS}N zsb10wN&sY7FKx9oP{(pn$L~H!I9a}GwX{Kf2WOfAinailoYERn0ch(4c;^s+JuS_R z05K$hRviQ&B3agKxEr9WI7pFjW3K9u`sy3f2YV0_2P0yV#f|!1i!vlW)(t>JtW=*n zEyqA(b)sKJh6f}$AqF6bcrL%_vVHeMvTEgWoeK$wpwyP?>S_f< zq$DQ`fV3(B0{XM%<(FTQ!v{Z8^+3r0ArT1AgN+RIMG~Z2uuK3|y!g(KgI;c-+6?lY z=5_E-Q8?!0NbI8_Kr1@_;fEe7x%;lWa?vJpsxw92aEvA>;=q|k`S^H)T(5(KlV0!& zw1+th_;&api<9D_Wz(`WdHn8t*|I!cVlb9(7lSp7`~B+Q?%#g{d$>M~K@VuCn={!? zuM@f6y7%nbwPfc54=lwPynSB6^!nkpNR4+nj6K)2{hxkXjy2X0A-BbojXuQfxZfIm zx|zGUU%>m1E zui>2Ful_f5FRFtvF(}C0o5$M0%Cm7( z*|W(zRoTALJ!P_4B`{ym%!`;R|3vYjh6ko|`lsU#mez(@o4sJ&)3Jl44I)Ql@P&7FxlBW^!kl6-0AiwFb>U&Nm?0mR(va^M3l!pyS~p|m}zdF zV{9^|4pBJ#bCj=Yop60_Etd(Ijvlzx3yPY$8&i4MBDkZ}9BQ6!%zP+hH0EXo6m&t?`S;T zmN-HT%3&K?y&gF~&>#!-K=EreQf+KOz?ii~#e`>YYQ+AXjxyBV}nlgudWgjN6&mkS6=bv7C?R;ZHLr1u(%dlfKQ5yj_m4I=aN^UpqmT7fg>9oq~c*zAu;MPJ+Z6zJwolkEHq=(y(X#6(F-fD{SLRZc@ap4~l0EOt|4i!{_UNn3j> z4#_%jXwfRY-2=Kow}&UpJ9a)D(HoVN2(fkRR@FDp!>@%l*bDT%_u+@0(5!nDVXzA$eIFH-s{REB|EQ78f133`@1**{?gS71WHMw-*oPd7wzY~=d0f2-T0116xSRZIpdIZ;R z-h88eWC9ME$>C9$v%J<$P zBzIAcg4-@$yl8H(`2cYWc)&i8H|q6v8vqb7aJ${+yRtxtWh+)n=`yHHLEUvwchCjt z1RP^G)8MvhM`cybc>rR=a=#xq?kFYVM=!jvW=Tm&NaL;(wDF~mK56Ueliso`(hGW_ zAE23*2G9*SOyDlqEgo^<-9aKIfCHctGSbvN0(#Fg5)BC&0Kj6*5cuGZiNu^ZB1;yh z$;B%*cwZw@TAU|&dD+s@2?;USV-s}a#rTQ>ga7oEMt}!8B@vU0Mdx3f#)k`g60 zeUUuy;FD1Ak|dQ^&jZwaQ3jyOg3>_d@R zPESlqlMJYXNzP2i9v~8GHlid3{H@l;da1=YC)lVP^bRH8sN@wq7XafD2Vf6mpsK`* z^=nrdKm_6lKB9Dpii!%*S&1tBVe#U{s;cJgx89O>-hNvE0U5CAyG0ivviM| zmYyoTJ-s85(eA4;vF_^x36n12?`D1v0dg0go0FZL3SR26ML9W%0cmb2FW0lC zjsdw`)g@P|yQH!aAm45e#)ttz6y+qyx+STyrYJ>H68sp;Tk07nYixaeea{+#= zuC5JqOh3k#^KfditT#OlYe5viSIIy5o!?ncDSdvr>!!ElPKC4S0j^;fcOC!u;*007 z|Dt+Kj=9^;+^+krxp+}nMivYprausCN}sP4dY!Tb!PvF$d#(Z3Ug+Z0p9+jJAzv&}zIxf*Up{G>@{ z9XZ=NrpiB2e5m1p>74$Vx@|sdvlFd*E^L;;*)RT~efyUE^rt`lA#Rnr>+0*x^-&)f z0u!CBi}kAs3=8!8lKJz2U{fg(n4qHZbJfZE{JQwZ*I-xUNAK$h#UD%($Zp50b=#tX zh1)P+tqzMZX7V>KMg?X*RzzFVhDYY-ooLAN=InnbXIr!C)Q4Pj3*~ z#U>#6f_g21fdfL<)r&RxSI;%9fapg5xVzbn!+i%Sb;ZjzsM5F#zkFA$;QAh3o$Y*U z2eypiV_%FJ+f2uBpO4=UlB$nH1*3iO>h!q-!yy3Mk&e@XfXM@<2Y?V?_chDGUfdS& z;+7kjLkndvzJ`{p%DT2<&El$r#CQ(~9A$KXr8CPt=G#kO=`J+MZ{tc^3a8GDW}I}Y{P5lg}wOhDRXRui!s0RRN0 z4@ARG1Q4PmB|`4ckC645QG$yodNat`N5T5T))*|#_6O5A`-FZQ7Z}bs8obZpgP(t1 z{>dkwRNz+9nE5Uo=RCIACnX{c8>w|bQz!9V@j2UC+vKAUKhVQsrkj<~_i1LAS(S5( zX7+z^0pH$C9w!f?upfN*A=Rm@`7ur4`|BDU@}9-b(>5}GXHxEb;-LnYe z=A6X&fj=@6_{|`WS0k7nHs?g0_cTA|CCpu9NN~=x;Ve(*HQ&<*n^$4fTxuN5#flm25K=eHEJ41P$ro8d$;feH4_Pmpw6 zF#B@N+O_h?zDEQ!u0I~{)7#$Bc?otsRTM%DY*_BQIPNU{OHgn^LR>CD5i3E5+|+#+ zhaAB=$teJ~;TAgQ@T$rRxqRWgitO)$Dl4kMFklFRSg2A1hkgV?fT2v#0RfItph^3o zT7k@EzHu^^DGh>R{t0~01%q!16&B>@W4-CppVGAm=A6#C9({uL7?HjNY%rYCAlv{! zkg-b;3{_=t9RQG8R<2qjrOQ`n`32;j+-VX)=)M{ZY zL5&48O+Z3U96$=mI3$Lu42+qCIG1<;ERO|qz8=6xw;K{5TG}Ny9g-Q+Ql;PHmCUqc z8IFhs-2`w2)c--eG>9Y|c(^1dD-E~uhh=fmBB|>blG2U4BtBw5 zE}T6jRTbp`HupgaR-5FMER({#T&U4FrQN!G`7)t;7JPH6GNu)@eso$ERBPm85JsU* zv62eu4!xZKYeG^4fj69ANULz1SK!;Abcb&qkp`q?Mqi56?LOU`QX@-y^N9?a~2Y#v*_z_U_s)iI6f!@DNpb+(5sUmzS#) zjg0gRsDjA_$Ru7qz}^H00@7GpE71TLxzN5$sOzArrgo^E(eJCf6ZbTtnv+wKPk}BT zASi5s=@Bk&kr;n&%-wMhY~Nn6d-v`_v}@ssxmkX2obUKW9t#EAW+a-b0(+_uqG4@nerZx(xK)EkEu8pYfaE z=eT?SgAcBO*Hi(ubOQ@Kr_EcJ->&lW>3d5wOB2ND~2`W_k5Tv>tX0{y<{F!_9K!9}7N>?u4y z|M|~f{Ot!HTtym6h_HYNTgP14Y{EokIpb#H4$KqG&oCO>2ICw3J5jhzF;%=xH<3Nt z{1cU{;bTYlq)BHSIomp>%0E$jsNsR>oPMX99pLm^x3!(|lZDy1iELZWMDaG98^zd_ zD_1W5cmLr({62Ir$JEr;n(Gd;2SnI5kg=eLgg!Bv(cQhCn9A5ES9Zp3EHEr*CZ%Ds zCK{`@$${~XJe+Mc+L^`?@2`UnXBv%|;!h~$FpV`V-|1(#Wt@+u;SKHNs3!S0-%pjC zRF@1=#G%bPQ4_}%Ycu$&bmp_o<{H35Z=2VqQNJ(FHp^+-^p3D=moL`u|LuEMhDV0_ zh`hrgVK|`l9W5N|By)~noR0R6n6qD3E^n;u$j1U6u0c)AANsGmbE z#_54psq^;XZVcDvg*9o}iH+;F7GBE8OzlmGiyNc}tc7h+@Y*d=i$iJZ@Qw!KEB?9X zo?BI1RFnbYD0rrTP@8V9nV&4TAHawkox^ep;D}2taCZ!YNreMIFo0E3gc8qm8$z4Z zu0;i_ZRZY-PM=#XJenPa`Z%b|JcrMwpTw^cz&;=Z8N(oINyrwbLT7englx`=l&tuO z2_-@Vbd|3TG-Z@34@@#6KikeS%gV}{Uwh+?OSmQ13&yq=OgR6I=@}J#6EblOVm){D z_x3La(|skLgX*!=R902W!A}o>VF}&Wcg%wK0QHma+54arEH3bWPxz3AaD(-7Y+P&w zq(cmb6LW;$1b%)g5f%{P1t7u$)fo_jobauupI()lo11Fqu?6pBGywFc-ex>~`m{3R zuV25e2Uq?Lxv!DVHd{BR7EA|03BQWTmW;to;>Hj;*WE>T{e1>v?5QZ(kV>F$XLi5{};^X%GG^{fh%yciy6$Wf|$IIGNRrhV!xJ-Oag~ z2hBWG&CJe`SRB08L(RaA^6PRPV)~&f6bF7(oiSvjdcYgZh?8sI91~X#rrMM@klFN=NUAv_XYdR%V(?=mCZTz?oD1M>iaUB(mTrGi3Q9LhUt7IggtV*X#yVBS*4aBCE7xrlZ-1{`1i&W~5)|&*wpCWH zSdQ^J05wQ0(u;kbI|C{{;u6pvl#MYLLm~zT8hsdB1lY6zWY7l{EM47QaJNG;1NQom zkixM>z(i7FoMfjbNme>kB;lNuprQW00d3Q$JZ}gwmgeKS(PG&HIckhLt7f21j$0bWC*P7q+QJq zDl^E_C6IyPNXT)<^pwjOE&c<}}8BG`y*s>H1f%-{TTRNJcVhc28+fJT3S^M%U zubjoVG>CogAbA+*yBVJupdID`MxQRwuQ7q?0{u+n5A&6opO+U4TBiTc{`61(8`dA7 ztcB;W7KCT(31-_c7Hi$1+QITn6~=fPTSuTf6hG6@ILk00=I=z|HqBJ=Hr+(_Z1Yc4 zu7>N-oixSlBj=)y$;y~XTworj-|6PlJN;9+gT>o0Ydg!dVWHT8X}FV*!7uZlUVZha zn26IMBCHR${8&C`xd=>jHjfGO{S6Ec^g9x3elQgD*2n-3rh9Qn*gBYzS{47yT2FK~ zcThfK9nSH}Fzbh#6R=IjT-v;VFkfloEk{`_Qp<6Kjn800{Aq(FaOU^9o#~x!n_Ynk zjDW#{G}PB3fAE+~?p>861A}IPGLeqI+E%7_gwd&0Ix5k0KEDkPn#WPjL}hCdUm?D7 zTbrA^0fx9-UtiNorW}4@c}vOhbliYPc*qd$>4^rTA@%%;s@1(+o+M|Qg>)z3)<_Z5 zX{>{;&UFArXLKH2^+b z=xv%W5YGJ9JpCFhW6mB#5EQX; z`SMIK=T@QZoNvRz@ZGlc6C5!jC!tcKwi_aOyCDJ|OfHIeB{+iflL8}XbM94}&8Iuq z=)joLq2?oEm6$b*VFQF9Ac7!>2uTD7a8W{}O?oiFTf=-8 zTvv5%)$;wH&bZpR{92<^B<4uw<3?R?`(|W72YimKT)9e_{&eHUg3S_EHs-s&0|yUY zx_tF&6UQAGF~d0EBLK_~gb4R}Z@L|NJ2U8f-zU}CMD}Cv1t~6x$;ruU0Fr|YrqO}R zgR!r07 z4ETY72-3g&;n@@*!JG1A%-S`=#*-O4%Ct7|^m9GnR*P z%GF!136M@KBrgDGEmy8pf)2SMybr^%)(yZ#QSoAV z=J);(pnzw-aPFLrTS}PPylI0#Wdl`8NH;(|Q3)xS z;c;*QU;^|x=#74kLrOpC1t^1(BnSesW0-eDR0;&>PeZ>zJq8Y9C?UcPBnbC|gOm<| z=O(;_QX=5R4NXWk!E;!N5v-HXKsu@);DsKj(!gy^{U+Ex%mI2}g9AVXU!(yPN=X!y zBvFmNe(}X$$!GibqmD?)L|6&{6D*I??MOS(w6(WMc6QFCl+=_m%L`a&x&&h{3Jg;h z=7HGa;^GXbFIfUmTfChgwBdLDgmn)%Ohf0$b35<1 zX4^&lj(y)U)n-JmS-qxc?}HC5hYG3)Ri)+w)biUlpa34x3Gx`=19`QoDgyvt2$WM= zm4FCKn-b7VH;n=$tl!Vy)zuw~JI@{{{nDI4AQN&huVF=z#&sG~zB6QEH%d`f7bR|T zjaLbrpczml|0q{;<@7#AW2&4BTNAu!q5x>&!Oz_38S zO$S@^Vnd@7J(z7#WX$#U_Pd%QmSxq)KfcNv<&ybGWita z%ktI4$RNg9kJB9_DT25-3=MS3zO}vblZUd!13(1V9$Tw#IYLU)rpfEJb&RGOEyu>0 zqF9IjDW_;A+sK8gudl~*=(A6+pF4Y^mLgkmQ%P@2bD`nSQA5}{c{m6HBdWW*+g)AO zn04iR!*Wl*H>^%2_!{COa8o`yPL{Y6WEp-X_+>`BB^KdStwG5W=4}LavHxu%!n$eO zAJgL!1KyGcM9lyOKot;Hc{3N{X_!HiGG zI7BpObCGK3qyF;95j_-k=DFjZ{~o}GNDo5px#u2PytvR`A%d}|9ccs8`T{PRb$~e% zmN!Lw^MKNHoa=CK69H9Pk)ZGNMmlDM=*^op2=RQUMV@8V^jE@TT)-(x108gHFFq(jq=75oEGq zf=N$HNm&6J3M=raffO~pp?m7&Nfm8A8gs`r-#x&a(o0KAWyb>#=#6P-eYl{|2Vmn> zFfhq1_fjffxPvmsjXO#wiI2-H$je<0#_j^|yUZMpgH*w7Zh#UpB^igZ{WzHB&HDPf zI;p9yR5!jC9O@3JRWV?Og|8!hn?3v})7xav;S75*dcD=PF*Z zRPOusPXwq1Ie+e~G@xDr7C28A7B7XGi9Gq@i$eg-cx4m75KBsmgz6`#8c|#^GEABU z5*=b8>4DNm@ck(r!ixNK49Dk~PNB~??nvjTlN=zQp##BV^El$*RDKcj!kE&jashiu zv>Q^2)F!YVa~j5dI{+66+HOjTAQfJoyutXr4!(1Q;a0)R*!>m3v3J%D|(XaA?4 zRvkNjybcp^KZsoqz7sEg{^1|akAUxj`>)u$w{0uf_sAnl!6%~%mvCOFB&Nk*6%x4!g!kZhnD51L>Pqh zI(H%7y3Jh1dhzptDM)84C<1+=G&e8XA+EW(rT3S={Kr!*KsbXw@W$YqiUL2w(Tr(1 zQRip}n4E!r4Gl~e=w~8-n6FHX`OIqbnkJZvefhLpO~?tGi;Sb4Y^F_T^TM`4!?>AWlGZB!{)dai zi$#s7dlqimOcx9DRj%QTr?Dkiw`r0_`TzJD;?M7ofWuiX!>!-uVVJ1{H_N=ojvl&k z{Od2PqoN}{Tx7uH3477;d;%IWN;vkYI-{$r$9?U5&Eo2^)?%-BI4loq*y}D33fCTWR+E3y32Mi$Z;-%^3C94+Iq$DTx$Hm7}7uc|$s0g@!X*%pER8krARSRc^-fx$js}})L31U`v(nKPwQq*LZtp@fd2QQ**&JI8_s?}WbR{5yzzD9jnB!b~cI_(Ouzr03 z7}n-WWw3(6FbwV2+r#+wN!RKR&#AVvxqN42OwhJ&Jgb5uoaw^djprRYaq3jXkt0WL zU<~R30}mPSQ?RQYht>}F=b29XZg&Qq{XQurjZ8KiEV&?FIVU+OaVfshF%n#OtM?4V zm7m1T=$6*japQeD{dy#`aRuHRRC!aeK;hhDgv%AB+LwTwy-Y~ZSmGOHs5G&ZL3D#+*14fz;OrO zh5P>d@6RVK0zmz&#vSMzymPM}%JTrif?~Lvv$rn|Js=nh1_;4%VGbZhR0lX-zpo7B z=Q{@#MX))?VifjJWax8@96fwca#n4X#`0@&y}Vpn>MB)Vc9c6#)~;KxD!{%xaufi} zELpLm3-h`6voF4=IePSH9p;N( zsB7U3U4kL-HQgG9a|Y(8XzW?y_C55_63lsv!7GDsCj0H*8qe`fX(itmcrHV{a097) z6`&#dFpq`xo_{Xh&F#M5nr$EX=oh`fi3?5chaY-m^~Q}G7eTTTq(ry@ilnr$C@hPH z=ivLiRaAsZgHXD}035j1Do6tK1%VJ8bNtzG<2Pv-Ph-Mpn{xybD9B_zja%Cs(72u+RpSgY%<#!M>h|IlmFx2{_VF47B5~8 zK*UIQPtWMB#A$#cFcI3a*(Rs)hl5ztgK6qW0wW;0ug~MEb8jzfiQBPcI5IxS;WV?( z>-crHbB^2-wK;hB2-FoMMYqUbJew@pscscZIChBe`E3_Y)EBmFYuiT&=C^Uqav2ur zH(>y=kJlkYNyni5Fl84~Qay9{K=&81zeF3P>D=UNDlp zdBv%frK@r)lTs1~Ksb1fAPhoc0D7R>7aC`o z^gG)yRhw+QEyJ0YWzpC;x&z}wjk9^NMh%}hd9v=q4?ir2KF59^_-n{A-EOr*L5@M_ zA9q1-a5fl@%P?0YaTxG<`Iijd^0G3yaNz>f2-NFAu*Ti_Gp9X3W-lcNtXZ>Gii!%A zQEkU2H-{K^9XO1>7N3yNNJ%)i!Z`EIaok{2N<<`XGb??EG3A#Ov1{kfBIxlh#C&&4 zfgN9-3ZdOv6EXc?k3s)f4FL_?~W` zs)9jtsIGZ6W7zxw`Ri?LYOZW*X{~}Jl3Q}WA2{xC$m!a-b7#TcJ$s6AI30H5F7V}d zcecw1AHFAR?%gA&4;_@oHUMW@>jX@5$tft2^-z~_{n|CTa`l?5TD4M=65?eg)Mn%t z6zYKqrH=46DUGEu1M64_KffJrDqKB~k#(S!Nnme}*pw(GtL`>omZ z5x-&mjzKfya&mNjZhrPtPd&9ZJv}X&dj=QSC|K+KfC$#5G^uj)Ea(9s2Mdf)AcO&L z8c+m*m`rEE613q*dN`DhRlm})ByjNqe~N3cG0Y2>{$YsEuaQo-253B8{^azKa3&4y z0|k(l_Wft9eV#xY$u*CLtAq(3D1tOQ&p-%>fJ(E$mtKD9?3Jrm>!Grg>IJ<3OpMF~ z5MkS=jT-%9Nc~a2x}0g9Zf7!oxCKQZ5`fTX03sr)tE$fY@gM!s+X(8!k9sS$mtoTc zx^38G_GEF+X9(sF7RK^uLX8VdtC@X&oMnU(ZqrPZ&&G#h&qWy%*26F6W|-O5Ggbb{ z;)BHnhE2!sOgoj^##@_xZQXNWlSohc^S}6u2iL4wb3YaD(x5g>vM(+vR~laM9xK+6x$N+Dx&zC%Jz>*2<0s4KOhOITCsc`9&W1VN&c@hq+SWKb$;LCzx@}s$$ue;6^zoV_ zhYnWaR+)zkIf#x|{k2$x^!DH+@7z`xHnwlW5Y>xu*WK9_TYkAQuco4Xv1huZA(^7M$r3>Kidc<%l^T#La1C3gf06Zu!M> zqq=SD)_iPM$1q7iFlq738)z68EIcsXM1ET~<3laSnI|xxjhjwc!O~8*9Q%Beulx0V%yjqMgL?)5aS%VBM-70aL*c7#HwSGJ_J$dxG)1ZjdGiGu{m!3_+6 z!Q9g`(|7mle*KR9zO4GI^JQ1nt9tMCOdo&ERA=V@|M_Ru_p`$FK<-Ps(+r}^g<<(e{ z$6=-P<_K`0#z8F3683JnBQR zd2-iWg6%02r5p6?y6_xkhX^bLnPW6?>;jJqI{NN=?>&NdsiD5R<{8!m8xX+4_}Z(l zy><>0b8n)+nSLGXIn)tm0s(a$zq~XP7gFCgDA)mk-7rBHyq`3Fqfvy}v5H4|;hMlP zFE?Xhs^9%7`8D*pvuC|Guz2+r4CeS{F5YcdOv4!v0Nx&q-F(BiyYBLi!Y~fi;|2}* zok~l~OJ_n%=6F1PI^z^IE zjKZzIIk|7&>nNk<%j&IAK7l(cggkbMV8xEnes3Sj-M)t&eCPmners!olCAMe?u=aU z{opYf&;8&Bm!A6ew=b~G#gnb#BQGvSRZ(8I#Td-}HQ46TC;~_L4E)Taj~;&b;fIf) z|IqEXRj#y#uQdWJcQC>!fA_oJz3>-*`Io0~Y*z^%dYN7Mu616nM|wMbyw!<%gY$J5 ze;FfU%nkKD`p8G_yzkz7CI<%kydJiP-Dc;;p#K>f5FlyJdj@F9=< z2iI`OGhrj;`+T7}Rs_uu-huS0eLH`icAXQy0d zBTkpiOY3*#(uAXANRvzQCt=rZ#&_l2aJ%tceH+43Qa3O@8d=dAG2am(W?To^`Fy07N%oS5$WsT)@d2S-dK7Tq{aUUA;hUSUVG^>8XRudYQE6tkp*H5A=G+g9_&Rm66h zhaPzEdk+l_4Q=VkxorYZRRPV!JtHAb0nkT$pX3}yRlaAai;wsM6<~hGy3`2Y~v2O-7$b`7e zkL_Y@ags~?bU83Xc`=J#{OS#s-`;@(2h3K#_}bFx&X|E6KhU2-kLfKKe$C_S z#cg8@A39xg}22w3NLvSoEu-Z3_E$?B^j<_Iah(ERWYJAxzNyS4<0&68t)2$6kC- z`F_$ULfQhh2iT^4&tU(+O})KEf86CDfH>YPjt)3;=B#(|!Uc1FJI{YFW1D|}a&3LQ zBJF^K$J?5A!Q8YogDG2DsI6Y{@cqhByh_ zr;BJ0xF8+$f5Z23I{|5zJC66UP{TfOH@<40!0{PJ2L}3w*IU!hJeiDuo9Rs}$6QGt zsWUm;a$4&AI{N&@sZ;aw3zrK$J==b~A64#fHg`7+2qqqRoba=${5p;xh6 z+YeuO(YyQJ`@C0QeH}aT)xC@7PT|;$Gv59qH+whUaHIF+lTR80fhogF}Pf7><(}!Z9;1yl}$% z>es&Nz46McrhW0SkxXxYuQ!bTG65;IoH9-@W(TJMrLy5A5H!Z{G&v!>w8lcWS=yyVNnZEj?TLjUnXs3g$SwVU*K{d8Pv&c>ntk@7c3wfbXJS*AD@-N%h&exs`9=n2hgW zM-uc6OX%ONvF^Hlxw^I~@0RgaJE*en61>BC7|#^;?j7Ir^B@2CyU=IpLt6)syNf``fgzS5Ew&{hBN|xpaV^P zhUd6K3&;>}=tVOnh@eig$)HL-uUUZn(-MqsYJVc z35y%#p{X8`i*iMmxULN8yqHhdFEsZV>Xj95y!W#AJD=W%#*Sx+yAnpF^(RPO6k42( z-l&{fIdgR2x2eB<^7Sbkk#Y9o#dGr*%&j?#gWKjyk&RgR6m~Xv^i4p3{kXA-{wWwjoSi%{I@dqYAAT9Pod*o;+*yl<1`fT|wY7tIuEQ8u44O6@?LgQRnC77igC-oaQ(nV1bSvJ< z>I%MWSTSF1aWM=FYvC7=h;If_?c{BH#O1&X?K=MOOyfKzXK4Vzn*&we_#_NBt@yi* zOxW2#JPr&QKL@LJ9FMV3tyNEB@!=8{%$5@D*ef&9mVfxlPXU@!^P*$)wTMLaLg6$<)=kckx zYne>@i|wWfI_ZmuQ3ST~FYqV>gt0!|f1tm=?;v&uiS7SF&RZ>)O&dTXIUc96yj+42 z-HK@^$mfl8(3W7*t?Eyh|9ORT1Y4=Eg4fCzMF1i$Oc(JS z#hY)wc@*RQeYf6n%Lwut+s;P8sVNGBTXQ$EkI` z#%S+MduqSS^apK^NuFgdyg4chKDfolP@rR+7KB3?(j*Qwm`Op_6>Qkqq+uNpG($FQ z`sndp-=S`j;08Rp3|kKU5{c)t39{rh{dOHBFS{M&!~Ctv;R zzkU_+G|rQ)7$x0ST_ztFH;P9ZFNu@Z@5)7mN#kYf_9^RslX%VIu4{?*HPam(D|ZJX4ty!ZeInTr3sOot~b&d~SaK;=<}M`UUajZlgM-w1@!K25bF; z#f6D|gHwlY-g6NX9;^6Lx`G8l)1l!+M~kYrOf=SWTp$eUyWAS;IU3}!&ch^7-$U5S z_1=5$-G_5j`_XY?uhVpNx6A`<;f%D36+6)QN@V%O3ol&y?$b|Sz|ILPJR*bTtvlEm zf)i|97~Dz|ZSDRPQU>vbc=yWk@(A!dhy|TV6uVxw^QKww2QFwE)*C|(N@Cka$&}ru zG|<4XbV<7>B4HPKJ-PL6vrBWsRI-8ABt6DqUN^*xpxH7}@kp~Smd6dx6Qt$8+Vv6! zqgN2+9O}5a{=q>rDYD(mnACB6{=lEZ&I93B>D(;>lXN+J3D}R_A`Tosc5EN(K44;@ zr{2v%0KZFpeqmt+MqihH_`@Hbo0*$i#xZC#gjhF*2-YO2-*W3cUk3Qv%J8)h9gTCu3VkDbai(261GI%k>mZi za)&Pmd)|HDeG?DhID?}{j?h4J%al7BAkWOsd4Kg+U-I5K`Ifi;z+rFl;1O(=(BmCG zIPP6K^A>iFc-6c8_;K&%ordc5!3fW|F2r9!dPz670>5-MhGK&Q{n+(k6g%gPU?-x}-s6uyZVV$<7MDHL zhu+ZWh%qeVE)jkG1Kz8zoy4w1SG>J@#x5K@bnpf2uC|J~sx4&@L70GtF^WJL1 zo_Xfd)6YITg?X0})>~F-@Vec{{H-9i+s0e1V8l3lcR4=e&GiY)8TCH$p+}CPzp@`Y zCwJkan>r1#`Toky^2Uo{`u&^JQ9hkI=?!`0*m9xYH;SOHKqa+8lzOO*`u&e!C}VU6 z9$$od@eHB7NoYMS6UWb!5ixNM5r3@aFz9ob=UX?12n<1JAAy}BxKjrHz4+n_m;U2l z{l{1Eq0ute54d*K%I*+I%gBSBHE$Lzw%4J^!wO( z@iOAjIImL%5qAE>@4C#U(31RFc&;qNa@lDKP240NWt#CtPn6qE+$epKG^_MR@;gmz zHN7e5;tNe&;w=6wE@io`+vpd*_{G09IyQFerAwEp=s?K}NxdkB z$p#U=NaGF?s5~VfMuqh!q+5%G{7T9HdK!~+m>|k8)dzcL3-?T5w}{Dd;lQxJV?-F$ zQkT`s_o5SevZk9LPpiDOdGF)*uXumw!;{|P3Xc%7F3Ga(TI@(KAJLX~9~nIUFPB%U zbF(w0H(q^Z>ctnHpITmASjocxf@d$u!r)Gslyh;CPKP<)7M%`E5EbTU7W=2pFYKMZ zyg0tRP#(fKYRi2=;y%ZA3}aHHQtZo@_U<2?I&fqZ$72kXur;PJgy6z77iv)MSc13x zg>uGc2#q3G*HvJQQ|3+)a8VED4<0-?h>4QPJMOpx^E_kyc=m<~I=?gOLxB!f1197} z(L~7Q2|cabOh5IwX~gB%rpLvjuBbFA@5YbQK{_uxUyO_GF{|@)bE~k{zw*p8&s@B8 z`SMa8lOgzmvxW&fgJf6ZbT4031~fv+}4LEVP|)?Qd%_W>vK70LR` zM_*9p#LJOPLpc-%L@lqMT9dzNbcu|(b|N7yD(#5Oh`hKBx}d|fo$m8l&tR(zbqL>P z8dZEbF*dBPpdPr2n&1K!yyp7`2FwD)PB8eACue)gx(?4OJ4J|Vj?NIH2*~G-96B^| z=bd*>-h9g~6GH<7MZBktm6|A3w=D$ld(_aMFXOAEE6@M%hvzR|x-<`kH7tJDXyj_w zbK+-$yJfO&H%`#;J>}SoH`)Qy2Vq}?U+<%Dg6gSf9Dn%r^bp!W{gSnK`1*I(?QEWa=XwjTO*W``i`KIhHhI3*snhj~PAdV0nfLZC0<74SOe z3;wPU=zDnG7~aw#0%Z?*he5>1us1R?>P;cu<6r-}ck<1X-onhBIc{itaso#VjeC6q zL*C0U1i5_qiiaJI@Re-t%^PpJ;Uqtv;DEojK{iQfPjSq@#(DLvSXW8rH`CpXWkWV_0DmvhB< zcMIIv6=Sl&M;>|f)_33c?r~!j(bHp&vy8J{XLL4M8xeX8aI5 z_10U{|Nbxj{AJ*@(2u@A4|ZGS94_WF>sgM=h-m|Y9GYy0e_UBN918NOq-_y5VD|U* ze^XJaYzjgA}=?mx2Ei5lDu3}JD;ld!djORj) zJ7FHCv4cE8r=yGKo^yv1ezjCySuNm*?VjnW#gW;o%cBc(D23?ta_#Xvm|V~D;x-}SDs8;>3xIdJeGK8_jTWC_b0`c;0>lg^}s<;RPolP^4x zwO#6Q`B5}G4*hoeQSm7wbX(S@)9+qMvM!HtB@Oy*en7{3VyzDA+tqXD&(FX1+G{g! zU~*)Bc6Jp7((FRQGRL}(7R5BgVcEmI;}->49@+k~-ouw9++GuHt2c&8JANTNgwoav zNDF4<5e#aGaoC;3-9!ft>gG(vs?xBo%HYgBQ#hCf>){GHN%*8-~RnWcN{-HapdsfG3<~t zfPrkmeup=w;OuyFMdEw@;nA{MzfUUzwhnS;B8p0p?gp@XythG8oi%X7QEC zFudat3LbE`PS6GKX1Fyg4Ks~#1o|N~5Jvx`2W4dxlQulgYoxEYh}~TH$`ZJkN^rLn zn#|AX&nB{6KwG;4J_lX)dBbu?17Y7V zqGxbmU}R)u5M{4_xWBKrAN3Iz6ypnB&@Vl@`%Zp2k^Rsgc)7Xt<0b|)!^m%v9ct5G!p&aIW`}=#2 z-FoW?c3l`fa^%SHuZ@_?Kjn*n_Tr9?oV~*ff zs&uP3%8f_i`ErcM#Sqq8z%RVfkAN;1K~N8Nlf|5gIZ|&0N9w`Y#^_}{;)ZwEKj#}p z5Cs@S^x%k$ZtMNa z0{XuzpqC**BZxJ~Rp4@0h#hMTVV4IyJLj74v0=FzeUNUvYkha#amNU5)^|hLp`{o7 z4%j7{G6!eloDlT|d|UOd@CRk9;aM$=!1i~8z}m^m=`&~MfAr%YPrvc{>kDXWS5YsO zX$*n(*37FnDA{F!-8$ZCY3*TM5v%XP8Z|}f|KKSs>+}&z)Y$S(|2OD;Zu+w3g zT))|EKotq#+wWC^9wj8gU4)}V+OCKF@(vGW9&d0 zFXY>QSaE%_c~aE5-I(*Lqn>!~AOE9&^cAocaIy(oh~kmPOVUm9H{-c{ zhI!e#eaiaZB%Vm6kr7$jZ8e^)BbDE@o~a}|C)7%sY2qZwMDfzlY#G~6H0*FQzwpJi z;|opPB%a9FE<5Rizx=De`rb!B{Neu+TZ!di-OY}p$WWhuWi*OF1-wy*=(6;4@|IV2FL|H+#ISe#Xunsk;9F8ZDHFkxY)Hv8P1YYXaK%zgt&T%5FtV+zm1}5Ft1By| zwYj<3l`EGoEnU8JVQF^y>dM0W!U~4EW@{l%$nmQ|4lKDih{0O;h5l9@Xxd1&<0obq z?RTxA?6LEKJI}3zIaya;tK^p#S9+HgSNoRcSNoS1%7d$=wO&A5s8s3&0G%^8iV(KH zHLW%J04zpP1)`m7Zq2y_lwMCvGcO?Br4b>%8DLyG0n|2&wx}?*W%QwwLdn zn3(80c;LVQT?}H;=j$tA;U1f~bYtzlki(6&R*qxWuc!=yYdXYHyz50{o_MjNp5+SU z;nZo|#rQZ1v|<(kS=Yf|#m)y6oW;9>FG5NeE?ii|MB56!isPh+u^t9)etkz5bsy_H z+`Dp7PzGLXXK5UP1)Fa8djVu0z~zEOFEFNY1b35S1Dl8CHGe%Z5c7Y?=teNhPrKD+ zgM!LIjw!TkW9i|JS{%rf(FIw-wtXc4Qo;*bLR-25gB#R=fz|pBHH5H#IJ=IcA7#fZ zyqa=`vu){`J1~p@ziW7KusAU}IdH?#qhoYOu*ECBropS(W9m7SLDRO{>8PLGmYOMp znCPtF-DRD(Jay&D;@PujXD?&-n?)Q2gfdy9Aq4wz0F!l`7=0NU>tWV?#FH|+3D?~` zLC1HHzcu?I9DA9Yh7s(Czzt}5*8ONNdocku%v~dTdy55Be=wxSU@M0+4N-vD9vEwh zpiP$sVW*cR^Rfi}7fvt&Q}jkS`l@kITgHqSPDop=V9{^^D9r=gRa9hb8^UoHkFGJ} zFZ4zDZUXBa{VqzmL-`6ngkX6y<&NbLezdB2;DX}TgSG0u0T|{CVDh)OySvbhl9u;7 zy{xWS>ZIreg)gQb683>97W`&XJ`IlpZnyReWW%_OU<$X)03b|VlC=08{f6(-))QaX zA@Rv`<=69#(IxuxENhTqu5t176|8xK2xqNQUBei5WqGBvw6wgk1cQhbj4@V#R#@(K z+ju`sxdWDYjI)Z96BE7IwQqnozu+Gj80bd%V_$@0uN*uqbS!`PDf}OwE-v|1+j9B4 z!kE!}@~Q86=g&_WgNA*R6Tgb1a)E zX)u`JJe8lKr0Zkg8$58~0)qwgFAC;(jNZOp5AQPa+H3NPy3s6j!0-u%4ny9>ix<3C zUwIWq68+dYV#w?5?KkQ#UAYWniD?`gQou1Hudgl5&%Sm1__5RYUDnV?Gz*RREhGz# z0Bn&EFl8T>h7tTKzW@LWC_Dv}m~JfObdQXV7AMBXIp!~7>|ca&L=VUNs04EuN1%x{ zZERTPSoWaHlsRI~o8c|;xShxb9>>>a4es@%fAkzv=g)4XNSiQI7Ykn7c0HOZ?TV z80+JBj8!a7!_I$&ANQ>xB6otQps>*pBHR@M{w-Z*Isu~S0A%dv(J(!~0>cQnoIEPf z7y?_j_u=TEek{=S?L~bzJUonV<9htM4!f5G7b`rf3tiE@LtVf8t(Q5LJu|P4d88WZ zRPHufzB)aZ?c0Jez*cXZ}>rC9HlZd{7A7^986x8$4r53fA_x6GIY`g&O(y(w4LA5h(IDH@FMSyMQG(}!GJ3}zX$bt-AE%tHwZ%`pmaCVHH35{B`sY7D$+~!$v`4G;76J3W>E`rV(HSLncI8kzEq4F>T!oK) zB*pc{L3^AwE0t_mis!MZ8<3%Vatk5es3l-h(bDjS&Ck4Qrb8|*nqxC05Rcs$uMV-F zv%F>YBT)9V(LZ;(tcaN&GrB{+TXr-HwZV!J!usCe8s&OCW2R z)skstuPTa`n*8)Yw9d^d@$Ea3<|5y?p$F|44+&3rF~m?p@KN@U-#j(C(Nrkxe$4h- zkom9tF49TnqP|gS>FX23CuAdpYg^P_hZ@&hS+yj;IM!{5pJ}^1N*P1di*e50 z^~+XThRneP?A5eSNza{;ou94bFP#YUhuIe64+Ih-q!TtVAMHHHwn1%dI%Zbn3NZ$e z@K3prteYXD7&XJcbenoKG=1pxtN*YDms9!yR4 zYiaucj+Arpc(1+QQJW$wj4|;t=;3q32?>{TU^J1ydK434uA-`TnYq23SLi2)1JXh; z5;kS*H#$d<-_*;`t}@6yMuL7`M%`Ea?H}gsL)<}wgo7E+w3_UmhrlCR$p;D02a7n& z<~r=Jb1{{-`NM_+$StCTVap}$tINyA{6v_ph<87mlT1hpjt#s~;iDp=L_9yb$Xg=x zIztXw7&kRX-={amTHwLQ5ktg;k`&gPYp50p@WcW7<_zPhM?z+=%(i{JsK(IGCK+rl8}<+rx8 z7WpySNL(d$#0ZDHG4Ksu6E3Y^AL77fc|XkKJv?SlTED@}Xg0bIne?2uzT1P+b{wH0 z;U!(k6U9qzxB{y*jvg7IF*mO648VGq{<(bYOv3fit7XZCPE;^AqPN2X)s@k9H|K-5 zc+mnxVa3^E-T2oB<=$G`Fko~J?@N_spdg_SFY8; zL74o80*(Bsqa_rlnxc@vNQLA3X*#%{%4~mHtbd3i9`Gse$Moo3Y07fPHlD2UQw_}3IUVI= zS^4LfN>yYi#2NLhU1e#u9VZU;A8%pxlmT#)0PTQ46kCpc-GOR77dkVu3&}}$uD*V= zG8_XDpI<0K(P>KGArC3suC>+cJWS>TR3s#5P>2>p!>OK3JDUeSbG6gQFQe6${Qf!= zsnN#!Xe{`dYj;Zv%TJ_zm!{I~LIDyX<(Z=t8`e4VqQ=qhW=&+Eubpj!K3^Z1Wp?CA zhyQLq$P33=*&Gu!qocDUQ)(Ky%(+t%9XOx+xZd>jwR{~m?Mo^W5PVmF*47#+?)I>U z5Zpt9TSJXa$8>|y10zH)8?&Kl^NhAJ5*sR}u1$lmm?`fZPflLP`5~_75*@QMr50<# z{7}WeEU5S3{otJ^O?>No1L5{JVTPMPKGANEZ7tnoEnQ3;_}^U>w==I;iqcBdY(K~5 zci>4MQax^J2Ad2VCWu_*^|Z=2TRM~R@`j~v*(W*hxQT)~H7At*09&bHmV>i?QjXyT z*E%-x#~rQ)(6$Ts#_W9oz=(u`OgOe(-NMf#kaN9f@Zd+a`V&zybNy^GC@pw%1?5pv zxoV~>vZyw_IRqzb)k!@z2Gs@uEAM-^!z9sov=U=27krr|vKyVtizl@)3^}bCl{XN24iavqRA*+}gh$?3A9?I{%syb!O_~-nd9AdO zlCGtEAX^RFLKoS7%!!kMFl>kS{TdB+u}bDm=sdO@05P#Sb>bF82I(-H8#*2QtO{%Y z)SeCRY2n_~Er;zM%f2Lq`0+ar#Yq%hk4w$2IK13PB&nZw@t#p^eckZ9f{(B%83%E& zWpotBF6wU_T@-LMMIXCcQ81p7>&u#G=QqB7KkD($){rZSR1A0Uy%$Fc&F8^QCbdBV zOUmHO7|+?WjAxuGSyqS?a#+Zj{_^iEik}{^&cbHUPp7VUAx^i#Vd)#|ZP7>7naHmv zV@$p?%kNJgzvFy-XKTvE$9I1Bn5bzi+2h-aD7-%E;2AdEnlJVx-EMfrft*+HjKj{` zuBQZBm?v3gcbdOMTcWsP&93lH#X->{9=1*K+WWLUdOz>JJvOYqEl(0n5xgWDG@3;( z>RHshb3Ah)KK(T0^WYk+z+oEWGlKXP`TgyA?1?}(G7(b~(YncK1=qn4JDbQgAqr$#eT1AYz^y>vkBF7LIzqDC^tM}^} z=!B|Cr8U)pbX*tE*jlgO{GzgQ+2sJ@RX;qFmRE2GJX4fF86VuHf;0mf>j&*HZl@E|nu&yJ=P!N`%hZ1kau7XLsc-KL!)!8CPQ z=a{Q9YW;Qi08SFqvjYw}^x!QYJ)56PhP`?= z@o$n~O_8+%BAS$8#$F_W&c!vWd%ccSts6ii3((zxMP`dL{yz4m;Y=aj;=}e~xEM&- zbhqdHA^(h^PwQy3ejl-*I1cT5iY|r`t=%00og7tPMw#tY0a?M%VQsClsR!w;NFzBs zrb_3cPCwPo2Buh}%9~F+E;N9f#7Jf3SvU1wnXp;M{JXeiN zWf>Q({W%f=F!zSEGBiNOU+A&e72&lRA`ZQPEeEveCiXt5agOV3pt@5GMlEeE3~gSFP)<8zRb^I+ zNs}fYTPA<6XrYT)74l?wyl12yJ3mvy%WEyzf7?{ymvD=_!-Y^LvH#4yFE!8Lo@Jx8 zC&X^2F~?E)t8;2}+G1olHUfWU1lF16J^ULy>1*fMjVE>WcBfl{X>+-}VaI zMAOt)qd=*+!O+g@yktkLz;1NHkuH9r(N?o1l}p?A8$p<@wH)nz$ik`K0t0Qr?%UvF z@9Ev^m!Zmwzm9x=#TP(+;1HJ#4pNE_2)$jOJf18(Ihmz=ixyQGCE#F&D$H=G_|jEH zV8JQ8fA1$hQ)b)10)irXFy&$01y{5<&IN){Wqd4-D!MH_h+O4YDe+DgywjBc?d0VP zT2CQlX>(-CeoH4L6SM2(YTuS&eqK(3NHgA)-eubD)g^2P?eoJ5HV8Q+K1>)aYc*Tb z)P(e&FI%lwuQa$UcUZl{{+AJw`9{$?UG}ww9p&<{h;vQ*-!08adQ>3uB%l}U?^2YSyi$^ z9R@S)j6*qet7`fSq;I^uZ1y@rPk0<#&(`6e6;mx0XOGFzsNA{JU=JQ}XUM;heD!)4 zORf9FnO~DKP``KBxrn=2vj@)y)MRL^UG_d!NYc7?P{`cJry1S1<|ig+^WoYC<=fqi zdt^PR(lojB6BPMvGDDtYiqq-`-f*x8FiZE3{s8di6grRuxg+C2@E1_sRFeP%qL zy0`JV-DC9|$%;T53C-a5q^d-gFd@6>fOknMpXe|W*9~_e;VyhUu?~ZF?&9c0(+q^J zCP1*lSM7?zYQG@s)`Y`Yy3uTDm{y;NG8YiF1PyiIl64F)dKVw}y!Q4M&mRi<8bRwQ z*M86`aI6<8(m`GAnB93DoP(|vCPeS56kKIGY2rDmDoS8v%@~KJom!I7$aap#c^2l3 zT$WOe&BcqiTgA{SA2KM=BS#y-CSI9FeN-$5n%wUT_zcf%jKu{_`uC79VPv?lz+dYh z*N70Het!};1j*G|4D*gnd+*Keraas>&wi$xV$|{FVW%JEs^X%R{&o=d;WKHlcUOo863zDI6`$NP~bH@H+hzsvRZ`>f^w z-3{3a@mdO&)59Gcx-SlChcdC&m3lE9Eu7K4q}tibFSeKalO@4XX7CPtB6l%4i3 z9js7drzBLUbK9ysKh%oLNRkdYwvf9?#P~I;TV}9MDaoN{2rA?j>#El-Aoe^^Sl+3n zLf?=l47YInOI>r->d-K!_XN+$uib^r@N$|JQ%F=d!{+v}tSscaFFH;;iD{LPh`>u7 zcJ|~{BFof`4J+bxOG~0LGJV+#L-;UbpH@~BwSZ7*ST~g`n4-3jUp7a$kP`K)iEqz& z3jdO0BZ`s!i8R9hnw0h$l{1>0pPP^c_eq4lTrpqm8Pd||!$r;XwC{O-Oa^G7z2I)D zh>O^}ko60R_g_gVuf9q8DH{=!khJ7UBVU5nd_ym_@L!^o5hDY25?rrywOJ|&s$5Lj zFw0&Ha<9bVKoo4cm#9SNR03RXo!I=b3*I}GmBHxexL9#mozM#O+E|f}fn5TdZ4J%T zuiPoB4>`l>x*F|KoUowsmT$qa}_`W~q+xO=@+%E`7y*t9=DhRKO&W%c?G zkBlS_=Ln0t-d@jbv1)NnXdAOzUzLbthe4WMwIZB6m}^i~j06a*ZOCXpMB0avjbKN$ zpb5%M7+sE+;K7_p{g|Sb5ve-~+v5vPNlJf`ia!+;c!H0@ zEHu$G$+oA?z2O$R+Sr&LMt8-fZ1#<5R3&|AwYDSf9c(U?ptVrDUP2hg%Gft-20L#B z{|T_hc7uZ{pO{*jgmh(|`m$H8Hg+6=Ryu7ihQ1Ywxr<6wphqUf*kP!}hg4<4xy4Nd z$P)(y;$wr!w^iH~wK!U*A^eIRUYuQqhpV{6-=~Rnq)FrLoo3*mKH+D^Da|0_mW5tS zriTxv!%(&BC>Ne#VsK!ThPVfDP`o*RJ4oW-PoI^t$N+Eg@bMn6!A)o(uZPESf7@k% z6~k`Kea4;Yq#6=khQ;ttg2f1kB|1v01&J+d>(R4BYHk*_nMneC{PUXXaGNAgO*SH0 zLc7&RINk$aR~N#L)N5AI!LZO#hsH zmLFsWuCO*~VJt-I0%1{W4we``f*2hlFe%$5r6bgBPO zjBnbk;2aqBZFpZrPLnjH43#wgEHB2UXUR>@&r@ZtJH^z!RzZb_dqP)eru32z74$=W z6R*&4slwHFFQeWNwu44JDt+VI*fDgwPpq^f!eV)R8VF*LCi7eLMSj z4Ez0kT}v1UI5X%8dtJA5I%@5B{GW(NGKx4~m_;r@w>CKNgYO2#ufu^B=)7>T=o6F^ z0X{R{iWgSRF*EMZ-_3r&*Zm5yJD_49k?z!^^R#;}QAjyBPu<*&VF#|&P5}$Q3!oiE zMy|4+m6|jlmDy=AxTxNdc6^Ak(8xw2Q2x7m8k=I;W`4P$OoK=|7(;%^AR1_GuA5(+ zOG~>8BUz4`YhBpWHuv@WO)(7eFCMhLGduA!VShU|`z9@_r%+>Z=k@-FvIZLzNpbz* zA<_bjkOpR2AC9nPFINF0kvP;i5h4li%PVy6x85duFArE&6-mCbuQiP^F&nq%JxD`_ zhV*snvTEsc<`4V?jqLLEU~%OhzQ@^^3E~v2%*Frl-E|{F9|vOD)|UTrlTTQIdXa@l zh(*A(AV_Qxbo?qX=8`3LQ#()%b(bnd)0j&wZ0zCYdeS_LL5kiluoG7p-UZMIEhX*| zL2a;xc>6|&>9O}SWI!erqIjc6npS>HX`Gc;sMf^|t|5-pfnpEhX1H#UM`wwdp}+6z z5ogZmk&%%{e&kKB$tfwfDJVhvTRS@ip(yEYDs^C$h7UwkC2~rH{$1AjW21q>a)(A0 zi73YwYn$V_i5$nB28CZ{kxbo9O#D#yA7h!Pl+VSRdGe!?3Vv zE6I{-LcViRB^5u zKEFq}u_3*98Kx$is(FEV`k0+x!VxyyzzZj=eXsw3y-!6BX&LwP}-%)^7x%U;SB=}B=fys?;lN=NTwB1mBJC0Fn$=Z@59edgSQ{_`r-Fk3glYs+8Z=^A=n;_ubufF~ z1wP#?C+COquXbvD+A7JXl8;%S`y5*Di&=;y4pVK(l38Mxx>bJJzSib+vLde*j@?Q` z>A`)uV2mM|y!j_8adhdP+*_G!Zee7O}|#q>S+A(Ub#)$?(U}5N2sVYz5m*6GTsJ zApS@0phIlx2A&tQRK{1F!cy*SctI5m94X;wI7wJ#%pe^a(RLE#+$r>{s}opaBC4?~ zWe=Xe-)dK6bwo>0lY(eHy{e9ZaM>QQDBsX|?~y&}4As+Nse-Ti&`YW6MN1z&zJVo& zYv!y<@X7NYU>s%40dS;s|I3k5$) zhU^8k1zyRe;aiAQ-gsp}nt6vOqVFtwA62i-Eau>6NodQUs_Jt`Y4Nme;K91G+kNQc-1 zFyaQOHS4!WP>{nWmn`1+dFSysf3y=8H8Ybe-ef3Ob;|bRm?wM+{HG>-RYSp!?;|H> zBsNZD^&ceprd@XZ`YtL>M+bDD_+6weUG7@7J|06|uvmy@a)#+gbPc>XvP<71zTso< zKRC|s(6LTR9vqGuwFA6JO3ZN`nYe-#+fcJW<-(9jO@?JULjL*vq#T3Ypyd&N;!{7K z)Yc~!^@=al;~ut#)gI(W;gsA(8vAOmjC z3LC`wq!E2(G!=>J>cq$(_SLJKlD{lU1qJ@-(e(P=85j{fJbq7{$dTRgF>+DhI1#Wg!Zyk`;=ov;|5-Ap|Aq3VcF)k+ zYhfb*0ea3#YkO5-%_shMH>WVJn8l4Ff$GQcz6iUd`M)&E3)d8tFK{dpoUvv7kDdLn z>y#w^j)+**y!#tGgb1F{V?Y~r7YC37#gPm9UFTg~Tr9laB?x>M&!D&Z(g-${uZEKR zAyB)Z_R~wdpU+^BtzG8QDW4ipc|n?%#eeMV-;Xv931BOr?Qvh@KHbX<_?&Bk^l&7q zq0q@M#?`a_he-Mnx+_#0>yd@s1s>p-0uHzpf>1Hl>zM=QxwgV-LXIY=ky)u)sG=x) zg2mN(aMZx@TKDM%u+zqG>2hJEwpUkkH%K<~g;dnO4?yy{4~>6%l0XnUJ}vXhR>K9; z55~r?_JrnrAJ5r~-+U~@} zo}TsRm$v1iH>!Ro{8Z?Ulpa49X*ya6S0k3((=ta_uZIxPy{sz3a8eV97!VXSLP2~6 zz?ZbCYfvdj!Yx|%(vCf~y>~95P0?8VKbT#~t>sb3LF09vKB&_&H6mR6IG#-WreF1z z9EU^*EGlXcYVsl!|79aRPH;>rNCv!$AHp}kY*Kv&5lbR?`j;E{`=AHfM+B&h+ILbZ zSAYHMIKBrVy*25IeFEt%E^slIz4oDck|u-0;#ON#i%q|KYL4Gk^x5b?lH0hK+|X4_ zXZJ-2{la+*O*CIC=Z6Egz5!ZS>)Jr8E%Dlgimk-f@^VC1n7O1Sm z*V&XJ76tx7KB`VOH27|n>8iOk=?V#jK)j401j2)lj((cB(++`!63kcc=f+MN>~%Aj zQlb)VWQkkq)r1N>zs@x}J&UGg zCjS;eC8MXcupFf<9vq7nsz+0ib<*F@6Xv^E@BAsU`J(vmIbOD(*&6fBaj!&j}O?zdCE$>OM*W*(uNU3kPrK) zixoGHFH@a}aq%pg#@pN5WtJlUt&@|}UigUkUC!OshS={XZq6PNybGo#rW>!X%Ldu% z!H?#f!G6MqAg_VGp;@#8Rn~FpmV-RQ zms4SY?#h979-H|ddG!@B@dfU6^##mBz1fCJ{%4rC9huRRtuFlnHUdub{Q+77*UL%sMbwP$ir18ow1;;7$OGM=>-PVd4mwj0ZJTcky zY0QS8bXK!);k~$VCa`m4Gr~T#>BXu4@kEZ_3@_Z(0gSmB&G4#LB=^zPmUi%b1@bf3U^Ml|Ix|3LPU5#{sLh5+C(b!^j?l|kTsqv2+gfoongy-KC#Ye`@$?YX&%a(HIAyAJ# zU{Fwdung6Buda=c7pwuklS$;y{xyHC5jmDBh{zieJD*iu0;V#=U+d~_w>%d$c$TbC zHKYiMrbUc8%VIja^*D1}U67|x{m5l~-tylD;s0$O{`*s|FNzdhi23W!L@oEr+M}0F zOX|UU=<6#8H1%$hk!W9y#rd7?jfkGlCXUtxWc1)oNz|?B=_hn^I`EM~okTkDk!uUBiOs$ruetO_}bs)Vr#kp=O?gDUfX*J7*{nA~NGjny>R z#q^G|j-f1z_p12EQW2tOSY9Q1*6IT_89NZj!urYBRXc?0`--FQDk0Tewa3Abz{6r& zD6}?+mCf#O_7Z`$qhoa_T>^#lJkQY8WB1=xRS? zb?f(MAa=*xXxe216U8_YiQvTVQj zY2)72Z;{tjC2x{pbrl&v;Q&m`Srw{fL#zN*)W~Usb;gNZ=C$13N&|4{Sz20}!Z#M- z)(>^v(?iW=Mx@cSB+vTgXd>&fmw_e!A|E3<6V?U)2@U>-CH}|O{BQJhmjeY9jh!y; zz23b?e4ycb`TR2^E50xyh&kjaHHk6i}3Cu?rs^^FmTvnL4-v*yVE_* zj>)=~a^@h6K{PcR06wHaoOU*h8CDP0M>E6NecYZ!<6@gUPZP_KpiA(bG|tEH-1RES&VN28hn*MF2=6wB zs5Z4jkK-8~c+v#?o-F=>6_j=>_Ec9RGwVwSWV->*joX=}>mhVt{I@0iWneTX8=F&c z#G69(N0@XXP@na@qwNa7WqPzp&%GEw#m|{A%3u!dX<4~y?z(x95TQftJw$Ft!)ydm-H4zEe!{c>hs4$lR-N6x}H+lH&EzEIIyDc#LxFDrq=^GRx@*> zqT=IX_?(N*^^kc10{m{XeQ_jqv-2 z_o*dV_R&yIyI(frEzWw0yuyIyKcUb6aczI1@Ovrn(T*C^SHv$qX3(dyW2owqPb>#N zpPZqd>B8&i)9XRizS<3oeoMoKc5bYDmC>fqq%J)Ne3ahbbyTp)F@!VkC+4a? zyKVtwl=eNi9`6wF5uf#Y!mq=?+rYqJ#i*!;hKmb@&#w}yU9>yw4aQpYES^XP*2q50 zN{Jd?KznntF^5-J9a1y0IQQyx#=rJ7ZD+E%CV6+47DZ;5Q#Lup77fvVd}%}8%1TGu zva!9F&DQnAh{(xq>+SW1Kgy?xU95Ja7Zvz3MRT|J7zdCtFH~g34w`*PWrb@jzq?l=m~0tTZC1gFkub=Zfo@6#yY1DZP{7_grgF;S-{f3R7RUN8 z-yHZ`A0QCQC57sKI1p=K;+R*b9%A!t;vJ$NIl+R2#u*k$CTIhn7~p-QiZf;V4Y&3B zc<`-Cj@X{b75Twvp7bvYkA=$FA6#?~ zH6qkP8KyhW9F5M(HFoI?8~i5#sbhwz9k&z_*j@axRBGvTtGH zh~OFOo-CSaC#F3tB&fBvu^BNuE`RRGpp`5(>R_Po5v2cp&!9?gG5FTLN420pt$<3Q zfS=`8(dan4o1?;brGnm&M!M&a`6@!qEj8td%3w8IXvMK8SQa03!I#SCbgWbS?kG;& z6R15c7;vP%HO7-Hh+w&%gGMcncw=MHU7K&8pTs9!m=*(Vh=`tSU>q&1J~1)z7rHp2 z9d);tP8Q$3cP<=cWiW$hP1N+fm<07|qv!5ej{ z^P2r)DU`rAopiT(PQ9x;`(HJ2`*3idhI~Q66x6WFLsBMC9abJc{#{ z78;)G(dj;8;Nf)-#p;JQ%ra;XS1~!SrPLdmP7Dq%apzCR!1H<}fPnN6 zy>sn46E1bZ{tN8a*1G$(hj9fu^WQKw-!|C#d;2>5C-t%o2&k=|d0?(=`Vd)npHCtm zMJCq(Mc2U1fq$_Jfi3$uGC_=|M8wQKB5{m_Hg(V|I5;>oFfh=^-{0Te-NNGXjQ^Lw zQA01~73C!7vSByiCNCZ=^au@5$w;4~!2+S?32qI|;1y=lanHGn(`PaM8AlVF)|2&= z3I%Tsyc2!(obzg@L<(bOfUBXFScYP(!eQ6f{V-3RO&trHCu6})cZoT-r;qW5lh4npVA)z=IQ5CG^12Uo;2MqO%wNzl%!Y4!>{DXHNRREf}bt^4iN#gOGeV z3;w~lfLh8Ul$xwPly_g~Sb<+x(H0%QYnz4`2b)L@uz9c<0>`LmerCoB3uuHLn_67_ z4qdsvNK_R+`GI@4hI{uiwvQRcZH+|}b+UTAm40!*{#>kbaHD?1C#NQGPwL=s;%NRt zjf=yACal3*h(M+8(_;Kbbygc*RT~&@ViaJdGRE}%0BbzwhinD#{#6eQ;Df%?)!!By zU46TX1LhmEe1n6pSd$g93~NWl&rI5c~?#m;&%5`zXMeKyTdK)q&gyg_xZ0W0Y8Gc;7ssF$txfs^MB^Jxx)Vc6|@7yvQ7UV4H+}Cty{gT2*{9Vd680`QP zxX#GN$ytkOWxyh}%S~{wU`PqzJcw1ZMJ|r-Zr-;3z9#30C|gdUdv0!GsQ=~7x?_*( zczjp&S)+@?Y_j_W*2%jB#rzDpM@J!?4w-%{y$z*3Q4=#nqBlWMy?*m|3o6;;J<17D zu)@M77x@*HLput!TV{~|djX*sT2BwyzCVJFO7IZ4zH!MHm~X0kdUbi;fkzvcMY~;Z z%gW07dY4+QWNJqQO1B6nk>yfn!X_WLFg4gtPBpsiisEdkS2;W}>j3!f<22qy+rRp0V+Z9zHO-i_SAzcIh5L##tc&Mz%?udDzMrtx1r~A~;B7CbhJ*O6qOlE_2QL z2s-ZzjyPE@}{Q-CjTXc<(jG=)H zHBq4VjoH%WbX{2fz#_WXVITp{(BnaauQ(RW$U1<@PJPOqe1HOIn^0i>cHcX|J${Y& z+)P_>ac{paNNj;y+5UtSO~m(J@qg*F(S#<76bdaiwv>Zyw#xQGE^8q^3K8j$x0$M{ zs#c};kCow0lAvBwr|^h3HeO!albv6e6CZ!q8pqVD6BTl0_$d z!=FWa-8%mUk@(UUeDF~76HEV3iv_{kfi-ZwM~(S z0P>~b{vnk%mFiy+_i`g`?%u9@sQ(OO8Qfv!_VjXjkEWtsE?3muzWY~n^NVdeQ;fh+ zrRqbKhZrOxYbFmQr7=JfYe1|`;ek3BTewxCHS!(cQ7CRX=l4Ikj3i_#TV2s|p1=$0 zHJc0~i*4BLz8*T{i5K{uwVHnxwr5qnWplIFqne?@BKWpaPsL*y z^c%;zk9cr6g*nB#@5ms;X_nVtU1$#)Z6=&y_6h>dM_wB0c4ak-A{LQ3^cl&-3=q(fv>L4pE4V)od8qc9x=;{F-?f<-_2ILqPQYXo10?=S3NyFjA0N6BuZ42 z4*Vnl>4l1ZpZB*nyjr1ZK;w|p#LN6)3dWaal0Wo&q$#B$9uPmJx~cDm%{a&g(0)Dm zVPVMisJi2;TDUJScVmT&z4%0J=eE}WMJ`i@j;tI*u=*TM!fMR#S$!+(Jj*P{R?Wz0 z@)7l!KEn2TRPr&=UL#&47~obWCAHq}Ai{OuJQ#qVtdW^vAcpcOJ9sO$SIbfcT~B}u z9e8+nQkT3ovOZIZ{9c&5A5!3vOP0k02P~`LHG6^4i0{_IX7q=HjDyDlh6cBbkHOCR zg8X(nPC#ON-zMlXarpTb7}I8l_!H^yJ20(6w(QbspAvft#~0TKrT2FqO#pDBemX_% z&9z!$2j9qf(~+Ga$UhyCA0CE(IssRPVVE(GEiEmbXyA%BA57~x+#^!I#^P62R@wst zS4@qJ{2eQ2XBHJ4Y=zRupHUp-g2%g#HAo=K6KX0%bVZtbf(x;kU#TdVpa2a-;4gVKK!Fl zjNiia-omU@U>C5WVAfgyDhaqgX%Ji8!YdPjea=LJekC?jU zSJmo#C)|``XYjPJ7&j9%>j8#v^wRKm$ow52ewwTo!=dxZX3@**CHn^Xtrq8-NI0ha;@kW-@`)NSWus7AW^ii=XSXlO=j3O{!FT!Ty(P5|{~&JuKgb1|i5WFSQj68TUc?YJma zFqjdweIAnw7&z#>Y7uZ+PV1NO2XguEIqPCg%<*7(F1kfnyPPyASVL@_ij zH&jPFpaJ=5-mU_F7L`puCtyg_$U5I&Q95{jVpY}Yd`sWJCK8|Qw%N#!O%TH9=Nzgs zQxs{~`0*q^TEEr^u{P&6?>HC{3oa|Ai}5KoFVkww8fe{C`?}=OJBDByVgkh$anTbjZvsQ9PE@@|3FXtX)c09^47Z%z(14d=mJ09+Er8A;^U;(stG>ioS2Krd*%Z2sYBH_Y~;|{bE}nxDrXa| zR{IasB8{uWq7EP28uY#LCXzi@ACF*TE8WOTho1qVqpk$lnE{e;~X_ z2_~Y1iA^U9dbYACjxCN6oF*S(yTM5O(9JryT{>dx=TSyzqWQ$}_yF&qBJ1^E3xNM; z0Xsc~D+9ck9tx_}Zt6#MtNHd!CrL6|33i%>Nj^YHB#|ML-uA>!95WKwQw~R-4mBZp zSa);%1-{T?Ju3^2MZu<8jlg%cQz%fXeRbb1_}`lP_aXdm1a_Hrbf4Ds)ipC{BBnqw zJ0I~;W(;=PP?bTdGH!oj*P3xapUs*90I7+gvO0ziEk0lF_#>?b$8uz*V|K!XKMzi2 z2{u0^b`#DjX1h!yFH$6)Bkg)T$Kl?eIe8Cf|MeihnV3dnnuh@=F4tXI2cs}Y!^_vWFz zIESwjZZ_O6c9$b4cTvU#VLY-y_4>nNGnm!H&l;$uE)+ZkZf6ZZaWMIx@YO;Lpmr4}I>a^ z$EcV(vnIPc*0-bb3*+O1$QZ~9HP$kKO;ssBgaKKj0jsa`7PG;>hE9#&QjczR!!*wd z@26gR2cnHV6L~)-R->P@Zn`c%@9^oqn^AtiwY6YjZcsz(vY7m>8a+R>7@m^=dcI; z-(a40C_fFXhe6^oKAB2H-az3eofQ@qnWbF)M+Q%h%qZ0a$RD0jdKPNB~*_Vm>Z;%t#hu7mw5=VsOnfd zSA9Hj$r&lW1V~?NGl7I%QDkN>iBiiE(lKul|4rlKM}Bdd9WX3UEaRA*!kEo&cBSLF z;PhlD*|}5AxoULPTrZC&)>j5TwGO$^izFG9d+PPSwC)o4vpN`V-f9g`eQjV} z{q8}Og>*oo=iJH0exIG(GS4xmlQAhUVzR5GxEZQ#U69{7^7xfhK}BYA7?k<O|9A3lHK7XSbN diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/5_Adaptive icon_image.png b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/5_Adaptive icon_image.png deleted file mode 100644 index e99523df8e6bf599c2328dca9b6cb424d1df288f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7263 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 ShzG_HprNX*Qmtei`TqbVF8(e6 diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/6_Adaptive icon_image.png b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/6_Adaptive icon_image.png deleted file mode 100644 index eacecb265d11325e6fc476cc0e51e1e6b99d7376..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 257482 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

    Dtt5#`?CM8+aP>FW+h1#d4ZG z=GA zB3#F*9;4b&Q*^Z(2J$K99vJs{%lHdAF{-x84R9MBbsD6na^0+aX=g3_q&|b%+wHsS zOSN>XX?peb#-x@d)te>~gi|TY^A=a3?=jQd9wdJK%;b^}6xSo#EA00zx ze|5abm+G$L$Bz#@`S|0<&YU@OLcXLA>J2!>X!J;v6HvBtiC2-Ea|<_b-hA+*H{ZN- z^S$@xHF&~!YnStm=})UtZqV(Kubtm(-_!I?xJ*X(oS1%eYU;$v@!|1_F}cB}cfQm> zKI(ak?vabixt}0{R-fa$zCQQh{@mi+%)<4zuiTZ-h9!wr*Wd^RdSru@%;$nIlIH~X zc8|(L^r?p*otijyY(i$Ehjc9NjJJjjI`cUnbtJQ@i)u?R5A>II53-=pX-U zrzk(D(4TXp-Q4%J8yF#1!4e!SoBnd5=1!JV&UMRgVB{K4J~W(dz1D8bB}&^}|9Z!r zOaOLIO-&7)IemKSRIia$;YeSD$hl6|RVs|iMD&?QA03nH-zoXg!^l8?zfMH&UIX(vt0Tp3GviLK zeYaLtR@U_T_xkngGncMhxi1rkD>|7iAGGODq;}nCYb|-t>9vO5XX>7Q z&3(x`G5_Qf=Z7CUb+XTlH4RA6Ab=~EFFW7(<~N-iH*QEEM3?i#lTSL+51n#Xagaw$ zXrPlLt0g#tgF|jGgP!`9Bq(BbX2wlVoH!|u)97=SR~Ma2@4o3gD8K6*KR4v`5B4}i zJ>yPpt>hF3s?OlVpliQfDL6fw!_GwEwDaE0JI?E`zwUhKLmzS;fBbP>{Xjp<-6Jfk zIXD+DUvU1_@BXfH3DBSnd(y8D0p-tYavm;Ue%uZsDqymWrm zwChi$Dp6gKzE_qe@3#pmCy}YHZf0L=rQp9dI>DATX}$JQz7Nzj>^k(fJ4GOU}6bpjPio>}~#_h+2)DVE0rG zUiF|l$KA3qhd-?L^+izaDa7Ux8%?bXfePPwHr-2Yx zFTHpC`jtBm&Cf26?gT*?aJyW|)JH(R^KTB156n)Vp1L)C_SijHJ!17JjW=^MPE*}v z6^H?OR@<~Jp>|w<86p?7U0%YXV!nL2VlA6Z&ZQ=+7iVtX$V}NN7`Z8jrT+H9^t^I! zTi$kzTxBM2?2OFlYb3E=?B2O~)2V#v|8-9N;M+zuvs9St&r2kc=M@!-+r2Nnk}p2- zwB9Lj%CG-bb?q;{T6JU@x(009U(5I2`ufDlw+BXRt3& zyOYz}!eQQ&zr0*PvfFY$JfC~$)T!YQz3{>#k3Rb7vHrfk9y#Ax{c8L$b85uC3HNQe zrdzvm_3Eu3zVXJbYuB#L>90DqE%~{Zo{$^SY{&RK$~Wk|2T9+T`W}^Ke+nlao*qAa z{>g{Or;bm`uTzWie$@#YwyX#UXqoihn7Mc7{>``FzJ25EEB7jLmrUKa`g$O%U9|OM z#+{6_?nlp_KQ?{l+(Ytlt?tLct zjMWQZ`8EE)2cCca;j{96Uw@G=*S|U$?K>MB>0wj%&g;073B;|r`T6Cma{c@I4}T~> z5Wb_o$~`jQy$nPda+=M_Y7jloKlj{2=N^0PlmtZ#$Rwg(-??>0moyy#9dGg$c0a7; zd{>c2jnB*Z?$!_9c;mJNh~?Z-q1rR*BhnxKl|)M=N~)&kUXv; zFF!WU$x0A?H*UT+Co4RjNpUY`W9-&>$4G#@=KlS9}qw>h4f{ZEW!i5XYtFON5 z214i~BlIJqR4O?V!0AXJr}Oaiw6xJ9PiWt8B#_t*X3%!^F%%jUA#FJF1PWQDVba-@ zfQfsBS*P4{MS>LG7C#$uPoN@`fW1!F%80X6z2|I~^f4LoBem6vGqQHtd8X$TXLG&k z_CY51otIyJ+0j%!zTBV)4cPelH@@!t#&7-4Zs0_<>MkHFZR@U;oUZOM31Ap>2D`hQ zk-jdcYv_cNADR~Vu(Pyq*I9h<7tV|CKk1B(o^wu}n38lzf;t8rSv|=OiqO>{UVH5| z=i+`?-%YQ0W`gx?^{j`5>A0tw!3e^d!i<5cl{ds@c^iAcu`O8UUu7eOCrp}~6 z?U*{7v|f9gHgO}QIze@QS(0*?u2&wEPbxF|Ce?#z@|x;ZQSZ}FKYi-I z{>5MXkL1D4CuHfdimnbJBg*Kh&HioYMz>rHgzEU~{AG3MeqiVqCnsN6JpSa#5&-%Ds70?@71H>&}ZK>&}06x=+3o z>go_)XJTCY?^<}>=?C53rg>wxlb8B^8g5}nBFS#;K0kZiRo}I$nvL+^x_j^5?3-`B zdHsza{pgN-fNtuCgZY5i>&qd`$=H>ps`6Lgx_SJ{geB!A8x{ALat&ztj+0;gmxCvM*gZM5Bp3Q+xgpV#Z^$|ZM<%9*PCxO~ z^wfz{Cra{+4B1@`MwG<7{dPY^+%I14XOezs?CR_f(rEy$_H^lfaP9;>czWo*r}cg9 z@>6yur=PX%FLPv$VRhyHt(&*rx%lSw#o3u9u`#eco(@mey{?np*P( zdHnqOQ}QKOfBA5v&v#8c(%bX0l=X#+7jJ&|JKwqXV0L!Jw0$J5@yyQp(xZBV&R{U_ zPfbruKQi&y)9-s^a_ab0vDBj&QZJ1)ITuL^TFqzf9UC_o_a`@93LhS zxZy+2Z9v9dRaT5xlzW>uUVHuZ_m&nHbvE%(fA=zE4J( z5iEK6PR7?S11aNFzwZiMxy84&Ex{0Ta<04f`VW3^TY}R!WGH6bTIaYsir=^7c*_%i ztGSc%DA136?BnO;Ghle;!AyB^X;B_Uznvc)85-MI-`HMWTVK`(uj=^Fpa^*cpKCWb z(BC^hKRbB!%9X-IvOMh!2MyFjzf9M zt-ET%%6i$kTkUf0bPqU7gOg509$!((=~$Fi8@A`2LT<$wEWG9n<-YF}s%2?s%aO$u z8_9`2X^^xrxE=KuMk zGdsWRKGI@k;f_-+uR1+)tvT6Kbe;uemN{9j^ zp0lyJr4s^i!|L(}Ps~t1$z94Hg5MsL7#9~j*w^3rcG>@ zr}C$QAv`yP;h+8d=eKXZ_S#)oxUE>oM=&8yeRFRfg(0XFVlXTrvNvO0&S1)lY?{Sj zV~zPhKhA|w1>ytDlRlpTep;rcT!7jupBM2gBYpBfo>f*y+6;3UUWK@b5T*I6^;E%` z+wF|w6-Eq5Bg-hOKoqC}&wrh76Px^cXfOY)aL9xfj z6H_`NDLf1!etfZCJ#S;CX6Gg67O&0^i;Rq>R5#ZZ_sYVX;}lR->gaHQFJK-?4{Qwf zba#ST-y?%i$p_W9uw6I;>2cT$M0viuE5Y$y@xpW<_~${e(MZYk(C{#ch>U`Y!dQuk zjgd%5-iJcI1SU~bmyiya__$f#;u`Gh>#3U_5}?+5R~+0fY7x$o__E5RIY!Fy02u4V!(O{=gr+b^< zC4Zse5h1z7E7I~;tjP}!#`U5p985mQAk>r&%J!@wfHwuuoRV=N9`m=C60RvRS)sw4>R7!U*MdOO z5}+TT(LiWXBs45sG2^0PUpFoRH=N?)VK+Av>0yeA>5W6jN3odJR94hfoH$b3-`k_K zrCqMyB*z@rhG?jTD_FTED?2Ygi)Jx&Uo5uI32Ux_}=X+UdL!{Nh+YZ{uGE^j^) z<~nMH$jZowx%S#?p(Q;x1?$OGtxHQV@Og8;rlzKO-~RpQs;a9yF#B>6zHB$InBFW| zFpaTg)24j*sThXX-cPJKOYjP=xGK4>gU2!k)6`A-%gU-@N~05N(Pca4rhCCx+J1{P z2Y=As5Ove_H>|XWhlMuO*Y`PKw$};G3uEJB0YNrfClH@41S#^eBm?b!jKFM9F;K3VTqJ|Vt3Yx-4!Zn_El0Cv_o3!yQHC^ zLG9m2HsPE|wr$%c&}@9c{)l7#^*8p*ub+Hb91!YtbybL~w?UGF#w9-3DPciSLmOn3 zzQAxf-X9^Y*cZk_YsI)LTADk-Hv>;`ZPb7irrBlvdp|5msi{iffzNafW-(w2NwtNS z=g_|@k0wB1eME4nTh^>ugXbQ0wY0YP!W2n=0L*f8+OrrJlW^@Cd^m)$-?gM9C5A&f zZ1D9r-#pgT+T6o^7k?bbnm?k)w0B&mPlBChJptd}3Da11T!tHed*8m@|Nd|P_6Ev= zz!s_`Rr6a z6?(^s&zIA1+V=&+w3+hF<)(sVI-LuLMVUeU@|mJgv6192@pBm5Xeo|e; z^x#H5aTtk4{6YZ6YlmFKZt}hqbP{ zCH~0U)hl{?2BPqs6DOm~`pNund}@kKKJ@-LdGF2`sjnN6PyJJ!v~@0sxd6W!6&W4c zy<%-vWnOW5bFdxSA}$jLsb2NDan1uVY1_7SYv#4sq=LY;gUIrHrkBa%&gn5o*g_Cb z8etc&fA{l}e~`4|JUcLbgWr9x1mAFrSa5iu7`?od=~hIv&;k*BnrB?Wb;pv@Y9nLg zhalNJwpjBjChvf-$f&U5wHpeP($iDHq_bhpb9bIYlzFbEKenrL11J zUh)cyprJYf8#nfo(O1+Mfj%5-uCF_P=15uP02Uxj0+&Tc>bZ`?fb$)s_ych(E@SJ~ ztpyR`;UQP2yQTj?VB2=E?BKzwx1lWpx02O5i}&K9Fw~Xgz)*P)pBHL2pShBro8KtE z&G_V$=(U@+u82!WiigaS7yau}HfcNC+vMpkJ~?~lv^2q-RUZT*C`d=42Ogd( z%|d!zKu1ojD;M_aba~#;vw`(4J6(LXbI_FVTmx8<@)3rDFMdN5nxh~E1?5uG(j~8` zSXQhlk@cIdm5i(`Fc1x4xyfyGNjuDFoIF%k*>t|P9d)X!go{NVOm55k$4u*jH8nFU zuB3F+3fT0GLf373^?&wA>FF|N&5uJ{E%8Yb^UvP}-3w)4 zsLN4zPWpcQZ5eNE7T9ocxq|KE!8>mah`jgDtkjt1g87c#U;o$m!0(>GHNpAYiY+$% zYaVwnNf?K{*NV8fxG40$*L*iWU40dc|2+UcV;AUg>ST<& z!q}LYD_#qv|D$7JAUUVEwYT@|-@m`A{OHj}2C z3!^N=(zWKwu9;&F>x~QhjlRR>GyX=x4^ zM_O)fuB=|YS{?i+B`3>)17-5WuYV~UOE<`EcibuInOPW86Vn;_st)LRuNrd7iGguB z+dqbjXG1bD0;2KwChp; zqp7J$nWwn(&O3R@N8wR4ts7%y5g#8Xn>KAyt$;AZXnR+8r*qsjPQ#Cu04sPL*ruVq+@o0nEfNxBw`8WJ zM|O6$x4f|XPe&=dg!}~&ir_i}6Ip?vKP?^Y?G=Cd;Db+~p*{EwWJT)roq1yC20Xs-b4|RXO}=riLmofsEL7%oi>rpAfoBO;D;Jq(Vmqt=(E#`&90MwY>_|4V08>X7B()p(ub4F<+*(l@z@oKA)tBUHOhe^PI6Six|eB z*cAs4teOW9uu&Uy`)#)su3Wh?6L#UIyq)CUKq-c-uem|zFU2EGRX5Y=e6`n~c5;g8 z?(UZQs%+*y~U@0ZbOC&FMh12*p*i!rBi&WlM*id|K@c|~M&Y&_$7h2!R+yQ@?7 zzPwvre&IQ(IC%ovAi4zV`)1X*SAi$@044b&VcT)dx>C7r*Uhr^`Wqz{Qt;Fmp`FEQ zb@g<1w4FS#?^I`7OPA-RXn$#3|0e;+gTJN~+wj!ve&Z52UW%f9ib#rlh#Bu2G z;i^|(f4vIKIftf&7h^uUR66!bV$iYA_4f&;k0mR=FlqI=O~sKhFx0BngNe7owfOXj zWAf}%PsrPE?v<9NM!`)b04&(DI8pg!8lsxpL@+S7-?&R|xaBrkyS^0KBWS5=vg_~b z=|6sG|EapOmCeYxEQHbZxC0GrEnZ!cfnPo}lPrsU7a7WAMAL>dHJ?y(3GFd+9cLct zU7oG;ya@}QVi@D5pJLEbNRsrGKaO?a5{k6e)=2(~PfBukt3Sp3gRurm$h+Pz;qUnX z^##kwvBT2;$oItAZmNS<6d~~%eAhhzkstaf?$C*hRGxNq{^Q>`=2K(ZV$#3naYv!d z($dm=2xW%Pb&uj-XJ3VyO%K4P`4D(am50j9FFQUHg&}rq+m^e2-MSnMyQ{*$vl$o* z4BOw|KlJwg{b!*qq8@Ym=yKnC>F#o`L6)0$?J8WeYE=&QT~liP(q*pti`N4%6EuQ- zSLNO}-#mvs7*qvJ@B@+m1SS|NAceUEH~<_4ORpwoO=`jCr|UewtN0f+J)htxWQqzkN0TuPR77)dOS zv`R)$fW%l`&=lbk3us){0W((uZBELkFhnZuE%$Z8oLfYc+;-b-ZW@>rqv0s*@vFz5 zm)D+nT#8*)5^L=T9qbZos9l1?Z4ww90ksIZQY%?9WC@g^j%I1>bxM~&KH453xv>$l zF|t;|hxW@*_72(p&W|V!d;Jg??&|DP?I5j8`kRjCGN`SUahN+tKNLzR;`R0CWpr$; z3+Hcxuo9%&X(g@BFbH<=I!LbvK(j<(W?EXvb1%MdpyB-a4ohI5M<9auK`&0)_XHP%(``@2N9?fRxvkqOCw@(z_X;a00!J5e|v<*o{mKJYdAvhKw zKBI{C+*uQex)g+B90v~UuK@8@jkYND?#rEFK0M+GJa(`u`^>TW!qE}O6=y5i4ua>_ zTchPOf0ZU#$w4yS=D=+rV~`y&2>9tu6jYa>n1zAUnR%f1ByD9%%P>_ui zhOe(+(c3lK3f;Hq6=4kfX2G}Ja!Vm@i)4XG>X}>BH$DSmP1I^Ia~bC8xHlZ(b)GJ( z{prg2D#Iyk1jMuhG^hg+647d2141j9!GZYMz(&P%C-y*N2GMwYwTtc0`3zIN8*S5_ zKXF{LfBmS~MkzEqj}CKR#6NvYY}vUo4prZS|NR?r{Liam&B~Lg|MNA)C?0y{CF%d^ z51fvEh*2+)gYnX_Z-*ovu_PsTLt1zgX0sP`M~v4NkdT^@P<&14ipZGQSZ>DX_=b2R zao^t8<@ZlME{FHOEmV1a)y;noP;Gk2`VH8u-m4D8?7y)ht)-61hZp|H#B$e-d#C{>;8H^UhXuW zza4X>G3eMY6o$wtTA8wD{ic$daiqrD!(@)AvfB0`{ZEo@~)J$MkgBRHY z@rg-t{mt)?_kQrhvSM|~1&8J^PcnSs;DJ*xp-~TpouUtx>o=*_1uO}HMXT0itX#XU z2r7T4KBNI4sgp^YQ*(ba-`MzKS6~X8VdfC#!2|_?V8&Vcp{cA33||U{Vvc}$m{#dP zytk)U<&&9B<}1r^&NLXTxN(MCXIS=>*_2qAO^Juul<1fknA3`ZIjvZvM=H}Q6qYpR z+KJ~R#fUz&%{{?H-m$qQapRp#*HvV6?|0~coD|YY^%Uw;^_VZ2hP5>ckemS zK91$O_cA{>*4DtC*IkzfA)ErNGd4}rn_;eom#zoM3j>`&Vf4z~ue?$TAt#h!tYnV8DT6)rGMc$j zw%`4L#KA-ewL$R5i*wWp0TUF8o~AGa=skhf1zhYLkmBNE@T9HKV$q0(Suo2xIw1g| zG+{;pf!+MOf7{4`Qfj=_GtNK7cEV{dxI{hg-6^yTR@3f1Fo6G93_SwlgtbJc;I?vmm4weUV zB-Ueo^zg&?VDnyt$#tx^uTOuNEIZ-mNf-hLYSylll8oN`9c!F6% zbVJMEAo7Q>hZ`as1!*v8*dYiJ3?Yb6NJE5z=#8>lCCm;##44!~fsz>sb!N!7BQFTB z-fd!>0uhu%ZhrfJB=?1MjS2@lcB11GVoEk|D+!H= zj3E=BFATCPFo#hizxmmJ${%s?HPGL8!8@79N4|>6-2;^V-*x+)@_~+%1iy##t!3x08~1KF~0Y&&mU zkP$$J1>-u68*#HELjngZ+yLVs4BE4>Ip-~KeKW%hdnt#(a2Y>x^l0@}F{| z^8+td7>g@cSG7-vrU%aV6ntob@DELdorlS`7Tn4^57RIdiWnXoP^x*!fW`h%tqm{$ zt%M=e?M}{@RKJTgfW8&Woehj^JJtfO5q7K*F)^`2W9h{FNn=8xH>Q00u2%2fALph%Pj!)2?qRkzb?+EdY`BRl2Rr1 ztKSw2w3m!`b-G#~`tZC8L@WmVtH&Mad+VB#k~G}XUj?T5gcPdJC!abIWB^csuY&+Q z&;$mo@>Ik&SRMP=yaOKuhVs&j+^0h9(`SoVLBbx<(S5@ zIPQttHx@!%1n}bjeg5w}41%Z|bYEhs-#2Dx?$EYLV z_Lx*v zRVlN5X{jl4$L)8>=B-;*dA?MRJI&Y7FPS_+nkpt89Apc^MHXmqaI^OVlhN=D3Bj{Rj@3#(ZcUG;u9L!@ zcS`B{wV=Vq6`yzrdsQg)LEH%%I$qV!XP`C>QYADg(g&U<+fLyIXrk`|O*qVpdrF%d z0!mW^wM0NeL}*x8U}i?T{rMN3KU7;+*8%pG6MZo043s<(Rgvk>R~oZD=|0LZKQbc1 zg7+BM-PLvG!3Q3A5=mY7Q6;agQ`hC~1H?lJdgpn^eZkI@X3l4rPUAIVvyTAjKo-CI z!Z8&too@EM>o@1k6uy|UGvU4<-=K~!NM6u{i>Y&_vQy>zo9+!aUEG{EQ`lF&PSZX+ zU597m^KdQ%6G-OYfANd=L2NCixwREr6CdibXAp*9127@#x*5G7PKG%biJpX_q^_bH zuNe=f+DuGR_~!J;B?8=eR{z97H#v4;+<-Et8#tM+@ft7_*a>aqO@<)cM12z>qx^;c zgwRgyjrlj)Cm+kRNNJ2sFd3^xuog3{r;Iyb>@_)IyAwMPMq zMo5T7{_>$Dx$i?s5*-bb0mC3RI&kPrJz6GLac)@t=BxE`rh5Kv1)0##DrgU}4PCP- z|9HX5^d=H1vnssAz?|zqd{Q8S>I?I>UVCjmh_flpWGq#4IbDt6ud>r2^-!aBqHS2J zFfN854={|eL2Ex8A{-_9kc`Cd1(O+J)C8z~s9XaaWFV95GB5YCs zpF$LzV_1&%;AoewbMGF>ef4>K*Ylkni!EW z2t?o};Jh~iG9=Dl1V&WVC#5%H^D_*F*}T`me&c2#EFv=EnyuHBM8(F(^8&bfY4|_5 z?=5-cyWf(NN6W7se9iYDn*krcof6o4eBd*GE7xq;gt5;8P$!5@Xm@*iTlrhB9l_?X ze+D#{Og6_EoSy6WIR}6#mvjAf*A+sQ;UzcU>5k)^!yknoPMkO{4GoQI1AY4RX{oEL zRkskpz(77UC;^U)1hX@QAdJH=GB09dVaFiBg??qo0tJwDd_8!+b{H zfxUZii?wKNIv5{+=&ao?4Zlb5*h+O4Z0l_UL4IxOwb`cQqgQYy}zQNIQVLUgpZK}$oIjDk4~L(htaGK3a^hBU8V?PWVr zC)XEMj0eUvsbLX2Y#c{{;T;zrFXLfxGvfd#}Ni;%x8e7=rKvgdwOU!U=5=)DU6(pp`7J{P4l3p}~QmsHjM# z{eUzh>B6XJ3eE=0x^?T6&x>QgtuACFB_%0s66em<$iM&lx23M)lmraHoCJgyVnA!Y z6MKty-uDrKHb6x~kl(?vr+*YAp!o^nQ#2~fPp~dJvZ2nMJEsI98XFrWtfxa(wN^_Q z&h4W&Y>~B}`a1~)uY=_{-yAx8P`>wrZ_1g9TF?d%*06_3o~>7|iD;Mf7=!+G1|@*6 zoGwj{Y|vK25W3wfuGlb%PtK6UK!ingfdF)YTZ4GXA=TtOzTTGDh(3VXgdW*Aj~=lQzhM)B3)V_B2cv%8X^L% zmh9~8Fnf?~>}QWXR)%Np!}K|hXS#p~;=L|-$5p4f|2%m<))Jb{NKQ<&LmH#&Ti^J` zFU!ix>QIbkGdKt6wP&_IYo4l%uRL>_zhQ4Uf8vCp(`_?i6aQ1CYlxZhHJmU1V#@l$ zH*MM+NZx7j`I9-+hc@1{ zYuBBa9IY)aEi|C6VTsRhGYCYuHv<})6YeA&+@$i?7aSYavFf&Uj>r^4w98XswgIBQ znDOpa-YaUf#%JQR4Rt}{FVWg3pIaFs+zn~9@+@S=ro!$7ddeZ-5q{8lD$@g@AvL%{ zYUJYI1Loc?yW=Y6&Nh0?$S{E$Mcuntoz6v0_i$%tXYaGmKUWS(#BNB>U9eb8YS<+f z;kavQ?1|*%gks-aCu3J%_k)7B@B4sh^yx2N8-bfJhcTGu2@@==?x*C$amlSiP zeP~?HK|{!a#v!Tc9F-O@{QAJ~Bdd*)w2H{3Pn&CQP8bCoI496)-{>oY0m%87<3|(Q z#;q#aS_bnFoI^6BSvnl!F(o`uvSNayG$j}|<7{Fd9~RhelfGB~BzbSW4EuG9@T#W} zh=9m88OJUMB=^zodEKZ2nd>(JVKt``QqMz5cnCMw)NLrEALsEuARwq@^Y)dgS=m_} zhs4Zxw)d6Y^6+=QDd#FH=CQJ?sAkgxd=Hs81bOgpKQB9O*u}3#6-TmzX?TPo5DzF>y*lw$%y-dIQIl?<`;T>DA-Valt*w=_I1GF9%{SFe zVBW4^I&T1Tdea+x?US(bp6@u8PV$S2&;WzR;=0h?+1~lq%YQ8I z>+R`ZPJ&8$+`(K##OCXEmc%C{&2HbtF7Tdxe5LVqO_k0(<#31%<|&1JYR^^6iQ~uQ zTwqz7Z(8&g(WE|DYF`P!w>{->Ku{UmSJgwcDy0n4H|PA0xjGJab47o zG=ZiIjJ4kw92_Hj)q1RGx`421NO;~Y;q`m=4(nRXc$nsfSCve_a7+;c-Gyyo83Vs+ zg8{^U;XNfl~y~LMCyC?*=LVd z*VJ_48}}tGwwP_3RbBjk3kwQjZ+*u*uE8aXNc}y}3dvRACFuc}OX&Z@^Uoi|&HgUE zPAo}77NOEBVZX(0)HDdRia{T+HS}HYd{=31PEJ^FZ_fbcnIUL5Py!J+r1uC!P-8^H z`TF2v<%gq!f&wj(&<;Um!W3c+3k!#7h!DByrkm6OKZO{0fs6tHG>bt^5#RjQkLCF% zeU12qH$3Zn;TT-t}P#jf_<^QB_TaJpAZ)jBbdUfrxWUT~um##InVA_O85!x}&Bnm^&Wmh%Vq1u#oN^CwTkOy@I?H~1p{`DE3ZJ z5d4jZ)z)5c1yw1~cZ+P!? z?>OMOQFM+D$QSU}hBOcK7^<;C-ha3bjtw?jYk_x~uRo42TMh2Ivw7RQN$Wyc$;E9#cZ zTn9}m0oc$}4Pe+k?|pAcMn=Z04j~r$O@Qg7)J*Q(yI1x>J4$(Zx!U0KyW%jw|2Pj)K!P_sN=i!P`s;T}c6PSV_T{DG z*hbs}>3Hh5zdeFO33d3&wq5FD@M8M!a%a$C{3&4w^pSOS>88AuYfC3i+mXl{>A!gN z$MVx3{RcGZ&)=cv#k`X%x$KR%-Y#GG%GaPlAi>iO_%5B5Cy!Shdh7Kw_!gbZVc(_4 z9d1C`Hf-KjR8YJk*VylSCQi@u%`RY?gjGR}kLfx*fsykuwV$-Lw#ey|C#CG|eYov* zRL)<6mX3oycUMjwc)0j!FNkirMaP*W{#VYc;~4&0XU@Sbe$&LOxE~xdF?BB6Rd_) zsNA@i=7DDwx(+v9bDnMp$27}nflwYw@SrBZH72Rp*A=9OKsbV?#aPqK4)|OZm6hk8 zd*OxU#%HpC#tXgcjyqQ3a5~lBaW`|1T!mPO9#C^J5bO7(#$824(|Z`(1b5xh6j^kNWHV{L<#TC0Fsyr3bKPxoT=^8lL{$?~dYtdQ^|gx!}6g z%UtgJE#3c`4xvB<_`pGT+;&H4W=2LV)(7VhY~kUYZE#><5X&Sdh=FqFK6LxDO4BM65jR^ET_2h@B;^A;2Uz*!wMQ^rE0Ws`jSpT8mYz6J;t zKp28FYCToP6<>51Xv-| z&<9OxBQnt2Csv#{WJJOgTX>O-*wUoe86p`09kMp1OF}nnm*k8rNlQ=1v&2(ruMGEh zOM7EA1ejZ7%o-u*TYBW+!Gm)8)G5hGOOpFP{t2ZuqrJUd(e}Y1VTy-C%@zp>iTK4U z`uyO*GU@8-=4)|+#_q&i$@2r61PO=;4-d>pPY;DA&rqZVRGmB5@{^zZ!8IHBWv`Y-_`8rMed`UVy8=tU2_(ebb$Ri)bhCCnIA;t%XaCO-1W+@E8qFB^*I}|1^5SVN& zor$Y5x{G#Q2*A;*0nK4m$j6^~bn9|Hz5&gooJntgor`utjGVV^udEpgkttJlOZ zz7^{`U@Bw#wrz!AVtY=!K_q#Km^VL6*Ksq92G)6un_+ca!_n8UgrnWtK@g-zT1MoR z>VBzcAC)0W@FEY4LlBbsP|)xVEf656-OO0d8>-1@w$bv5_Un)_KkBigTA+p$YB7AY zf!ZOoUX$bl&&JThwCw(Hi1!sl4v`=ed>uYc(u+QGRTDaxfYjd%|^vrkjTdV)rIJZy`V&A@f^84TaUXJ5d zFys6lK)YbxY7cI?=J4Sa&C!~dsS7)Z3&1+y7dFTM2AX*{Dkd__%4Tg1ZD zxU^U=cLp85QPRK3=^62xuiv#UBqY?(g^F$;!C~-EfB1cQ?2(6YQ)pn$FM{93ly17b zDGOcV8Th8BbNuG#>NqdmeczwSL!bTMN)4{YgLgQ#fA1@Y>#NT;F9*{Zdfep}6sK<7 zx^0aO97g>t+GjWE;i1F2>&)qdXWWyg5x9q)C*1@CXr(f@t)*GYLGSE)>n%BUkqCG7F+ro-T%=z8O3lK0;B@Dkd+*Tt!OGhngNlA%{ z!Q2l473!xpWL!H?1#o>NH% zs#U4GZn|j=nEMxuJMXqI-iQ5gc~zg(w&9j!fFTHBfq;l13^CF7#<+A3JYR_BG0i;Y z=Mn7!pdyW9pyjwH4diqSy<^&vzyOEjB-x}SCqlwuR>L2M@6Gw@Yp)$EJ9KDS@R{)3 z929}q@7R&OWBc|Z%+dZms6U-?3Bm9^E1K6mcPoLdOQ?Mp+Z6Dq$6w#O_sna1_nrf; zu}gLDWqwW!ynyZ7w`XDOtp=YdaADU8bIn)7^VI`tzT3O^C^Qz~Wxc!dxX=&++q~k(DUe<4#hD(hJ^2W>%J}04>4_X^Ca&shMO(L{X1WM-4PfBcZmh5@`kMhGuzK8QJ2ZSl06~bbd_=FgViHVn5 zXrc{+x#Tg(9*>R2$ar9qSVQ7uOK~Q&W=4w>TZ4F*kV{QVhww+ZbTyrou9i9p42ck1 zM2fVucPkAQ6%`dySy>6q7=yCy+KuwR{``IkkBnA=AqL$6v$LSLVWC6`bWqzTFTmhT z6WTTGuJDLRXq>VRg@uM$p;aR^EiE+!LMLjzPh$F#@h~2eJg%aL0UXOpKmxpQS*Advo9^&P^(R17ZtpD|yfQ(U{C+ zmC4rY;c5Q+re4E#FVfK$0T!(F7Qv8m&Ur=L6w3B^Gy96r?wY3xhwbKLcI_XofJ$D`{y zT6+_hx;=|s|B7O}eC5lTQo1fezgYFnjrT%31hfVCbnY?BvHR@qF8RuLTcoRJUeAMl zRy$K-bX<7nj+<8>jE#>T1YtSHFKeb+E-v3a*YUQcB`q~I>fU?rT^AP{i_S;4yC(zv zZ8NUJ=6ru!pv!8!zRLAO5TdMMNM5ZOkh9PRK~Xm)1cBRZFrB6dND`6M4568>3a|0` zW6Zec4>f6^%hg-}pS`bO)C|Fg^GxO5?NBeu{l_j~d&yLBf#gs8tRL{m|jr92tNcOzzlXdMn}fL%vMj~{d}{H6Uj3!dwp44YF%Pt;=p_h zM4*}0mFqUH$jB?m<9OtYqDs8)ef_KQ>{Cy8#-ZQs#yjWXv0}_)tXSL!$w~^{Yi;lw z=W+)0jA0&VU<~sx9KUg>^>b2^f0o09-``z#-z%T|>(8nK7
    | -| After |
    | -| With new scale |
    | - -## Scale - -| | | -| --- | --- | -| 0.9 |
    | -| 0.85 |
    | -| 0.8 |
    | -| 0.75 |
    | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Adaptive icon_image.png b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Adaptive icon_image.png deleted file mode 100644 index eeec79a01bbcc06f5003a738057c45f371fa1f78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6936 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 diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Slightly blurry icon on Ma.png b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Slightly blurry icon on Ma.png deleted file mode 100644 index c32a45801bd9f1083a4c4049bdf9dd319b43a97c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 733661 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⁢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�O+)3Z^PY_aJl~ME* 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

    kezfFl}M6C#lA_GX}6d^ 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%0AB*sAprP`Uk?zvrD3q_>6q%Zrr` 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Ôw0>fL0wp5K=Ev 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�f=kW6ANH9<2wJ!Le1 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μ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 diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Slightly blurry icon on Mac.md b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Slightly blurry icon on Mac.md deleted file mode 100644 index a59a8abfe..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Slightly blurry icon on Mac.md +++ /dev/null @@ -1,50 +0,0 @@ -# Slightly blurry icon on Mac -Slightly blurry in extended preview on Mac - -

    - -In the screenshot, the icon is around 650px whereas the closest image we have is 512px, so that might explain the blur. Adding an `ic10` (`1024x1024`, aka `512x512@2x` to see what happens). - -Before: - -``` -File: ../images/app-icons/mac/icon.icns - ic09: 62069 bytes, png: 512x512 -``` - -After: - -``` -File: ../images/app-icons/mac/icon.icns - icp4: 1140 bytes, png: 16x16 - icp5: 1868 bytes, png: 32x32 - ic07: 9520 bytes, png: 128x128 - ic09: 62069 bytes, png: 512x512 - ic10: 180442 bytes, png: 512x512@2x -``` - -Even with a 1024x1024 icon, the image is still blurry. - -Comparing the `.icns` file from the Electron build reveals that the `.icns` file has been tampered with: - -
    The electron.icns from the resulting buildThe icon source
    File: images/app-icons/mac/electron.icns
    -  icp4: 1140 bytes, png: 16x16
    -  icp5: 1868 bytes, png: 32x32
    -  ic07: 9520 bytes, png: 128x128
    -  ic09: 62069 bytes, png: 512x512
    -  ic10: 180442 bytes, png: 512x512@2x
    File: images/app-icons/mac/icon.icns
    -  icp4: 1648 bytes, png: 16x16
    -  icp5: 4364 bytes, png: 32x32
    -  ic07: 26273 bytes, png: 128x128
    -  ic09: 206192 bytes, png: 512x512
    -  ic10: 716034 bytes, png: 512x512@2x
    - -The bluriness might come from the image itself: [https://stackoverflow.com/questions/54030521/convert-svg-to-png-with-sharp-edges](https://stackoverflow.com/questions/54030521/convert-svg-to-png-with-sharp-edges)  - -Rendering with Inkscape (left) vs ImageMagick (right): - -
    - -Now in macOS it's also rendering quite nicely: - -
    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac_image.png b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac_image.png deleted file mode 100644 index f587c31cf43f01d67058353a5eb0683dcc69cdbe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 344478 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 P1uoYU9>=SW`p5qYJn6&V diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Removed icons.md b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Removed icons.md deleted file mode 100644 index 97b126515..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Removed icons.md +++ /dev/null @@ -1,27 +0,0 @@ -# Removed icons -The following icons were removed: - -## Main images - -These are stored in `images`: - -| Name | Resolution | Description | -| --- | --- | --- | -| `icon-black.png` | 36x36 | Does not appear to be used. | -| `icon-color.png` | 36x36 | Used only by some tests in `test-etapi`. | -| `icon-grey.png` | 36x36 | Does not appear to be used. | -| `icon.svg` | 210x297 | Does not appear to be used. | - -## App icons - -| Name | Resolution | Description | -| --- | --- | --- | -| `png/16x16-bw.png` | 16x16 | Do not appear to be used. | -| `png/16x16.png` | | | -| `png/24x24.png` | 24x24 | | -| `png/32x32.png` | 32x32 | | -| `png/48x48.png` | 48x48 | | -| `png/64x64.png` | 64x64 | | -| `png/96x96.png` | 96x96 | | -| `png/512x512.png` | 512x512 | Does not appear to be used. | -| `win/setup-banner.xcf` | | GIMP source for `win/setup-banner.gif`. Provided only for future editing. | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Live reload.md b/docs/Developer Guide/Developer Guide/Development and architecture/Live reload.md deleted file mode 100644 index 0efebd014..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Live reload.md +++ /dev/null @@ -1,20 +0,0 @@ -# Live reload -## Server live reload - -If running the server using `npm run start-server`, the server will watch for changes in `src/public` and trigger a frontend reload if that occurs. - -## Electron live reload - -Similarly, `npm run start-electron` supports live refresh  as well. - -However, a core difference is that Electron watches `dist/src/public` instead of `src/public` since Electron runs on its own copy of the files. - -To ameliorate that, a separate watch script has been implemented which automatically copies files from `src/public` to `dist/src/public` whenever a change is detected. To run it: - -``` -npm run -``` - -## Technical details - -* This mechanism is managed at server level by watching for changes in`services/ws.ts`. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Note types.md b/docs/Developer Guide/Developer Guide/Development and architecture/Note types.md deleted file mode 100644 index e8b9c6a3c..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Note types.md +++ /dev/null @@ -1,30 +0,0 @@ -# Note types -The note type is defined by the `type` column in notes. - -Possible types: - -
    Note Typetype valueCorresponding MIME typeContent of the note's blobRelevant attributes
    Texttext The HTML of the note. 
    Relation Map relationMapapplication/json

    A JSON describing the note:

    {
    -    "notes": [
    -        {
    -            "noteId": "gFQDL11KEm9G",
    -            "x": 142,
    -            "y": 405
    -        },
    -        {
    -            "noteId": "8GcjEKyrrCgl",
    -            "x": 100.10406374385552,
    -            "y": 757.0364424520196
    -        }
    -    ],
    -    "transform": {
    -        "scale": 0.3,
    -        "x": 480.29766098682165,
    -        "y": 116.83892021963081
    -    }
    -}
    None
    Render Noterendertext/html or blank.An empty blob.~renderNote pointing to the HTML note to render.
    Canvascanvasapplication/json
    {
    -	"appState": {},
    -	"elemenets": {},
    -	"files": {},
    -	"type": "excalidraw",
    -	"version": 2
    -}
    None
    Mermaid Diagrammermaidtext/mermaid or text/plainThe plain text content of the Mermaid diagram.None
    Bookbooktext/html or blank.An empty blob.
    • #viewType which can be either grid or list.
    • #expanded

    both options are shown to the user via the “Book Properties” ribbon widget.

    Web ViewwebViewblankAn empty blob.#webViewSrc pointing to an URL to render.
    CodecodeDepends on the language (e.g. text/plain, text/x-markdown, text/x-c++src).The plain text content. 
    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Options.md b/docs/Developer Guide/Developer Guide/Development and architecture/Options.md deleted file mode 100644 index a56f2bbed..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Options.md +++ /dev/null @@ -1,14 +0,0 @@ -# Options -## Read an option - -Add the import to the service (make sure the relative path is correct): - -```javascript -import options from "../../services/options.js"; -``` - -Them simply read the option: - -```javascript -this.firstDayOfWeek = options.getInt("firstDayOfWeek"); -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Check box option.md b/docs/Developer Guide/Developer Guide/Development and architecture/Options/Check box option.md deleted file mode 100644 index fa2258336..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Check box option.md +++ /dev/null @@ -1,37 +0,0 @@ -# Check box option -In the TPL: - -``` -
    -

    Background effects

    - -

    On the desktop application, it's possible to use a semi-transparent background tinted in the colors of the user's wallpaper to add a touch of color.

    - -
    - -
    -
    -``` - -In `doRender()`: - -``` -doRender() { - this.$backgroundEffects = this.$widget.find("input.background-effects"); - - this.$backgroundEffects.on("change", () => this.updateCheckboxOption("backgroundEffects", this.$backgroundEffects)); -} -``` - -In `optionsLoaded(options)`: - -``` -async optionsLoaded(options) { - - this.setCheckboxState(this.$backgroundEffects, options.backgroundEffects); - -} -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Displaying the option in setti.md b/docs/Developer Guide/Developer Guide/Development and architecture/Options/Displaying the option in setti.md deleted file mode 100644 index b135025e0..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Displaying the option in setti.md +++ /dev/null @@ -1,36 +0,0 @@ -# Displaying the option in settings -Go to `src/public/app/widgets/type_widgets/options` and select a corresponding category, such as `appearance` and edit one of the JS files. - -For example, to create a select: - -First, modify the template (`TPL`), to add the new widget: - -``` -
    - - -
    -``` - -Secondly, create a reference to the new element in `doRender()`: - -``` -this.$firstDayOfWeek = this.$widget.find(".first-day-of-week-select"); -``` - -Then in `optionsLoaded` adjust the value to the one set in the database: - -``` -this.$firstDayOfWeek.val(options.firstDayOfWeek); -``` - -To actually update the option, add a listener in `doRender`: - -``` -this.$firstDayOfWeek.on("change", () => { - this.updateOption("firstDayOfWeek", this.$firstDayOfWeek.val()); -}); -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Refresh widget with option cha.md b/docs/Developer Guide/Developer Guide/Development and architecture/Options/Refresh widget with option cha.md deleted file mode 100644 index a79f1ac1d..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Refresh widget with option cha.md +++ /dev/null @@ -1,10 +0,0 @@ -# Refresh widget with option change -To make a widget react to a change of a given option, simply add the following to the widget: - -```javascript -async entitiesReloadedEvent({loadResults}) { - if (loadResults.getOptionNames().includes("firstDayOfWeek")) { - // Do something. - } -} -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Trigger UI refresh.md b/docs/Developer Guide/Developer Guide/Development and architecture/Options/Trigger UI refresh.md deleted file mode 100644 index d8cf12f2a..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Trigger UI refresh.md +++ /dev/null @@ -1,12 +0,0 @@ -# Trigger UI refresh -Call `utils.reloadFrontendApp`, but make sure to wait for the option to be saved first. - -``` -this.$backgroundEffects.on("change", async () => { - - await this.updateCheckboxOption("backgroundEffects", this.$backgroundEffects); - - utils.reloadFrontendApp("background effect change"); - -}); -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Printing.md b/docs/Developer Guide/Developer Guide/Development and architecture/Printing.md deleted file mode 100644 index 9614ee786..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Printing.md +++ /dev/null @@ -1,15 +0,0 @@ -# Printing -Note printing is handled by `note_detail.js`, in the `printActiveNoteEvent` method. - -The application uses the [`print-this`](https://www.npmjs.com/package/print-this) library to isolate `.note-detail-printable:visible` and prepare it for printing. - -Some scripts like KaTeX are manually injected in the footer, and the CSS to be used is manually defined. The most important one is `print.css`. - -## Syntax highlighting - -Syntax highlighting for code blocks is supported as well: - -* It works by injecting a Highlight.js stylesheet into the print. -* The theme used is hard-coded (the _Visual Studio Light theme_, at the time of writing) in order not to have a dark background in print. -* The Highlight.js library is not needed since the `.note-detail-printable` which is rendered already has the `.hljs` classes added to it in order to achieve the syntax highlighting. -* The user's choice of whether to enable syntax highlighting is also respected. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Protected entities.md b/docs/Developer Guide/Developer Guide/Development and architecture/Protected entities.md deleted file mode 100644 index 225c740e7..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Protected entities.md +++ /dev/null @@ -1,6 +0,0 @@ -# Protected entities -The following entities can be made protected, via their `isProtected` flag: - -* attachments -* notes -* revisions \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Special notes.md b/docs/Developer Guide/Developer Guide/Development and architecture/Special notes.md deleted file mode 100644 index e69de29bb..000000000 diff --git a/docs/Developer Guide/Developer Guide/Environment Setup.md b/docs/Developer Guide/Developer Guide/Environment Setup.md index f1d706429..95d14cd50 100644 --- a/docs/Developer Guide/Developer Guide/Environment Setup.md +++ b/docs/Developer Guide/Developer Guide/Environment Setup.md @@ -26,8 +26,11 @@ As a quick heads-up of some differences when compared to `npm`: Run `pnpm i` at the top of the `Notes` repository to install the dependencies. +> [!NOTE] +> Dependencies are kept up to date periodically in the project. Generally it's a good rule to do `pnpm i` after each `git pull` on the main branch. + ## IDE -Our recommended IDE for working on TriliumNext is Visual Studio Code (or VSCodium if you are looking for a fully open-source alternative). +Our recommended IDE for working on Trilium is Visual Studio Code (or VSCodium if you are looking for a fully open-source alternative). -By default we include a number of suggested extensions which should appear when opening the repository in VS Code. Most of the extensions are for integrating various technologies we are using such as Playwright and Vitest for testing and NX for mono-repo management. \ No newline at end of file +By default we include a number of suggested extensions which should appear when opening the repository in VS Code. Most of the extensions are for integrating various technologies we are using such as Playwright and Vitest for testing or for Internationalisation / Translations. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Project Structure.md b/docs/Developer Guide/Developer Guide/Project Structure.md index ff0c954a2..465f1a572 100644 --- a/docs/Developer Guide/Developer Guide/Project Structure.md +++ b/docs/Developer Guide/Developer Guide/Project Structure.md @@ -1,5 +1,5 @@ # Project Structure -As the application grew in complexity, our build system was growing even more difficult to maintain and was spread across multiple repositories. As such we have decided to use a mono-repo approach, and to do so we chose to have NX manage our mono-repo. +As the application grew in complexity, we decided to switch to a monorepo based on `pnpm`. Our initial monorepo implementation used NX, but we've switched to pure `pnpm` workspaces and our own build scripts. ## Project structure @@ -12,45 +12,34 @@ The mono-repo is mainly structured in: * `packages`, containing dependencies used by one or more `apps`. * `commons`, containing shared code for all the apps. -## Working with NX - -### Running tasks via the CLI +## Working with the project For example to run the server instance: ``` -pnpm exec nx run server:serve +pnpm server:start ``` -NX has built-in cache support which should make development much faster. Sometimes, it can get in the way; to skip the cache simply append `--skip-nx-cache` to the command you are running. - -### Running tasks using Visual Studio Code - -If you are using Visual Studio Code as your development tool for Trilium, consider using the NX Console. It allows running tasks/targets much easier via the dedicated tab. Right-click a target in the list for more options, such as bypassing the cache. - ## Important tasks -Each application has a number of tasks (called _targets_ by NX). Here's a non-exhaustive list of the tasks that are useful during development. +Each application has a number of tasks. Here's a non-exhaustive list of the tasks that are useful during development. -To run any of the task use `pnpm exec nx run project:task`, or use the Visual Studio Code integration as described above. +To run any of the tasks, use `pnpm project:task`: * `client`: * The client is not meant to be run by itself, despite being described as an app. See the documentation on the server instead. * `server`: - * To run the server in development mode, run `client:serve` (which will only serve the public assets), followed by `server:serve` (which will proxy the assets of the client as well). The dev port remains the same as always, `8080`. + * To run the server in development mode, run `server:start`. The dev port is `8080`. * To run the server in production mode (with its own copy of the assets), run `server:start-prod`. - * To build the server for Docker, run `docker-build` which will automatically build and tag the image if Docker is installed locally. - * Similarly, run `docker-start` to build and run the Docker image. + * To build for Docker, see Docker. * `desktop`: - * To run the desktop, run `desktop:serve`. - * Unlike the server, this one does not require the client since it will automatically get a production copy of it. The only downside is that modifications to the code will only take effect after restarting the task. + * To run the desktop in development mode with watch, run `desktop:start`. + * To run the desktop in production mode, run `desktop:start-prod`. ## Building packages -Generally, the building process of a project generates a `dist` folder containing everything needed for production. To trigger a build run `pnpm nx build project` where `project` is the name of a project from either `apps` or `packages`. +Generally, the building process of a project generates a `dist` folder containing everything needed for production. ## Managing dependencies across the mono-repo -We are using [pnpm workspaces](https://pnpm.io/workspaces) to manage the project structure, further augmented by NX which is described in a different section. - -The workspace configuration is in `pnpm-workspace.yaml` at project level but it generally should not be modified. \ No newline at end of file +We are using [pnpm workspaces](https://pnpm.io/workspaces) to manage the project structure. The workspace configuration is in `pnpm-workspace.yaml` at project level but it generally should not be modified. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Project Structure/CKEditor/Plugin migration guide.md b/docs/Developer Guide/Developer Guide/Project Structure/CKEditor/Plugin migration guide.md index 8b87f2721..47a4b5e83 100644 --- a/docs/Developer Guide/Developer Guide/Project Structure/CKEditor/Plugin migration guide.md +++ b/docs/Developer Guide/Developer Guide/Project Structure/CKEditor/Plugin migration guide.md @@ -34,7 +34,7 @@ In the newly copied package, go to `package.json` and edit: 2. In `peerDependencies`, change `ckeditor5` to the same version as from the previous step. 3. Similarly, update `vitest` dependencies to match the monorepo one. 4. Remove the `prepare` entry from the `scripts` section. -5. Change `build:dist` to simply `build` in order to integrate it with NX. +5. Change `build:dist` to simply `build`. 6. In `tsconfig.dist.json`, change `typings/types` to `../typings/types.d.ts` to be compatible with the latest TypeScript version. ## Step 4. Install missing dependencies and build errors diff --git a/docs/Developer Guide/Developer Guide/Troubleshooting/better-sqlite3 was compiled ag.md b/docs/Developer Guide/Developer Guide/Troubleshooting/better-sqlite3 was compiled ag.md index af8d7c70a..a048e3b4e 100644 --- a/docs/Developer Guide/Developer Guide/Troubleshooting/better-sqlite3 was compiled ag.md +++ b/docs/Developer Guide/Developer Guide/Troubleshooting/better-sqlite3 was compiled ag.md @@ -1,6 +1,6 @@ # better-sqlite3 was compiled against a different Node.js version This generally can happen when running the development version of either the `desktop` or `server`, but it should not happen as often as it used to. The reason is that `better-sqlite3` is a native dependency and has different builds for either the system's Node.js (as used by the `server`), or Electron's one (as used by the `desktop`). -To solve this, go to `apps/server` and run `pnpm rebuild`. For Electron this step is not necessary as it's already handled by the `rebuild-deps` NX target. +To solve this, go to `apps/server` and run `pnpm rebuild`. For Electron (`desktop`) this step generally not necessary, however `pnpm postinstall` should solve it. If you can reproduce this issue consistently, please open a bug report. \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index b3d3f98af..ee9df7820 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -366,6 +366,41 @@ "format": "markdown", "dataFileName": "System Requirements.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "Un4wj2Mak2Ky", + "notePath": [ + "pOsGYCXsbNQG", + "Otzi9La2YAUX", + "poXkQfguuA0U", + "Un4wj2Mak2Ky" + ], + "title": "Nix flake", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "nix-flake", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bxl-tux", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Nix flake.md", + "attachments": [] } ] }, @@ -1221,6 +1256,22 @@ "format": "markdown", "dataFileName": "System Requirements.md", "attachments": [] + }, + { + "isClone": true, + "noteId": "Un4wj2Mak2Ky", + "notePath": [ + "pOsGYCXsbNQG", + "Otzi9La2YAUX", + "WOcw2SLH6tbX", + "Un4wj2Mak2Ky" + ], + "title": "Nix flake", + "prefix": null, + "dataFileName": "Nix flake.clone.md", + "type": "text", + "format": "markdown", + "isExpanded": false } ] }, @@ -13996,6 +14047,40 @@ "attachments": [] } ] + }, + { + "isClone": false, + "noteId": "64ZTlUPgEPtW", + "notePath": [ + "pOsGYCXsbNQG", + "tC7s2alapj8V", + "64ZTlUPgEPtW" + ], + "title": "Safe mode", + "notePosition": 250, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "safe-mode", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bxs-virus-block", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Safe mode.md", + "attachments": [] } ] }, diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Safe mode.md b/docs/User Guide/User Guide/Advanced Usage/Safe mode.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Development and architecture/Safe mode.md rename to docs/User Guide/User Guide/Advanced Usage/Safe mode.md diff --git a/docs/Developer Guide/Developer Guide/Building and deployment/Nix flake.md b/docs/User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Building and deployment/Nix flake.md rename to docs/User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake.md diff --git a/docs/User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone.md b/docs/User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone.md new file mode 100644 index 000000000..1ea9ad997 --- /dev/null +++ b/docs/User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone.md @@ -0,0 +1,2 @@ +# Nix flake +This is a clone of a note. Go to its [primary location](../Desktop%20Installation/Nix%20flake.md). \ No newline at end of file From 686c8936cb68eb381b7a11288c07c1064a439506 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Mon, 3 Nov 2025 22:48:14 +0200 Subject: [PATCH 097/136] docs(dev): integrate more of the old documentation --- docs/Developer Guide/!!!meta.json | 884 +++++++----------- .../CI/1_Main_image.png | Bin .../CI/Main.md | 2 +- .../CI/Main_image.png | Bin .../Developer Guide/Architecture/Icons.md | 2 +- .../Building/Build deliveries locally.md | 34 + .../Developer Guide/Building/Documentation.md | 17 + .../Building/Running a development build.md | 33 + .../Build deliveries locally.md | 32 - .../Build deliveries locally.clone.md | 2 - .../Building and deployment/Documentation.md | 34 - .../Releasing a version.clone.md | 2 - .../Running a development build.clone.md | 2 - .../Adding a new client library.md | 116 --- .../Having a simpler packaging sys.md | 8 - .../Node.js, Electron and `better-.md | 36 - .../Testing compatibility.md | 15 - .../bettersqlite binaries.md | 6 +- .../Old documentation/Releasing a version.md | 2 +- .../Running a development build.md | 89 -- .../Developer Guide/Project Structure.md | 20 +- 21 files changed, 433 insertions(+), 903 deletions(-) rename docs/Developer Guide/Developer Guide/{Old documentation/Building and deployment => Architecture}/CI/1_Main_image.png (100%) rename docs/Developer Guide/Developer Guide/{Old documentation/Building and deployment => Architecture}/CI/Main.md (87%) rename docs/Developer Guide/Developer Guide/{Old documentation/Building and deployment => Architecture}/CI/Main_image.png (100%) create mode 100644 docs/Developer Guide/Developer Guide/Building/Build deliveries locally.md create mode 100644 docs/Developer Guide/Developer Guide/Building/Documentation.md create mode 100644 docs/Developer Guide/Developer Guide/Building/Running a development build.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Build deliveries locally.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Build deliveries locally.clone.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Documentation.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Releasing a version.clone.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Running a development build.clone.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Dependency Management/Adding a new client library.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Dependency Management/Having a simpler packaging sys.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/Node.js, Electron and `better-.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/Testing compatibility.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Running a development build.md diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index 244b6be5f..f384978f2 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -82,136 +82,6 @@ "dataFileName": "Environment Setup.md", "attachments": [] }, - { - "isClone": false, - "noteId": "a0mkxxB4Uvbf", - "notePath": [ - "jdjRLhLV3TtI", - "a0mkxxB4Uvbf" - ], - "title": "Building", - "notePosition": 270, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "building", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-terminal", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Building", - "children": [ - { - "isClone": false, - "noteId": "mXFYlhuEr1mZ", - "notePath": [ - "jdjRLhLV3TtI", - "a0mkxxB4Uvbf", - "mXFYlhuEr1mZ" - ], - "title": "Docker", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "docker", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bxl-docker", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", - "dataFileName": "Docker.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "aGlhNBEA9wwo", - "notePath": [ - "jdjRLhLV3TtI", - "a0mkxxB4Uvbf", - "aGlhNBEA9wwo" - ], - "title": "Build information", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "build-info", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-info-circle", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", - "dataFileName": "Build information.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "fI16A7NrT713", - "notePath": [ - "jdjRLhLV3TtI", - "a0mkxxB4Uvbf", - "fI16A7NrT713" - ], - "title": "Live reload (HMR)", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "live-reload", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Live reload (HMR).md", - "attachments": [] - } - ] - }, { "isClone": false, "noteId": "cxfTSHIUQtt2", @@ -220,7 +90,7 @@ "cxfTSHIUQtt2" ], "title": "Project Structure", - "notePosition": 280, + "notePosition": 270, "prefix": null, "isExpanded": false, "type": "text", @@ -243,7 +113,7 @@ { "type": "relation", "name": "internalLink", - "value": "mXFYlhuEr1mZ", + "value": "a0mkxxB4Uvbf", "isInheritable": false, "position": 30 } @@ -327,6 +197,245 @@ } ] }, + { + "isClone": false, + "noteId": "a0mkxxB4Uvbf", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf" + ], + "title": "Building", + "notePosition": 280, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "building", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-terminal", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "Building", + "children": [ + { + "isClone": false, + "noteId": "czgXkoEYwclZ", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "czgXkoEYwclZ" + ], + "title": "Running a development build", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "dev-build", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "T2W7WCZrYZBU", + "isInheritable": false, + "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "mXFYlhuEr1mZ", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "dataFileName": "Running a development build.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "mXFYlhuEr1mZ", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "mXFYlhuEr1mZ" + ], + "title": "Docker", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "docker", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bxl-docker", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Docker.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "aGlhNBEA9wwo", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "aGlhNBEA9wwo" + ], + "title": "Build information", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "build-info", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-info-circle", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Build information.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "fI16A7NrT713", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "fI16A7NrT713" + ], + "title": "Live reload (HMR)", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "live-reload", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Live reload (HMR).md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "PXzm2t3sCdsP", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "PXzm2t3sCdsP" + ], + "title": "Build deliveries locally", + "notePosition": 50, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "build-deliveries", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-package", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Build deliveries locally.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "zdQzavvHDl1k", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "zdQzavvHDl1k" + ], + "title": "Documentation", + "notePosition": 60, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "documentation", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-book-open", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Documentation.md", + "attachments": [] + } + ] + }, { "isClone": false, "noteId": "yeqU0zo0ZQ83", @@ -335,7 +444,7 @@ "yeqU0zo0ZQ83" ], "title": "Architecture", - "notePosition": 290, + "notePosition": 300, "prefix": null, "isExpanded": false, "type": "text", @@ -428,6 +537,87 @@ "dataFileName": "Branch prefixes.md", "attachments": [] }, + { + "isClone": false, + "noteId": "oqg9OpK8xfcm", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "oqg9OpK8xfcm" + ], + "title": "CI", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "ci", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "CI", + "children": [ + { + "isClone": false, + "noteId": "IxkDdjTogO18", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "oqg9OpK8xfcm", + "IxkDdjTogO18" + ], + "title": "Main", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "PXzm2t3sCdsP", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "main", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Main.md", + "attachments": [ + { + "attachmentId": "c3aGEk60ZR2Q", + "title": "image.png", + "role": "image", + "mime": "image/png", + "position": 10, + "dataFileName": "Main_image.png" + }, + { + "attachmentId": "q9OGTAguCyWf", + "title": "image.png", + "role": "image", + "mime": "image/png", + "position": 10, + "dataFileName": "1_Main_image.png" + } + ] + } + ] + }, { "isClone": false, "noteId": "vNMojjUN76jc", @@ -437,7 +627,7 @@ "vNMojjUN76jc" ], "title": "Database structure", - "notePosition": 30, + "notePosition": 40, "prefix": null, "isExpanded": false, "type": "text", @@ -942,7 +1132,7 @@ "tM3rIZQzlum4" ], "title": "Deleted notes", - "notePosition": 40, + "notePosition": 50, "prefix": null, "isExpanded": false, "type": "text", @@ -976,7 +1166,7 @@ "oLhKpfi2kGON" ], "title": "Demo document", - "notePosition": 50, + "notePosition": 60, "prefix": null, "isExpanded": false, "type": "text", @@ -1010,7 +1200,7 @@ "UzRirf46Xi46" ], "title": "Hidden notes", - "notePosition": 60, + "notePosition": 70, "prefix": null, "isExpanded": false, "type": "text", @@ -1044,7 +1234,7 @@ "m2W35hwSDUeh" ], "title": "Icons", - "notePosition": 70, + "notePosition": 80, "prefix": null, "isExpanded": false, "type": "text", @@ -1085,7 +1275,7 @@ "TLXJwBDo8Rdv" ], "title": "Internationalisation / Translations", - "notePosition": 80, + "notePosition": 90, "prefix": null, "isExpanded": false, "type": "text", @@ -1220,7 +1410,7 @@ "Usiyzn9C4WFv" ], "title": "Launchers", - "notePosition": 90, + "notePosition": 100, "prefix": null, "isExpanded": false, "type": "text", @@ -1247,7 +1437,7 @@ "qjQNyaYXSNWu" ], "title": "Note Revisions", - "notePosition": 100, + "notePosition": 110, "prefix": null, "isExpanded": false, "type": "text", @@ -1281,7 +1471,7 @@ "7RBJMqVz2EsJ" ], "title": "Note Types", - "notePosition": 110, + "notePosition": 120, "prefix": null, "isExpanded": false, "type": "text", @@ -1615,7 +1805,7 @@ "6dC7ha5vjqqS" ], "title": "Options", - "notePosition": 120, + "notePosition": 130, "prefix": null, "isExpanded": false, "type": "text", @@ -1680,7 +1870,7 @@ "W0msUwLxm40d" ], "title": "Printing and exporting to PDF", - "notePosition": 130, + "notePosition": 140, "prefix": null, "isExpanded": false, "type": "text", @@ -1721,7 +1911,7 @@ "UvXpeSqfYc6d" ], "title": "Protected entities", - "notePosition": 140, + "notePosition": 150, "prefix": null, "isExpanded": false, "type": "text", @@ -1776,7 +1966,7 @@ "vphziLmQeQHY" ], "title": "Share", - "notePosition": 150, + "notePosition": 160, "prefix": null, "isExpanded": false, "type": "text", @@ -1810,7 +2000,7 @@ "n9wYW9nUTynV" ], "title": "Synchronisation", - "notePosition": 160, + "notePosition": 170, "prefix": null, "isExpanded": false, "type": "text", @@ -1874,7 +2064,7 @@ "k7RavjuXQt8z" ], "title": "Syntax highlighting", - "notePosition": 170, + "notePosition": 180, "prefix": null, "isExpanded": false, "type": "text", @@ -1908,7 +2098,7 @@ "7BCukQTCm7fv" ], "title": "Themes", - "notePosition": 180, + "notePosition": 190, "prefix": null, "isExpanded": false, "type": "text", @@ -1943,7 +2133,7 @@ "YjerxU7Aii8X" ], "title": "Troubleshooting", - "notePosition": 330, + "notePosition": 340, "prefix": null, "isExpanded": false, "type": "text", @@ -2005,7 +2195,7 @@ "ibAPHul7Efvr" ], "title": "Old documentation", - "notePosition": 340, + "notePosition": 350, "prefix": null, "isExpanded": false, "type": "text", @@ -2023,33 +2213,6 @@ "attachments": [], "dirFileName": "Old documentation", "children": [ - { - "isClone": false, - "noteId": "PXzm2t3sCdsP", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "PXzm2t3sCdsP" - ], - "title": "Build deliveries locally", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "build-deliveries", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Build deliveries locally.md", - "attachments": [] - }, { "isClone": false, "noteId": "rLWcPPQi7Eso", @@ -2077,313 +2240,6 @@ "dataFileName": "Releasing a version.md", "attachments": [] }, - { - "isClone": false, - "noteId": "czgXkoEYwclZ", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "czgXkoEYwclZ" - ], - "title": "Running a development build", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "dev-build", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Running a development build.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "sUqOpnrQyEC7", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "sUqOpnrQyEC7" - ], - "title": "Building and deployment", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "building", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Building and deployment", - "children": [ - { - "isClone": true, - "noteId": "PXzm2t3sCdsP", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "sUqOpnrQyEC7", - "PXzm2t3sCdsP" - ], - "title": "Build deliveries locally", - "prefix": null, - "dataFileName": "Build deliveries locally.clone.md", - "type": "text", - "format": "markdown", - "isExpanded": false - }, - { - "isClone": false, - "noteId": "zdQzavvHDl1k", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "sUqOpnrQyEC7", - "zdQzavvHDl1k" - ], - "title": "Documentation", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "documentation", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Documentation.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "oqg9OpK8xfcm", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "sUqOpnrQyEC7", - "oqg9OpK8xfcm" - ], - "title": "CI", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "ci", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "CI", - "children": [ - { - "isClone": false, - "noteId": "IxkDdjTogO18", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "sUqOpnrQyEC7", - "oqg9OpK8xfcm", - "IxkDdjTogO18" - ], - "title": "Main", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "PXzm2t3sCdsP", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "main", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Main.md", - "attachments": [ - { - "attachmentId": "c3aGEk60ZR2Q", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "Main_image.png" - }, - { - "attachmentId": "q9OGTAguCyWf", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "1_Main_image.png" - } - ] - } - ] - }, - { - "isClone": true, - "noteId": "rLWcPPQi7Eso", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "sUqOpnrQyEC7", - "rLWcPPQi7Eso" - ], - "title": "Releasing a version", - "prefix": null, - "dataFileName": "Releasing a version.clone.md", - "type": "text", - "format": "markdown", - "isExpanded": false - }, - { - "isClone": true, - "noteId": "czgXkoEYwclZ", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "sUqOpnrQyEC7", - "czgXkoEYwclZ" - ], - "title": "Running a development build", - "prefix": null, - "dataFileName": "Running a development build.clone.md", - "type": "text", - "format": "markdown", - "isExpanded": false - } - ] - }, - { - "isClone": false, - "noteId": "Kqzuchw6MmPm", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "Kqzuchw6MmPm" - ], - "title": "Dependency Management", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "iconClass", - "value": "bx bx-package", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "deps", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Dependency Management", - "children": [ - { - "isClone": false, - "noteId": "YH5JPX12BYFk", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "Kqzuchw6MmPm", - "YH5JPX12BYFk" - ], - "title": "Adding a new client library", - "notePosition": 0, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "new-client-library", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Adding a new client library.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "C5CNXGgti17i", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "Kqzuchw6MmPm", - "C5CNXGgti17i" - ], - "title": "Having a simpler packaging system", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "packaging-system", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Having a simpler packaging sys.md", - "attachments": [] - } - ] - }, { "isClone": false, "noteId": "6BWwXzPCph4G", @@ -2482,64 +2338,6 @@ "format": "markdown", "dataFileName": "bettersqlite binaries.md", "attachments": [] - }, - { - "isClone": false, - "noteId": "v5zBZNLR358v", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "6BWwXzPCph4G", - "fa6hAJ9Ith3A", - "v5zBZNLR358v" - ], - "title": "Node.js, Electron and `better-sqlite3`", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "nodejs-electron-bettersqlite3", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Node.js, Electron and `better-.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "aPQ1fSuoBCTC", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "6BWwXzPCph4G", - "fa6hAJ9Ith3A", - "aPQ1fSuoBCTC" - ], - "title": "Testing compatibility", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "compatibility-matrix", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Testing compatibility.md", - "attachments": [] } ] } diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/CI/1_Main_image.png b/docs/Developer Guide/Developer Guide/Architecture/CI/1_Main_image.png similarity index 100% rename from docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/CI/1_Main_image.png rename to docs/Developer Guide/Developer Guide/Architecture/CI/1_Main_image.png diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/CI/Main.md b/docs/Developer Guide/Developer Guide/Architecture/CI/Main.md similarity index 87% rename from docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/CI/Main.md rename to docs/Developer Guide/Developer Guide/Architecture/CI/Main.md index f7e96aa61..cae0613af 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/CI/Main.md +++ b/docs/Developer Guide/Developer Guide/Architecture/CI/Main.md @@ -2,7 +2,7 @@ The main workflow of the CI: * Builds the Docker image and publishes in the GitHub Docker registry. -* Builds using a portion of the [delivery script](../../Build%20deliveries%20locally.md) artifacts for the following platforms: +* Builds using a portion of the [delivery script](../../Building/Build%20deliveries%20locally.md) artifacts for the following platforms: * Windows `x86_64` as .zip file * Windows `x86_64` installer (using Squirrel) * macOS `x86_64` and `aarch64`. diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/CI/Main_image.png b/docs/Developer Guide/Developer Guide/Architecture/CI/Main_image.png similarity index 100% rename from docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/CI/Main_image.png rename to docs/Developer Guide/Developer Guide/Architecture/CI/Main_image.png diff --git a/docs/Developer Guide/Developer Guide/Architecture/Icons.md b/docs/Developer Guide/Developer Guide/Architecture/Icons.md index 791e26f6c..826ebc9bb 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Icons.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Icons.md @@ -21,7 +21,7 @@ These are stored in `images`: ## App icons -
    NameResolutionDescription
    ios/apple-touch-icon.png180x180Used as apple-touch-icon, but only in login.ejs and set_password.ejs for some reason.
    mac/icon.icns512x512Provided as --icon to electron-packager for mac-arm64 and mac-x64 builds.
    png/128x128.png128x128Used in linux-x64 build, to provide an icon.png.
    png/256x256-dev.png256x256Used by the Electron window icon, if in dev mode.
    png/256x256.pngUsed by the Electron window icon, if not in dev mode.
    win/icon.ico
    • ICO 16x16
    • ICO 32x32
    • ICO 48x48
    • ICO 64x64
    • ICO 128x128
    • PNG 256x256
    • Used by the win-x64 build.
    • Used by Squirrel Windows installer for: setup icon, app icon, control panel icon
    • Used as the favicon.
    win/setup-banner.gif640x480Used by the Squirrel Windows installer during the installation process. Has only one frame.
    +
    NameResolutionDescription
    ios/apple-touch-icon.png180x180Used as apple-touch-icon, but only in login.ejs and set_password.ejs for some reason.
    mac/icon.icns512x512Provided as --icon to electron-packager for mac-arm64 and mac-x64 builds.
    png/128x128.png128x128Used in linux-x64 build, to provide an icon.png.
    png/256x256-dev.png256x256Used by the Electron window icon, if in dev mode.
    png/256x256.pngUsed by the Electron window icon, if not in dev mode.
    win/icon.ico
    • ICO 16x16
    • ICO 32x32
    • ICO 48x48
    • ICO 64x64
    • ICO 128x128
    • PNG 256x256
    • Used by the win-x64 build.
    • Used by Squirrel Windows installer for: setup icon, app icon, control panel icon
    • Used as the favicon.
    win/setup-banner.gif640x480Used by the Squirrel Windows installer during the installation process. Has only one frame.
    ## Additional locations where the branding is used diff --git a/docs/Developer Guide/Developer Guide/Building/Build deliveries locally.md b/docs/Developer Guide/Developer Guide/Building/Build deliveries locally.md new file mode 100644 index 000000000..3c78ae4aa --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Building/Build deliveries locally.md @@ -0,0 +1,34 @@ +# Build deliveries locally +## Building the desktop + +Go to `apps/desktop`, and: + +* To generate the packages, run `pnpm electron-forge:make`. +* To only build the Flatpak, run `pnpm electron-forge:make-flatpak`. +* To only build without packaging it, run `pnpm electron-forge:package`. + +## Building the server + +Go to `apps/server` and run `pnpm package` to run the build script. The built artifacts will appear in `apps/server/dist`, whereas the packaged build will be available in `apps/server/out`. + +## On NixOS + +Under NixOS the following `nix-shell` is needed: + +``` +nix-shell -p jq +``` + +For Linux builds: + +``` +nix-shell -p jq fakeroot dpkg +``` + +To test the Linux builds, use `steam-run`: + +```javascript +$ NIXPKGS_ALLOW_UNFREE=1 nix-shell -p steam-run +[nix-shell] cd dist/trilium-linux-x64 +[nix-shell] steam-run ./trilium +``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Building/Documentation.md b/docs/Developer Guide/Developer Guide/Building/Documentation.md new file mode 100644 index 000000000..bd3124b55 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Building/Documentation.md @@ -0,0 +1,17 @@ +# Documentation +## Automation + +The documentation is built via `apps/build-docs`: + +1. The output directory is cleared. +2. The User Guide and the Developer Guide are built. + 1. The documentation from the repo is archived and imported into an in-memory instance. + 2. The documentation is exported using the shared theme. +3. The API docs (internal and ETAPI) are statically rendered via Redocly. +4. The script API is generated via `typedoc` + +The `deploy-docs` workflow triggers the documentation build and uploads it to CloudFlare Pages. + +## Building locally + +In the Git root, run `pnpm docs:build`. The built documentation will be available in `site` at Git root. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Building/Running a development build.md b/docs/Developer Guide/Developer Guide/Building/Running a development build.md new file mode 100644 index 000000000..c69e19d50 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Building/Running a development build.md @@ -0,0 +1,33 @@ +# Running a development build +First, follow the Environment Setup. + +## Client + +The client is not meant to be run by itself, despite being described as an app. See the documentation on the server instead. + +## Server + +* To run the server in development mode, run `server:start`. The dev port is `8080`. +* To run the server in production mode (with its own copy of the assets), run `server:start-prod`. +* To build for Docker, see Docker. + +To run with a custom port, change the `TRILIUM_PORT` environment variable from the `package.json`. + +## Desktop + +* To run in development mode, use `pnpm desktop:start`. +* To run in production mode, use `pnpm desktop:start-prod`. + +## Safe mode + +Safe mode is off by default, to enable it temporarily on a Unix shell, prepend the environment variable setting: + +``` +pnpm cross-env TRILIUM_SAFE_MODE=1 pnpm server:start +``` + +## Running on NixOS + +When doing development, the Electron binary retrieved from NPM is not going to be compatible with NixOS, resulting in errors when trying to run it. However Trilium handles it automatically when running `pnpm desktop:start`. + +If there's no `electron` the system path it will attempt to use `nix-shell` to obtain it. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Build deliveries locally.md b/docs/Developer Guide/Developer Guide/Old documentation/Build deliveries locally.md deleted file mode 100644 index 31a6ee0e2..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Build deliveries locally.md +++ /dev/null @@ -1,32 +0,0 @@ -# Build deliveries locally -In the project root: - -| Platform | Architecture | Application | Build command | -| --- | --- | --- | --- | -| macOS | x86\_64 | Desktop / Electron app | `./bin/build-mac-x64.sh` | -| ARM 64 | Desktop / Electron app | `./bin/build-mac-arm64.sh` | | -| Linux | x86\_64 | Desktop / Electron app | `./bin/build-linux-x64.sh` | -| Server | `./bin/build-server.sh` | | | -| Windows | x86\_64 | Desktop / Electron app | `./bin/build-win-x64.sh` | - -Under NixOS the following `nix-shell` is needed: - -``` -nix-shell -p jq -``` - -For Linux builds: - -``` -nix-shell -p jq fakeroot dpkg -``` - -The resulting build will be in the `dist` directory under the project root. - -### Testing the Linux builds under NixOS - -
    Desktop clientServer
    $ NIXPKGS_ALLOW_UNFREE=1 nix-shell -p steam-run
    -[nix-shell] cd dist/trilium-linux-x64
    -[nix-shell] steam-run ./trilium
    $ NIXPKGS_ALLOW_UNFREE=1 nix-shell -p steam-run
    -[nix-shell] cd dist/trilium-linux-x64-server
    -[nix-shell] steam-run ./trilium.sh
    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Build deliveries locally.clone.md b/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Build deliveries locally.clone.md deleted file mode 100644 index 3ee7c825b..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Build deliveries locally.clone.md +++ /dev/null @@ -1,2 +0,0 @@ -# Build deliveries locally -This is a clone of a note. Go to its [primary location](../Build%20deliveries%20locally.md). \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Documentation.md b/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Documentation.md deleted file mode 100644 index 672b64f7c..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Documentation.md +++ /dev/null @@ -1,34 +0,0 @@ -# Documentation -Development notes are published on [triliumnext.github.io/Notes](https://triliumnext.github.io/Notes) by the CI using GitHub Pages. - -The GitHub Pages deployment works by taking the files from the Notes repository, in the `docs` directory. - -## How it works - -There is a script that uses `wget` to download all the files from a share, that means: - -1. You must have a local instance of Trilium Notes server. -2. You must have the documentation imported, up to date and shared. - -Note that currently the documentation source file is not distributed (the note export), until a way is found to automate this process. Contact `eliandoran` should you require to obtain a copy of the documentation. - -## Setting up `.env` file - -Go to `bin/docs` and copy `.env.example` to `.env` and edit it: - -1. Change the `SHARE_PROTOCOL` to either `http` or `https` depending on your setup. -2. Change `SHARE_HOST` to match the domain name or the URL to the host (without the protocol or any slashes). - -Generally `ROOT_NOTE_ID` should not be changed since the note ID must match if the files were imported correctly. - -## Triggering a build - -Run: - -``` -./bin/docs/prepare.sh -``` - -This will attempt to download all the notes from the share URL and put them in `docs`, rewritten for GitHub Pages. - -Commit the results and follow the normal development process to push them. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Releasing a version.clone.md b/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Releasing a version.clone.md deleted file mode 100644 index 3e2019da0..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Releasing a version.clone.md +++ /dev/null @@ -1,2 +0,0 @@ -# Releasing a version -This is a clone of a note. Go to its [primary location](../Releasing%20a%20version.md). \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Running a development build.clone.md b/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Running a development build.clone.md deleted file mode 100644 index d56a46aea..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Building and deployment/Running a development build.clone.md +++ /dev/null @@ -1,2 +0,0 @@ -# Running a development build -This is a clone of a note. Go to its [primary location](../Running%20a%20development%20build.md). \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Dependency Management/Adding a new client library.md b/docs/Developer Guide/Developer Guide/Old documentation/Dependency Management/Adding a new client library.md deleted file mode 100644 index 64ffcf528..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Dependency Management/Adding a new client library.md +++ /dev/null @@ -1,116 +0,0 @@ -# Adding a new client library -In the past some libraries have been copy-pasted (and adapted if needed) to the repository. However, new libraries must be obtained exclusively through npm. - -The first step is to install the desired library. As an example we are going to install `i18next`: - -``` -npm i i18next -``` - -### Step 1. Understanding the structure of the import - -After installing the dependency, it's important to know how it's structured. You can do this by looking at the directory structure of the newly imported dependency: - -``` -$ tree node_modules/i18next -node_modules/i18next -├── dist -│ ├── cjs -│ │ └── i18next.js -│ ├── esm -│ │ ├── i18next.bundled.js -│ │ ├── i18next.js -│ │ └── package.json -│ └── umd -│ ├── i18next.js -│ └── i18next.min.js -├── i18next.js -├── i18next.min.js -├── index.d.mts -├── index.d.ts -├── index.js -├── index.v4.d.ts -├── LICENSE -├── package.json -├── README.md -└── typescript - ├── helpers.d.ts - ├── options.d.ts - ├── t.d.ts - └── t.v4.d.ts -``` - -Generally you should be looking for a `.min.js` file. Note that the `esm` and `cjs` variants generally don't work, we are looking for the classic, no module dependency. - -### Step 2. Exposing the library from the server - -The library must be delivered by the server and this is done via `src/routes/assets.ts`. In the `register` function, add a new entry near the bottom of the function: - -```javascript -app.use(`/${assetPath}/node_modules/i18next/`, persistentCacheStatic(path.join(srcRoot, "..", 'node_modules/i18next/'))); -``` - -### Step 3. Adding it to the library loader - -The library loader is a client module which is in charge of downloading the library from the server and importing it. The loader is located in `src/public/app/services/library_loader.js`. - -To add a new library, start by creating a constant for it, with the value pointing to the minified JS identified at the first step: - -```javascript -const I18NEXT = { - js: [ - "node_modules/i18next/i18next.min.js" - ] -}; -``` - -Then add it to the `export default` section: - -```diff - export default { - requireCss, - requireLibrary, - CKEDITOR, - CODE_MIRROR, - ESLINT, - RELATION_MAP, - PRINT_THIS, - CALENDAR_WIDGET, - KATEX, - WHEEL_ZOOM, - FORCE_GRAPH, - MERMAID, - EXCALIDRAW, -- MARKJS -+ MARKJS, -+ I18NEXT - } -``` - -### Step 4. Using the library - -To import the library, simply use the following mechanism: - -```diff -import library_loader from "./library_loader.js"; - -await library_loader.requireLibrary(library_loader.I18NEXT); -``` - -Make sure to replace `I18NEXT` with the library that was created at the previous steps. - -Note that because we are not using a module management mechanism such as ES Modules or Common.js modules, the `requireLibrary` method does not actually return anything.  - -To benefit from the library, it must export on its own an object in `window`. - -In the case of `i18next`, it sets `window.i18next` and that can be used directly: - -```diff -i18next.init({}); -``` - -### Step 5. Adding Electron support - -For Electron, the `node_modules` are copied as a separate step by `bin/copy-dist.ts`. - -Scroll all the way down to the `nodeModulesFolder` and append an entry for the newly added libraries. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Dependency Management/Having a simpler packaging sys.md b/docs/Developer Guide/Developer Guide/Old documentation/Dependency Management/Having a simpler packaging sys.md deleted file mode 100644 index 05271e390..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Dependency Management/Having a simpler packaging sys.md +++ /dev/null @@ -1,8 +0,0 @@ -# Having a simpler packaging system -The current build scripts are a bit complicated and maintaining them is not easy. - -[Electron Forge](https://www.electronforge.io/) seems more mature and has a boatload of features, including Flatpak, snaps, Windows installers & more. - -Have a look also at the [Plugins](https://www.electronforge.io/config/plugins) section since there are quite a few interesting things there as well. - -Afterwards consider running a new round of Reducing binary size, especially taking into consideration removing of the unnecessary locales. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/Node.js, Electron and `better-.md b/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/Node.js, Electron and `better-.md deleted file mode 100644 index 93b94ab72..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/Node.js, Electron and `better-.md +++ /dev/null @@ -1,36 +0,0 @@ -# Node.js, Electron and `better-sqlite3` -## Node.js, Electron and `better-sqlite3` - -`better-sqlite3` requires a native module in order to work. In order to ease the installation process, prebuilt binaries are provided by the library developers. - -Trilium Next started with version [8.4.0](https://github.com/WiseLibs/better-sqlite3/releases/tag/v8.4.0) for `better-sqlite3` - -| | | | | -| --- | --- | --- | --- | -| `better-sqlite3` version | SQLite version | Node.js prebuilds | Electron.js prebuilds | -| 8.4.0 | <3.43.0 | v20 | ??? | -| 8.5.0 | v20 | v25 | | -| 8.5.1 | | v26 | | -| 8.5.2 | v20 (macOS + arm64) | | | -| 8.6.0 | 3.43.0 | | | -| 8.7.0 | 3.43.1 | | | -| 9.0.0 | 3.43.2 | | v27 | -| 9.1.0 | 3.44.0 | | | -| 9.1.1 | macOS + Alpine | | | -| 9.2.0 | 3.44.2 | | | -| 9.2.1 / 9.2.2 | | v28 | | -| 9.3.0 | 3.45.0 | | | -| 9.4.0 | 3.45.1 | | | -| 9.4.1 | Windows arm, arm64 | | | -| 9.4.2 | | 21 | | | -| 11.1.0 (prerelease) | | | v31 | -| 11.1.1 | | | | -| 11.1.2 | | | | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/Testing compatibility.md b/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/Testing compatibility.md deleted file mode 100644 index 381326055..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/Testing compatibility.md +++ /dev/null @@ -1,15 +0,0 @@ -# Testing compatibility -| `better-sqlite3` version
    [Change log](https://github.com/WiseLibs/better-sqlite3/releases) | SQLite version
    [Change log](https://www.sqlite.org/changes.html) | Compatibility with upstream Trilium | -| --- | --- | --- | -| 8.4.0 | <3.43.0 | Compatible, same version. | -| 8.6.0 | 3.43.0 | | -| 8.7.0 | 3.43.1 | | -| 9.0.0 | 3.43.2 | | -| 9.1.0 + 9.1.1 | 3.44.0 | | -| 9.2.0 + 9.2.1 + 9.2.2 | 3.44.2 | | -| 9.3.0 | 3.45.0 | | -| 9.4.0, 9.4.1, 9.4.2, 9.4.3, 9.4.4, 9.4.5 | 3.45.1 | | -| 9.5.0 | 3.45.2 | | -| 9.6.0 / 10.0.0 | 3.45.3 | | -| 10.1.0 / 11.0.0 / 11.1.1 / 11.1.2 / 11.2.0 / 11.2.1 | 3.46.0 | | -| 11.3.0 | 3.46.1 | | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/bettersqlite binaries.md b/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/bettersqlite binaries.md index 12fdd7e70..5538646ca 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/bettersqlite binaries.md +++ b/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/bettersqlite binaries.md @@ -20,7 +20,7 @@ the module (for instance, using `npm rebuild` or `npm install`). Locally, this can be fixed by rebuilding the binaries, which is what `npm run switch-electron` does, which uses `electron-rebuild` under the hood. -When the deliveries are built (see Build deliveries locally), it is not feasible to rebuild the dependencies since we are building for multiple platforms. Luckily, `better-sqlite3` provides these prebuilt binaries from us, available as artifacts on [their GitHub releases page](https://github.com/WiseLibs/better-sqlite3/releases/).  +When the deliveries are built (see Build deliveries locally), it is not feasible to rebuild the dependencies since we are building for multiple platforms. Luckily, `better-sqlite3` provides these prebuilt binaries from us, available as artifacts on [their GitHub releases page](https://github.com/WiseLibs/better-sqlite3/releases/).  The build script manages the natives for `better-sqlite3` by keeping a copy of the `.node` file for every platform in `bin/better-sqlite3`. @@ -35,7 +35,7 @@ If you get errors during download, check on the [releases page](https://github.c To determine the `NODE_MODULE_VERSION` that is required, look for `This version of Node.js requires` `NODE_MODULE_VERSION` in the error when starting Trilium via: -* `npm run start-electron` (or run any Electron [delivery](../../Build%20deliveries%20locally.md)), case in which the `ELECTRON_VERSION` variable needs to be changed. +* `npm run start-electron` (or run any Electron [delivery](../../../Building/Build%20deliveries%20locally.md)), case in which the `ELECTRON_VERSION` variable needs to be changed. * `npm run start-server` (or run the Linux server delivery), case in which the `NODE_VERSION` variable needs to be changed. -Check which files got changed after running the update script and for each platform that got changed, test it locally via Build deliveries locally or via the CI. \ No newline at end of file +Check which files got changed after running the update script and for each platform that got changed, test it locally via Build deliveries locally or via the CI. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Releasing a version.md b/docs/Developer Guide/Developer Guide/Old documentation/Releasing a version.md index 63b75ddec..ed3706f7e 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Releasing a version.md +++ b/docs/Developer Guide/Developer Guide/Old documentation/Releasing a version.md @@ -17,6 +17,6 @@ If a version ends with `-beta`, it will automatically be marked as pre-release i This will automatically generate a release in GitHub if everything goes according to plan. -Note that the Windows installer is not automatically uploaded yet, it has to be taken from the [main workflow of the CI from the `develop` branch](Building%20and%20deployment/CI/Main.md). +Note that the Windows installer is not automatically uploaded yet, it has to be taken from the [main workflow of the CI from the `develop` branch](../Architecture/CI/Main.md). Make sure to check test the artifacts of the release. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Running a development build.md b/docs/Developer Guide/Developer Guide/Old documentation/Running a development build.md deleted file mode 100644 index 539dc3d03..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Running a development build.md +++ /dev/null @@ -1,89 +0,0 @@ -# Running a development build -As always, install the dependencies for the first time (and re-run whenever there are errors about missing dependencies): - -``` -npm install -``` - -## Run server - -Run with default settings: - -``` -npm run start-server -``` - -Run with custom port: - -``` -TRILIUM_PORT=8082 npm run start-server -``` - -## Run Electron - -Rebuild `better-sqlite3` dependency: - -``` -npm run switch-electron -``` - -Then run Electron: - -``` -npm run start-electron -``` - -To run Electron using the same data directory as the production version: - -``` -npm run start-electron-no-dir -``` - -When done, switch back the `better-sqlite3` dependency: - -``` -npm run switch-server -``` - -## Quick switch - -To start Electron without running `switch-electron` first: - -``` -npm run qstart-electron -``` - -Similarly, to start the server without running `switch-server` first: - -``` -npm run qstart-server -``` - -## Safe mode - -Safe mode is off by default, to enable it temporarily on a Unix shell, prepend the environment variable setting: - -``` -TRILIUM_SAFE_MODE=1 npm run start-server -``` - -To have the same behaviour on Windows, we would need to alter `package.json`: - -```diff --"start-electron": "npm run prepare-dist && cross-env TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron ./dist/electron-main.js --inspect=5858 .", -+"start-electron": "npm run prepare-dist && cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron ./dist/electron-main.js --inspect=5858 .", -``` - -## Running on NixOS - -When doing development, the Electron binary retrieved from NPM is not going to be compatible with NixOS, resulting in errors when trying to run it. To bypass this, there is a special command to run electron using `nix-shell`: - -``` -npm run start-electron-nix -``` - -Similarly to the original command, to use the same data directory as the production version: - -``` -npm run start-electron-no-dir-nix -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Project Structure.md b/docs/Developer Guide/Developer Guide/Project Structure.md index 465f1a572..82688cf2a 100644 --- a/docs/Developer Guide/Developer Guide/Project Structure.md +++ b/docs/Developer Guide/Developer Guide/Project Structure.md @@ -20,25 +20,9 @@ For example to run the server instance: pnpm server:start ``` -## Important tasks +## Running and building -Each application has a number of tasks. Here's a non-exhaustive list of the tasks that are useful during development. - -To run any of the tasks, use `pnpm project:task`: - -* `client`: - * The client is not meant to be run by itself, despite being described as an app. See the documentation on the server instead. -* `server`: - * To run the server in development mode, run `server:start`. The dev port is `8080`. - * To run the server in production mode (with its own copy of the assets), run `server:start-prod`. - * To build for Docker, see Docker. -* `desktop`: - * To run the desktop in development mode with watch, run `desktop:start`. - * To run the desktop in production mode, run `desktop:start-prod`. - -## Building packages - -Generally, the building process of a project generates a `dist` folder containing everything needed for production. +Each application has a number of tasks. Here's a non-exhaustive list of the tasks that are useful during development. See Building. ## Managing dependencies across the mono-repo From 5a7349121a436e452435c0a9df3d3aa5b70bf127 Mon Sep 17 00:00:00 2001 From: SiriusXT <1160925501@qq.com> Date: Tue, 4 Nov 2025 09:24:18 +0800 Subject: [PATCH 098/136] fix: incorrect options description --- apps/client/src/widgets/type_widgets/options/text_notes.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/client/src/widgets/type_widgets/options/text_notes.tsx b/apps/client/src/widgets/type_widgets/options/text_notes.tsx index 4e2475922..0dd102145 100644 --- a/apps/client/src/widgets/type_widgets/options/text_notes.tsx +++ b/apps/client/src/widgets/type_widgets/options/text_notes.tsx @@ -72,8 +72,8 @@ function EditorFeatures() { return ( - - + + ); } From caf88473f64b9b91c8c62c2213e7abef055e4148 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 01:38:35 +0000 Subject: [PATCH 099/136] chore(deps): update dependency sax to v1.4.2 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 26 ++++++++++++-------------- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index d6d634be2..360890656 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -115,7 +115,7 @@ "safe-compare": "1.1.4", "sanitize-filename": "1.6.3", "sanitize-html": "2.17.0", - "sax": "1.4.1", + "sax": "1.4.2", "serve-favicon": "2.5.1", "stream-throttle": "0.1.3", "strip-bom": "5.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 98c93f61d..8ba30f57b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -745,8 +745,8 @@ importers: specifier: 2.17.0 version: 2.17.0 sax: - specifier: 1.4.1 - version: 1.4.1 + specifier: 1.4.2 + version: 1.4.2 serve-favicon: specifier: 2.5.1 version: 2.5.1 @@ -12879,8 +12879,8 @@ packages: engines: {node: '>=14.0.0'} hasBin: true - sax@1.4.1: - resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + sax@1.4.2: + resolution: {integrity: sha512-FySGAa0RGcFiN6zfrO9JvK1r7TB59xuzCcTHOBXBNoKgDejlOQCR2KL/FGk3/iDlsqyYg1ELZpOmlg09B01Czw==} saxes@5.0.1: resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} @@ -15684,8 +15684,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15940,8 +15938,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -16438,6 +16434,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -17720,7 +17718,7 @@ snapshots: '@file-type/xml@0.4.3': dependencies: - sax: 1.4.1 + sax: 1.4.2 strtok3: 10.2.2 '@floating-ui/core@1.6.9': @@ -27378,7 +27376,7 @@ snapshots: needle@3.3.1: dependencies: iconv-lite: 0.6.3 - sax: 1.4.1 + sax: 1.4.2 optional: true negotiator@0.6.3: {} @@ -29817,7 +29815,7 @@ snapshots: '@parcel/watcher': 2.5.1 optional: true - sax@1.4.1: {} + sax@1.4.2: {} saxes@5.0.1: dependencies: @@ -30813,7 +30811,7 @@ snapshots: css-what: 6.2.2 csso: 5.0.5 picocolors: 1.1.1 - sax: 1.4.1 + sax: 1.4.2 swagger-jsdoc@6.2.8(openapi-types@12.1.3): dependencies: @@ -32147,12 +32145,12 @@ snapshots: xml2js@0.5.0: dependencies: - sax: 1.4.1 + sax: 1.4.2 xmlbuilder: 11.0.1 xml2js@0.6.2: dependencies: - sax: 1.4.1 + sax: 1.4.2 xmlbuilder: 11.0.1 xmlbuilder@11.0.1: {} From 25d9695db03a8b14fdd86ea778f31f438d3ece66 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 01:40:28 +0000 Subject: [PATCH 100/136] fix(deps): update dependency eslint-linter-browserify to v9.39.1 --- packages/codemirror/package.json | 2 +- pnpm-lock.yaml | 16 +++++++--------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/packages/codemirror/package.json b/packages/codemirror/package.json index dfb44d686..7bdc83796 100644 --- a/packages/codemirror/package.json +++ b/packages/codemirror/package.json @@ -50,6 +50,6 @@ "codemirror-lang-elixir": "4.0.0", "codemirror-lang-hcl": "0.1.0", "codemirror-lang-mermaid": "0.5.0", - "eslint-linter-browserify": "9.39.0" + "eslint-linter-browserify": "9.39.1" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 98c93f61d..a8d3a6ab1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1319,8 +1319,8 @@ importers: specifier: 0.5.0 version: 0.5.0 eslint-linter-browserify: - specifier: 9.39.0 - version: 9.39.0 + specifier: 9.39.1 + version: 9.39.1 packages/commons: {} @@ -8013,8 +8013,8 @@ packages: peerDependencies: eslint: '>=7.0.0' - eslint-linter-browserify@9.39.0: - resolution: {integrity: sha512-SmFk1DwXcC+p2IjHAouYjjJcAKAiSMlMrJgc8w2s1W3D00FM2sC6SHeCd8Axy1T5sB8oMVMt23GuCun8/UFo1Q==} + eslint-linter-browserify@9.39.1: + resolution: {integrity: sha512-XdoocZkDVe9svpVe1V9q0cW3pufacQ0z7Unhu4E4AaeHHxF4AZa5+HRHYMKO30NUKEQfDv+ITibXUNi1C6QGbQ==} eslint-plugin-ckeditor5-rules@12.2.0: resolution: {integrity: sha512-WgQP9aZo1N7bIDwwf2Wsnd0RpL20MAVxEehhYoFWy7HAMAnV3IliKuU3dsFA35O8cK4q7eKz7FiObwSRAfttQA==} @@ -15684,8 +15684,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15940,8 +15938,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -16438,6 +16434,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -24065,7 +24063,7 @@ snapshots: dependencies: eslint: 9.39.0(jiti@2.6.1) - eslint-linter-browserify@9.39.0: {} + eslint-linter-browserify@9.39.1: {} eslint-plugin-ckeditor5-rules@12.2.0: dependencies: From 3b531544a3663fe4699fbdb2b879db5524a514b3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 01:41:09 +0000 Subject: [PATCH 101/136] fix(deps): update dependency react-i18next to v16.2.4 --- apps/client/package.json | 2 +- apps/website/package.json | 2 +- pnpm-lock.yaml | 16 +++++++++------- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/apps/client/package.json b/apps/client/package.json index c080281ec..28a7446b3 100644 --- a/apps/client/package.json +++ b/apps/client/package.json @@ -59,7 +59,7 @@ "normalize.css": "8.0.1", "panzoom": "9.4.3", "preact": "10.27.2", - "react-i18next": "16.2.3", + "react-i18next": "16.2.4", "reveal.js": "5.2.1", "svg-pan-zoom": "3.6.2", "tabulator-tables": "6.3.1", diff --git a/apps/website/package.json b/apps/website/package.json index 51a78d27c..f9500c7f4 100644 --- a/apps/website/package.json +++ b/apps/website/package.json @@ -14,7 +14,7 @@ "preact": "10.27.2", "preact-iso": "2.11.0", "preact-render-to-string": "6.6.3", - "react-i18next": "16.2.3" + "react-i18next": "16.2.4" }, "devDependencies": { "@preact/preset-vite": "2.10.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 98c93f61d..1a6afe0ce 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -284,8 +284,8 @@ importers: specifier: 10.27.2 version: 10.27.2 react-i18next: - specifier: 16.2.3 - version: 16.2.3(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3) + specifier: 16.2.4 + version: 16.2.4(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3) reveal.js: specifier: 5.2.1 version: 5.2.1 @@ -814,8 +814,8 @@ importers: specifier: 6.6.3 version: 6.6.3(preact@10.27.2) react-i18next: - specifier: 16.2.3 - version: 16.2.3(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3) + specifier: 16.2.4 + version: 16.2.4(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3) devDependencies: '@preact/preset-vite': specifier: 2.10.2 @@ -12320,8 +12320,8 @@ packages: peerDependencies: react: ^19.2.0 - react-i18next@16.2.3: - resolution: {integrity: sha512-O0t2zvmIz7nHWKNfIL+O/NTIbpTaOPY0vZov779hegbep3IZ+xcqkeVPKWBSXwzdkiv77q8zmq9toKIUys1x3A==} + react-i18next@16.2.4: + resolution: {integrity: sha512-pvbcPQ+YuQQoRkKBA4VCU9aO8dOgP/vdKEizIYXcAk3+AmI8yQKSJaCzxQQu4Kgg2zWZm3ax9KqHv8ItUlRY0A==} peerDependencies: i18next: '>= 25.5.2' react: '>= 16.8.0' @@ -16438,6 +16438,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -29110,7 +29112,7 @@ snapshots: react: 19.2.0 scheduler: 0.27.0 - react-i18next@16.2.3(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3): + react-i18next@16.2.4(i18next@25.6.0(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.4 html-parse-stringify: 3.0.1 From 4c90319c9e248a5c5d8300ba5f3244d06a99c305 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 01:41:49 +0000 Subject: [PATCH 102/136] fix(deps): update eslint monorepo to v9.39.1 --- _regroup/package.json | 2 +- apps/client/package.json | 2 +- apps/website/package.json | 2 +- package.json | 2 +- packages/ckeditor5-admonition/package.json | 2 +- packages/ckeditor5-footnotes/package.json | 2 +- .../ckeditor5-keyboard-marker/package.json | 2 +- packages/ckeditor5-math/package.json | 2 +- packages/ckeditor5-mermaid/package.json | 2 +- packages/share-theme/package.json | 2 +- pnpm-lock.yaml | 206 +++++++++--------- 11 files changed, 113 insertions(+), 113 deletions(-) diff --git a/_regroup/package.json b/_regroup/package.json index fd13c78f1..ce0e70d45 100644 --- a/_regroup/package.json +++ b/_regroup/package.json @@ -41,7 +41,7 @@ "@types/node": "24.10.0", "@types/yargs": "17.0.34", "@vitest/coverage-v8": "3.2.4", - "eslint": "9.39.0", + "eslint": "9.39.1", "eslint-plugin-simple-import-sort": "12.1.1", "esm": "3.2.25", "jsdoc": "4.0.5", diff --git a/apps/client/package.json b/apps/client/package.json index c080281ec..7bece4697 100644 --- a/apps/client/package.json +++ b/apps/client/package.json @@ -15,7 +15,7 @@ "circular-deps": "dpdm -T src/**/*.ts --tree=false --warning=false --skip-dynamic-imports=circular" }, "dependencies": { - "@eslint/js": "9.39.0", + "@eslint/js": "9.39.1", "@excalidraw/excalidraw": "0.18.0", "@fullcalendar/core": "6.1.19", "@fullcalendar/daygrid": "6.1.19", diff --git a/apps/website/package.json b/apps/website/package.json index 51a78d27c..ce3042b13 100644 --- a/apps/website/package.json +++ b/apps/website/package.json @@ -18,7 +18,7 @@ }, "devDependencies": { "@preact/preset-vite": "2.10.2", - "eslint": "9.39.0", + "eslint": "9.39.1", "eslint-config-preact": "2.0.0", "typescript": "5.9.3", "user-agent-data-types": "0.4.2", diff --git a/package.json b/package.json index e27962d2f..0bb66772d 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "cross-env": "10.1.0", "dpdm": "3.14.0", "esbuild": "0.25.12", - "eslint": "9.39.0", + "eslint": "9.39.1", "eslint-config-prettier": "10.1.8", "eslint-plugin-playwright": "2.3.0", "eslint-plugin-react-hooks": "7.0.1", diff --git a/packages/ckeditor5-admonition/package.json b/packages/ckeditor5-admonition/package.json index bc32ffc98..5b2d4d01c 100644 --- a/packages/ckeditor5-admonition/package.json +++ b/packages/ckeditor5-admonition/package.json @@ -29,7 +29,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.39.0", + "eslint": "9.39.1", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/ckeditor5-footnotes/package.json b/packages/ckeditor5-footnotes/package.json index 2835113b1..635e85d9e 100644 --- a/packages/ckeditor5-footnotes/package.json +++ b/packages/ckeditor5-footnotes/package.json @@ -30,7 +30,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.39.0", + "eslint": "9.39.1", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/ckeditor5-keyboard-marker/package.json b/packages/ckeditor5-keyboard-marker/package.json index cfbef699b..756ae241f 100644 --- a/packages/ckeditor5-keyboard-marker/package.json +++ b/packages/ckeditor5-keyboard-marker/package.json @@ -32,7 +32,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.39.0", + "eslint": "9.39.1", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/ckeditor5-math/package.json b/packages/ckeditor5-math/package.json index 97573e4aa..bb69ab804 100644 --- a/packages/ckeditor5-math/package.json +++ b/packages/ckeditor5-math/package.json @@ -33,7 +33,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.39.0", + "eslint": "9.39.1", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/ckeditor5-mermaid/package.json b/packages/ckeditor5-mermaid/package.json index c924a95b6..f0123cca6 100644 --- a/packages/ckeditor5-mermaid/package.json +++ b/packages/ckeditor5-mermaid/package.json @@ -32,7 +32,7 @@ "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", - "eslint": "9.39.0", + "eslint": "9.39.1", "eslint-config-ckeditor5": ">=9.1.0", "http-server": "14.1.1", "lint-staged": "16.2.6", diff --git a/packages/share-theme/package.json b/packages/share-theme/package.json index 1fd56501e..0919ebf10 100644 --- a/packages/share-theme/package.json +++ b/packages/share-theme/package.json @@ -36,7 +36,7 @@ "@typescript-eslint/parser": "8.46.2", "dotenv": "17.2.3", "esbuild": "0.25.12", - "eslint": "9.39.0", + "eslint": "9.39.1", "highlight.js": "11.11.1", "typescript": "5.9.3" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 98c93f61d..4f12ed67b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -74,17 +74,17 @@ importers: specifier: 0.25.12 version: 0.25.12 eslint: - specifier: 9.39.0 - version: 9.39.0(jiti@2.6.1) + specifier: 9.39.1 + version: 9.39.1(jiti@2.6.1) eslint-config-prettier: specifier: 10.1.8 - version: 10.1.8(eslint@9.39.0(jiti@2.6.1)) + version: 10.1.8(eslint@9.39.1(jiti@2.6.1)) eslint-plugin-playwright: specifier: 2.3.0 - version: 2.3.0(eslint@9.39.0(jiti@2.6.1)) + version: 2.3.0(eslint@9.39.1(jiti@2.6.1)) eslint-plugin-react-hooks: specifier: 7.0.1 - version: 7.0.1(eslint@9.39.0(jiti@2.6.1)) + version: 7.0.1(eslint@9.39.1(jiti@2.6.1)) happy-dom: specifier: ~20.0.0 version: 20.0.10 @@ -111,7 +111,7 @@ importers: version: 5.9.3 typescript-eslint: specifier: 8.46.2 - version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) upath: specifier: 2.0.1 version: 2.0.1 @@ -152,8 +152,8 @@ importers: apps/client: dependencies: '@eslint/js': - specifier: 9.39.0 - version: 9.39.0 + specifier: 9.39.1 + version: 9.39.1 '@excalidraw/excalidraw': specifier: 0.18.0 version: 0.18.0(@types/react-dom@19.1.6(@types/react@19.1.7))(@types/react@19.1.7)(react-dom@19.2.0(react@19.2.0))(react@19.2.0) @@ -821,11 +821,11 @@ importers: specifier: 2.10.2 version: 2.10.2(@babel/core@7.28.0)(preact@10.27.2)(vite@7.1.12(@types/node@24.10.0)(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)) eslint: - specifier: 9.39.0 - version: 9.39.0(jiti@2.6.1) + specifier: 9.39.1 + version: 9.39.1(jiti@2.6.1) eslint-config-preact: specifier: 2.0.0 - version: 2.0.0(eslint@9.39.0(jiti@2.6.1)) + version: 2.0.0(eslint@9.39.1(jiti@2.6.1)) typescript: specifier: 5.9.3 version: 5.9.3 @@ -880,10 +880,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -894,11 +894,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.39.0 - version: 9.39.0(jiti@2.6.1) + specifier: 9.39.1 + version: 9.39.1(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -940,10 +940,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -954,11 +954,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.39.0 - version: 9.39.0(jiti@2.6.1) + specifier: 9.39.1 + version: 9.39.1(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -1000,10 +1000,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1014,11 +1014,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.39.0 - version: 9.39.0(jiti@2.6.1) + specifier: 9.39.1 + version: 9.39.1(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -1067,10 +1067,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1081,11 +1081,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.39.0 - version: 9.39.0(jiti@2.6.1) + specifier: 9.39.1 + version: 9.39.1(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -1134,10 +1134,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1148,11 +1148,11 @@ importers: specifier: 47.1.0 version: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) eslint: - specifier: 9.39.0 - version: 9.39.0(jiti@2.6.1) + specifier: 9.39.1 + version: 9.39.1(jiti@2.6.1) eslint-config-ckeditor5: specifier: '>=9.1.0' - version: 12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 12.2.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) http-server: specifier: 14.1.1 version: 14.1.1 @@ -1371,10 +1371,10 @@ importers: version: link:../ckeditor5 '@typescript-eslint/eslint-plugin': specifier: 8.46.2 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 8.46.2 - version: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) dotenv: specifier: 17.2.3 version: 17.2.3 @@ -1382,8 +1382,8 @@ importers: specifier: 0.25.12 version: 0.25.12 eslint: - specifier: 9.39.0 - version: 9.39.0(jiti@2.6.1) + specifier: 9.39.1 + version: 9.39.1(jiti@2.6.1) highlight.js: specifier: 11.11.1 version: 11.11.1 @@ -2831,8 +2831,8 @@ packages: resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.39.0': - resolution: {integrity: sha512-BIhe0sW91JGPiaF1mOuPy5v8NflqfjIcDNpC+LbW9f609WVRX1rArrhi6Z2ymvrAry9jw+5POTj4t2t62o8Bmw==} + '@eslint/js@9.39.1': + resolution: {integrity: sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/markdown@6.6.0': @@ -8074,8 +8074,8 @@ packages: resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.39.0: - resolution: {integrity: sha512-iy2GE3MHrYTL5lrCtMZ0X1KLEKKUjmK0kzwcnefhR66txcEmXZD2YWgR5GNdcEwkNx3a0siYkSvl0vIC+Svjmg==} + eslint@9.39.1: + resolution: {integrity: sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -15328,11 +15328,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/eslint-parser@7.28.4(@babel/core@7.28.0)(eslint@9.39.0(jiti@2.6.1))': + '@babel/eslint-parser@7.28.4(@babel/core@7.28.0)(eslint@9.39.1(jiti@2.6.1))': dependencies: '@babel/core': 7.28.0 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) eslint-visitor-keys: 2.1.0 semver: 6.3.1 @@ -15747,8 +15747,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -16438,6 +16436,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -17576,9 +17576,9 @@ snapshots: '@esbuild/win32-x64@0.25.12': optional: true - '@eslint-community/eslint-utils@4.9.0(eslint@9.39.0(jiti@2.6.1))': + '@eslint-community/eslint-utils@4.9.0(eslint@9.39.1(jiti@2.6.1))': dependencies: - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} @@ -17621,7 +17621,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.39.0': {} + '@eslint/js@9.39.1': {} '@eslint/markdown@6.6.0': dependencies: @@ -20170,10 +20170,10 @@ snapshots: '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 - '@stylistic/eslint-plugin@4.4.1(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': + '@stylistic/eslint-plugin@4.4.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@typescript-eslint/utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) - eslint: 9.39.0(jiti@2.6.1) + '@typescript-eslint/utils': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.1(jiti@2.6.1) eslint-visitor-keys: 4.2.1 espree: 10.4.0 estraverse: 5.3.0 @@ -20869,15 +20869,15 @@ snapshots: '@types/node': 24.10.0 optional: true - '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/scope-manager': 8.46.2 - '@typescript-eslint/type-utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/type-utils': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.46.2 - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) graphemer: 1.4.0 ignore: 7.0.5 natural-compare: 1.4.0 @@ -20886,14 +20886,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 8.46.2 '@typescript-eslint/types': 8.46.2 '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.46.2 debug: 4.4.3(supports-color@6.0.0) - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -20916,13 +20916,13 @@ snapshots: dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 8.46.2 '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) - '@typescript-eslint/utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) debug: 4.4.3(supports-color@6.0.0) - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) ts-api-utils: 2.1.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -20946,13 +20946,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/utils@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.0(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) '@typescript-eslint/scope-manager': 8.46.2 '@typescript-eslint/types': 8.46.2 '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -24032,38 +24032,38 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-config-ckeditor5@12.2.0(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3): + eslint-config-ckeditor5@12.2.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3): dependencies: - '@eslint/js': 9.39.0 + '@eslint/js': 9.39.1 '@eslint/markdown': 6.6.0 - '@stylistic/eslint-plugin': 4.4.1(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) - eslint: 9.39.0(jiti@2.6.1) + '@stylistic/eslint-plugin': 4.4.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.1(jiti@2.6.1) eslint-plugin-ckeditor5-rules: 12.2.0 - eslint-plugin-mocha: 11.2.0(eslint@9.39.0(jiti@2.6.1)) + eslint-plugin-mocha: 11.2.0(eslint@9.39.1(jiti@2.6.1)) globals: 16.5.0 typescript: 5.9.3 - typescript-eslint: 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + typescript-eslint: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) transitivePeerDependencies: - supports-color - eslint-config-preact@2.0.0(eslint@9.39.0(jiti@2.6.1)): + eslint-config-preact@2.0.0(eslint@9.39.1(jiti@2.6.1)): dependencies: '@babel/core': 7.28.0 - '@babel/eslint-parser': 7.28.4(@babel/core@7.28.0)(eslint@9.39.0(jiti@2.6.1)) + '@babel/eslint-parser': 7.28.4(@babel/core@7.28.0)(eslint@9.39.1(jiti@2.6.1)) '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.28.0) '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.0) - '@eslint/js': 9.39.0 - eslint: 9.39.0(jiti@2.6.1) - eslint-plugin-compat: 6.0.2(eslint@9.39.0(jiti@2.6.1)) - eslint-plugin-react: 7.37.5(eslint@9.39.0(jiti@2.6.1)) - eslint-plugin-react-hooks: 5.2.0(eslint@9.39.0(jiti@2.6.1)) + '@eslint/js': 9.39.1 + eslint: 9.39.1(jiti@2.6.1) + eslint-plugin-compat: 6.0.2(eslint@9.39.1(jiti@2.6.1)) + eslint-plugin-react: 7.37.5(eslint@9.39.1(jiti@2.6.1)) + eslint-plugin-react-hooks: 5.2.0(eslint@9.39.1(jiti@2.6.1)) globals: 16.5.0 transitivePeerDependencies: - supports-color - eslint-config-prettier@10.1.8(eslint@9.39.0(jiti@2.6.1)): + eslint-config-prettier@10.1.8(eslint@9.39.1(jiti@2.6.1)): dependencies: - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) eslint-linter-browserify@9.39.0: {} @@ -24077,45 +24077,45 @@ snapshots: validate-npm-package-name: 6.0.2 yaml: 2.8.1 - eslint-plugin-compat@6.0.2(eslint@9.39.0(jiti@2.6.1)): + eslint-plugin-compat@6.0.2(eslint@9.39.1(jiti@2.6.1)): dependencies: '@mdn/browser-compat-data': 5.7.6 ast-metadata-inferer: 0.8.1 browserslist: 4.26.2 caniuse-lite: 1.0.30001743 - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) find-up: 5.0.0 globals: 15.15.0 lodash.memoize: 4.1.2 semver: 7.7.2 - eslint-plugin-mocha@11.2.0(eslint@9.39.0(jiti@2.6.1)): + eslint-plugin-mocha@11.2.0(eslint@9.39.1(jiti@2.6.1)): dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.0(jiti@2.6.1)) - eslint: 9.39.0(jiti@2.6.1) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) + eslint: 9.39.1(jiti@2.6.1) globals: 15.15.0 - eslint-plugin-playwright@2.3.0(eslint@9.39.0(jiti@2.6.1)): + eslint-plugin-playwright@2.3.0(eslint@9.39.1(jiti@2.6.1)): dependencies: - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) globals: 16.5.0 - eslint-plugin-react-hooks@5.2.0(eslint@9.39.0(jiti@2.6.1)): + eslint-plugin-react-hooks@5.2.0(eslint@9.39.1(jiti@2.6.1)): dependencies: - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) - eslint-plugin-react-hooks@7.0.1(eslint@9.39.0(jiti@2.6.1)): + eslint-plugin-react-hooks@7.0.1(eslint@9.39.1(jiti@2.6.1)): dependencies: '@babel/core': 7.28.0 '@babel/parser': 7.28.4 - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) hermes-parser: 0.25.1 zod: 4.1.12 zod-validation-error: 3.5.3(zod@4.1.12) transitivePeerDependencies: - supports-color - eslint-plugin-react@7.37.5(eslint@9.39.0(jiti@2.6.1)): + eslint-plugin-react@7.37.5(eslint@9.39.1(jiti@2.6.1)): dependencies: array-includes: 3.1.9 array.prototype.findlast: 1.2.5 @@ -24123,7 +24123,7 @@ snapshots: array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 es-iterator-helpers: 1.2.1 - eslint: 9.39.0(jiti@2.6.1) + eslint: 9.39.1(jiti@2.6.1) estraverse: 5.3.0 hasown: 2.0.2 jsx-ast-utils: 3.3.5 @@ -24153,15 +24153,15 @@ snapshots: eslint-visitor-keys@4.2.1: {} - eslint@9.39.0(jiti@2.6.1): + eslint@9.39.1(jiti@2.6.1): dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.0(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) '@eslint-community/regexpp': 4.12.1 '@eslint/config-array': 0.21.1 '@eslint/config-helpers': 0.4.2 '@eslint/core': 0.17.0 '@eslint/eslintrc': 3.3.1 - '@eslint/js': 9.39.0 + '@eslint/js': 9.39.1 '@eslint/plugin-kit': 0.4.1 '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 @@ -31299,13 +31299,13 @@ snapshots: typescript: 5.9.3 yaml: 2.8.1 - typescript-eslint@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3): + typescript-eslint@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/parser': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/eslint-plugin': 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) - '@typescript-eslint/utils': 8.46.2(eslint@9.39.0(jiti@2.6.1))(typescript@5.9.3) - eslint: 9.39.0(jiti@2.6.1) + '@typescript-eslint/utils': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.1(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color From f8b8edd5aa97937ff21b35276477e57b4fa401c3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 01:42:30 +0000 Subject: [PATCH 103/136] chore(deps): update dependency openai to v6.8.0 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 16 +++++++--------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index d6d634be2..e18105c4d 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -110,7 +110,7 @@ "multer": "2.0.2", "normalize-strings": "1.1.1", "ollama": "0.6.2", - "openai": "6.7.0", + "openai": "6.8.0", "rand-token": "1.0.1", "safe-compare": "1.1.4", "sanitize-filename": "1.6.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 98c93f61d..43dce8be7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -730,8 +730,8 @@ importers: specifier: 0.6.2 version: 0.6.2 openai: - specifier: 6.7.0 - version: 6.7.0(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@4.1.12) + specifier: 6.8.0 + version: 6.8.0(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@4.1.12) rand-token: specifier: 1.0.1 version: 1.0.1 @@ -10928,8 +10928,8 @@ packages: resolution: {integrity: sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA==} engines: {node: '>=18'} - openai@6.7.0: - resolution: {integrity: sha512-mgSQXa3O/UXTbA8qFzoa7aydbXBJR5dbLQXCRapAOtoNT+v69sLdKMZzgiakpqhclRnhPggPAXoniVGn2kMY2A==} + openai@6.8.0: + resolution: {integrity: sha512-GQUpzb9FoNkh1wqJuDIQ8e/Sq8dW+T3GakG6wJTXBE8Lufx1GaUcgZd087vhm8f/MiOzsTEkfRamYxzJ/jOoiw==} hasBin: true peerDependencies: ws: ^8.18.0 @@ -15684,8 +15684,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15940,8 +15938,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -16438,6 +16434,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-restricted-editing@47.1.0': dependencies: @@ -27733,7 +27731,7 @@ snapshots: is-inside-container: 1.0.0 wsl-utils: 0.1.0 - openai@6.7.0(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@4.1.12): + openai@6.8.0(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@4.1.12): optionalDependencies: ws: 8.18.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) zod: 4.1.12 From 1fa3420abe9021e1a12fdfe0ff3b67b39c0e38d6 Mon Sep 17 00:00:00 2001 From: "Francis C." Date: Mon, 3 Nov 2025 02:12:04 +0100 Subject: [PATCH 104/136] Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 100.0% (387 of 387 strings) Translation: Trilium Notes/Server Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hant/ --- apps/server/src/assets/translations/tw/server.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/server/src/assets/translations/tw/server.json b/apps/server/src/assets/translations/tw/server.json index 8d29cc64f..33c9faa8c 100644 --- a/apps/server/src/assets/translations/tw/server.json +++ b/apps/server/src/assets/translations/tw/server.json @@ -417,7 +417,7 @@ "end-time": "結束時間", "geolocation": "地理位置", "built-in-templates": "內建模版", - "board": "儀表板", + "board": "看板", "status": "狀態", "board_note_first": "第一個筆記", "board_note_second": "第二個筆記", From f89c14b35ad5f353c7532eb5ba7b64b4c0244321 Mon Sep 17 00:00:00 2001 From: Giovi Date: Mon, 3 Nov 2025 13:11:49 +0100 Subject: [PATCH 105/136] Translated using Weblate (Italian) Currently translated at 100.0% (1617 of 1617 strings) Translation: Trilium Notes/Client Translate-URL: https://hosted.weblate.org/projects/trilium/client/it/ --- apps/client/src/translations/it/translation.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/client/src/translations/it/translation.json b/apps/client/src/translations/it/translation.json index 5105b13f3..52c029ffb 100644 --- a/apps/client/src/translations/it/translation.json +++ b/apps/client/src/translations/it/translation.json @@ -109,7 +109,8 @@ "export_type_single": "Solo questa nota, senza le sottostanti", "format_opml": "OPML - formato per scambio informazioni outline. Formattazione, immagini e files non sono inclusi.", "opml_version_1": "OPML v.1.0 - solo testo semplice", - "opml_version_2": "OPML v2.0 - supporta anche HTML" + "opml_version_2": "OPML v2.0 - supporta anche HTML", + "share-format": "HTML per la pubblicazione sul web - utilizza lo stesso tema utilizzato per le note condivise, ma può essere pubblicato come sito web statico." }, "password_not_set": { "body1": "Le note protette sono crittografate utilizzando una password utente, ma la password non è stata ancora impostata.", From 33c64b604e354173dcec84eaf8b2a4c90f600d54 Mon Sep 17 00:00:00 2001 From: Giovi Date: Mon, 3 Nov 2025 13:12:41 +0100 Subject: [PATCH 106/136] Translated using Weblate (Italian) Currently translated at 99.7% (386 of 387 strings) Translation: Trilium Notes/Server Translate-URL: https://hosted.weblate.org/projects/trilium/server/it/ --- apps/server/src/assets/translations/it/server.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/server/src/assets/translations/it/server.json b/apps/server/src/assets/translations/it/server.json index 1b88e03d7..0b64f0fee 100644 --- a/apps/server/src/assets/translations/it/server.json +++ b/apps/server/src/assets/translations/it/server.json @@ -420,7 +420,7 @@ "end-time": "Ora di fine", "geolocation": "Geolocalizzazione", "built-in-templates": "Modelli integrati", - "board": "Tavola", + "board": "Kanban Board", "status": "Stato", "board_note_first": "Prima nota", "board_note_second": "Seconda nota", From a42daccc2ef9f0b78e0f44f6b856c3fad838b540 Mon Sep 17 00:00:00 2001 From: Giovi Date: Mon, 3 Nov 2025 13:12:27 +0100 Subject: [PATCH 107/136] Translated using Weblate (Italian) Currently translated at 99.3% (151 of 152 strings) Translation: Trilium Notes/Website Translate-URL: https://hosted.weblate.org/projects/trilium/website/it/ --- apps/website/src/translations/it/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/website/src/translations/it/translation.json b/apps/website/src/translations/it/translation.json index 03792e5ed..915396c1a 100644 --- a/apps/website/src/translations/it/translation.json +++ b/apps/website/src/translations/it/translation.json @@ -70,7 +70,7 @@ "calendar_description": "Organizza i tuoi eventi personali o professionali utilizzando un calendario, con supporto per eventi di un giorno intero o di più giorni. Visualizza i tuoi eventi a colpo d'occhio con le viste settimanale, mensile e annuale. Interazione semplice per aggiungere o trascinare eventi.", "table_title": "Tabella", "table_description": "Visualizza e modifica le informazioni relative alle note in una struttura tabellare, con vari tipi di colonne quali testo, numeri, caselle di controllo, data e ora, collegamenti e colori, oltre al supporto per le relazioni. Facoltativamente, è possibile visualizzare le note all'interno di una gerarchia ad albero all'interno della tabella.", - "board_title": "Board", + "board_title": "Kanban Board", "board_description": "Organizza le tue attività o lo stato dei tuoi progetti in una lavagna Kanban con un modo semplice per creare nuovi elementi e colonne e modificare facilmente il loro stato trascinandoli sulla lavagna.", "geomap_title": "Geomappa", "geomap_description": "Pianifica le tue vacanze o segna i tuoi punti di interesse direttamente su una mappa geografica utilizzando indicatori personalizzabili. Visualizza le tracce GPX registrate per seguire gli itinerari.", From 93d77ca06e3297ed1621c6e4df8b0234b535db95 Mon Sep 17 00:00:00 2001 From: "Francis C." Date: Mon, 3 Nov 2025 02:11:50 +0100 Subject: [PATCH 108/136] Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 100.0% (152 of 152 strings) Translation: Trilium Notes/Website Translate-URL: https://hosted.weblate.org/projects/trilium/website/zh_Hant/ --- apps/website/src/translations/zh-Hant/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/website/src/translations/zh-Hant/translation.json b/apps/website/src/translations/zh-Hant/translation.json index 79ac2185b..f5ef4764b 100644 --- a/apps/website/src/translations/zh-Hant/translation.json +++ b/apps/website/src/translations/zh-Hant/translation.json @@ -70,7 +70,7 @@ "calendar_description": "使用行事曆規劃個人或專業活動,支援全天及多日活動。透過週、月、年檢視模式,一覽所有活動。通過簡單互動即可新增或拖曳活動。", "table_title": "表格", "table_description": "以表格結構顯示並編輯筆記資訊,支援多種欄位類型,包括文字、數字、核取方塊、日期與時間、連結及顏色,並支援關聯功能。可選擇性地在表格內以樹狀層級結構顯示筆記內容。", - "board_title": "儀表板", + "board_title": "看板", "board_description": "將您的任務或專案狀態整理成看板,輕鬆建立新項目與欄位,並透過在看板上拖曳即可簡單變更狀態。", "geomap_title": "地理地圖", "geomap_description": "使用可自訂的標記,直接在地圖上規劃您的假期行程或標記感興趣的地點。顯示已記錄的GPX軌跡,以便追蹤行程路線。", From 3faac9f26e43ff510fe90e51e12d1360f5619a1f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 05:35:53 +0000 Subject: [PATCH 109/136] chore(deps): update typescript-eslint monorepo to v8.46.3 --- package.json | 2 +- packages/ckeditor5-admonition/package.json | 2 +- packages/ckeditor5-footnotes/package.json | 2 +- .../ckeditor5-keyboard-marker/package.json | 2 +- packages/ckeditor5-math/package.json | 2 +- packages/ckeditor5-mermaid/package.json | 2 +- packages/share-theme/package.json | 4 +- pnpm-lock.yaml | 254 +++++++++++++++--- 8 files changed, 224 insertions(+), 46 deletions(-) diff --git a/package.json b/package.json index 0bb66772d..9533d10c1 100644 --- a/package.json +++ b/package.json @@ -61,7 +61,7 @@ "tslib": "2.8.1", "tsx": "4.20.6", "typescript": "~5.9.0", - "typescript-eslint": "8.46.2", + "typescript-eslint": "8.46.3", "upath": "2.0.1", "vite": "7.1.12", "vite-plugin-dts": "~4.5.0", diff --git a/packages/ckeditor5-admonition/package.json b/packages/ckeditor5-admonition/package.json index 5b2d4d01c..7b75a79ba 100644 --- a/packages/ckeditor5-admonition/package.json +++ b/packages/ckeditor5-admonition/package.json @@ -25,7 +25,7 @@ "@ckeditor/ckeditor5-inspector": ">=4.1.0", "@ckeditor/ckeditor5-package-tools": "4.1.1", "@typescript-eslint/eslint-plugin": "~8.46.0", - "@typescript-eslint/parser": "8.46.2", + "@typescript-eslint/parser": "8.46.3", "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", diff --git a/packages/ckeditor5-footnotes/package.json b/packages/ckeditor5-footnotes/package.json index 635e85d9e..d3fdac60a 100644 --- a/packages/ckeditor5-footnotes/package.json +++ b/packages/ckeditor5-footnotes/package.json @@ -26,7 +26,7 @@ "@ckeditor/ckeditor5-inspector": ">=4.1.0", "@ckeditor/ckeditor5-package-tools": "4.1.1", "@typescript-eslint/eslint-plugin": "~8.46.0", - "@typescript-eslint/parser": "8.46.2", + "@typescript-eslint/parser": "8.46.3", "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", diff --git a/packages/ckeditor5-keyboard-marker/package.json b/packages/ckeditor5-keyboard-marker/package.json index 756ae241f..69f9ee4cf 100644 --- a/packages/ckeditor5-keyboard-marker/package.json +++ b/packages/ckeditor5-keyboard-marker/package.json @@ -28,7 +28,7 @@ "@ckeditor/ckeditor5-inspector": ">=4.1.0", "@ckeditor/ckeditor5-package-tools": "4.1.1", "@typescript-eslint/eslint-plugin": "~8.46.0", - "@typescript-eslint/parser": "8.46.2", + "@typescript-eslint/parser": "8.46.3", "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", diff --git a/packages/ckeditor5-math/package.json b/packages/ckeditor5-math/package.json index bb69ab804..85d1358cc 100644 --- a/packages/ckeditor5-math/package.json +++ b/packages/ckeditor5-math/package.json @@ -29,7 +29,7 @@ "@ckeditor/ckeditor5-inspector": ">=4.1.0", "@ckeditor/ckeditor5-package-tools": "4.1.1", "@typescript-eslint/eslint-plugin": "~8.46.0", - "@typescript-eslint/parser": "8.46.2", + "@typescript-eslint/parser": "8.46.3", "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", diff --git a/packages/ckeditor5-mermaid/package.json b/packages/ckeditor5-mermaid/package.json index f0123cca6..f83566bc4 100644 --- a/packages/ckeditor5-mermaid/package.json +++ b/packages/ckeditor5-mermaid/package.json @@ -28,7 +28,7 @@ "@ckeditor/ckeditor5-inspector": ">=4.1.0", "@ckeditor/ckeditor5-package-tools": "4.1.1", "@typescript-eslint/eslint-plugin": "~8.46.0", - "@typescript-eslint/parser": "8.46.2", + "@typescript-eslint/parser": "8.46.3", "@vitest/browser": "3.2.4", "@vitest/coverage-istanbul": "3.2.4", "ckeditor5": "47.1.0", diff --git a/packages/share-theme/package.json b/packages/share-theme/package.json index 0919ebf10..fbd289fbc 100644 --- a/packages/share-theme/package.json +++ b/packages/share-theme/package.json @@ -32,8 +32,8 @@ "devDependencies": { "@digitak/esrun": "3.2.26", "@triliumnext/ckeditor5": "workspace:*", - "@typescript-eslint/eslint-plugin": "8.46.2", - "@typescript-eslint/parser": "8.46.2", + "@typescript-eslint/eslint-plugin": "8.46.3", + "@typescript-eslint/parser": "8.46.3", "dotenv": "17.2.3", "esbuild": "0.25.12", "eslint": "9.39.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4f12ed67b..253fb4505 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -110,8 +110,8 @@ importers: specifier: ~5.9.0 version: 5.9.3 typescript-eslint: - specifier: 8.46.2 - version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.46.3 + version: 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) upath: specifier: 2.0.1 version: 2.0.1 @@ -880,10 +880,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.3(@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.46.2 - version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.46.3 + version: 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -940,10 +940,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.3(@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.46.2 - version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.46.3 + version: 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1000,10 +1000,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.3(@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.46.2 - version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.46.3 + version: 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1067,10 +1067,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.3(@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.46.2 - version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.46.3 + version: 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1134,10 +1134,10 @@ importers: version: 4.1.1(@swc/core@1.11.29(@swc/helpers@0.5.17))(@types/node@24.10.0)(bufferutil@4.0.9)(esbuild@0.25.12)(utf-8-validate@6.0.5) '@typescript-eslint/eslint-plugin': specifier: ~8.46.0 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.3(@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.46.2 - version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.46.3 + version: 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@vitest/browser': specifier: 3.2.4 version: 3.2.4(bufferutil@4.0.9)(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(playwright@1.56.1)(utf-8-validate@6.0.5)(vite@7.1.12(@types/node@24.10.0)(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@3.2.4)(webdriverio@9.20.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) @@ -1370,11 +1370,11 @@ importers: specifier: workspace:* version: link:../ckeditor5 '@typescript-eslint/eslint-plugin': - specifier: 8.46.2 - version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.46.3 + version: 8.46.3(@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.46.2 - version: 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.46.3 + version: 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) dotenv: specifier: 17.2.3 version: 17.2.3 @@ -2304,11 +2304,11 @@ packages: engines: {node: '>=14.14'} hasBin: true - '@emnapi/core@1.6.0': - resolution: {integrity: sha512-zq/ay+9fNIJJtJiZxdTnXS20PllcYMX3OE23ESc4HK/bdYu3cOWYVhsOhVnXALfU/uqJIxn5NBPd9z4v+SfoSg==} + '@emnapi/core@1.7.0': + resolution: {integrity: sha512-pJdKGq/1iquWYtv1RRSljZklxHCOCAJFJrImO5ZLKPJVJlVUcs8yFwNQlqS0Lo8xT1VAXXTCZocF9n26FWEKsw==} - '@emnapi/runtime@1.6.0': - resolution: {integrity: sha512-obtUmAHTMjll499P+D9A3axeJFlhdjOWdKUNs/U6QIGT7V5RjcUW1xToAzjvmgTSQhDbYn/NwfTRoJcQ2rNBxA==} + '@emnapi/runtime@1.7.0': + resolution: {integrity: sha512-oAYoQnCYaQZKVS53Fq23ceWMRxq5EhQsE0x0RdQ55jT7wagMu5k+fS39v1fiSLrtrLQlXwVINenqhLMtTrV/1Q==} '@emnapi/wasi-threads@1.1.0': resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} @@ -2807,6 +2807,10 @@ packages: resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + '@eslint-community/regexpp@4.12.2': + resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + '@eslint/config-array@0.21.1': resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -5628,6 +5632,14 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/eslint-plugin@8.46.3': + resolution: {integrity: sha512-sbaQ27XBUopBkRiuY/P9sWGOWUW4rl8fDoHIUmLpZd8uldsTyB4/Zg6bWTegPoTLnKj9Hqgn3QD6cjPNB32Odw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.46.3 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/parser@8.46.2': resolution: {integrity: sha512-BnOroVl1SgrPLywqxyqdJ4l3S2MsKVLDVxZvjI1Eoe8ev2r3kGDo+PcMihNmDE+6/KjkTubSJnmqGZZjQSBq/g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -5635,22 +5647,45 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/parser@8.46.3': + resolution: {integrity: sha512-6m1I5RmHBGTnUGS113G04DMu3CpSdxCAU/UvtjNWL4Nuf3MW9tQhiJqRlHzChIkhy6kZSAQmc+I1bcGjE3yNKg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/project-service@8.46.2': resolution: {integrity: sha512-PULOLZ9iqwI7hXcmL4fVfIsBi6AN9YxRc0frbvmg8f+4hQAjQ5GYNKK0DIArNo+rOKmR/iBYwkpBmnIwin4wBg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/project-service@8.46.3': + resolution: {integrity: sha512-Fz8yFXsp2wDFeUElO88S9n4w1I4CWDTXDqDr9gYvZgUpwXQqmZBr9+NTTql5R3J7+hrJZPdpiWaB9VNhAKYLuQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/scope-manager@8.46.2': resolution: {integrity: sha512-LF4b/NmGvdWEHD2H4MsHD8ny6JpiVNDzrSZr3CsckEgCbAGZbYM4Cqxvi9L+WqDMT+51Ozy7lt2M+d0JLEuBqA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/scope-manager@8.46.3': + resolution: {integrity: sha512-FCi7Y1zgrmxp3DfWfr+3m9ansUUFoy8dkEdeQSgA9gbm8DaHYvZCdkFRQrtKiedFf3Ha6VmoqoAaP68+i+22kg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/tsconfig-utils@8.46.2': resolution: {integrity: sha512-a7QH6fw4S57+F5y2FIxxSDyi5M4UfGF+Jl1bCGd7+L4KsaUY80GsiF/t0UoRFDHAguKlBaACWJRmdrc6Xfkkag==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/tsconfig-utils@8.46.3': + resolution: {integrity: sha512-GLupljMniHNIROP0zE7nCcybptolcH8QZfXOpCfhQDAdwJ/ZTlcaBOYebSOZotpti/3HrHSw7D3PZm75gYFsOA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/type-utils@8.46.2': resolution: {integrity: sha512-HbPM4LbaAAt/DjxXaG9yiS9brOOz6fabal4uvUmaUYe6l3K1phQDMQKBRUrr06BQkxkvIZVVHttqiybM9nJsLA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -5658,16 +5693,33 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/type-utils@8.46.3': + resolution: {integrity: sha512-ZPCADbr+qfz3aiTTYNNkCbUt+cjNwI/5McyANNrFBpVxPt7GqpEYz5ZfdwuFyGUnJ9FdDXbGODUu6iRCI6XRXw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/types@8.46.2': resolution: {integrity: sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/types@8.46.3': + resolution: {integrity: sha512-G7Ok9WN/ggW7e/tOf8TQYMaxgID3Iujn231hfi0Pc7ZheztIJVpO44ekY00b7akqc6nZcvregk0Jpah3kep6hA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@8.46.2': resolution: {integrity: sha512-f7rW7LJ2b7Uh2EiQ+7sza6RDZnajbNbemn54Ob6fRwQbgcIn+GWfyuHDHRYgRoZu1P4AayVScrRW+YfbTvPQoQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/typescript-estree@8.46.3': + resolution: {integrity: sha512-f/NvtRjOm80BtNM5OQtlaBdM5BRFUv7gf381j9wygDNL+qOYSNOgtQ/DCndiYi80iIOv76QqaTmp4fa9hwI0OA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/utils@8.46.2': resolution: {integrity: sha512-sExxzucx0Tud5tE0XqR0lT0psBQvEpnpiul9XbGUB1QwpWJJAps1O/Z7hJxLGiZLBKMCutjTzDgmd1muEhBnVg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -5675,10 +5727,21 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/utils@8.46.3': + resolution: {integrity: sha512-VXw7qmdkucEx9WkmR3ld/u6VhRyKeiF1uxWwCy/iuNfokjJ7VhsgLSOTjsol8BunSw190zABzpwdNsze2Kpo4g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + '@typescript-eslint/visitor-keys@8.46.2': resolution: {integrity: sha512-tUFMXI4gxzzMXt4xpGJEsBsTox0XbNQ1y94EwlD/CuZwFcQP79xfQqMhau9HsRc/J0cAPA/HZt1dZPtGn9V/7w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/visitor-keys@8.46.3': + resolution: {integrity: sha512-uk574k8IU0rOF/AjniX8qbLSGURJVUCeM5e4MIMKBFFi8weeiLrG1fyQejyLXQpRZbU/1BuQasleV/RfHC3hHg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@ungap/structured-clone@1.3.0': resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} @@ -12882,6 +12945,9 @@ packages: sax@1.4.1: resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + sax@1.4.2: + resolution: {integrity: sha512-FySGAa0RGcFiN6zfrO9JvK1r7TB59xuzCcTHOBXBNoKgDejlOQCR2KL/FGk3/iDlsqyYg1ELZpOmlg09B01Czw==} + saxes@5.0.1: resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} engines: {node: '>=10'} @@ -13993,6 +14059,13 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' + typescript-eslint@8.46.3: + resolution: {integrity: sha512-bAfgMavTuGo+8n6/QQDVQz4tZ4f7Soqg53RbrlZQEoAltYop/XR4RAts/I0BrO3TTClTSTFJ0wYbla+P8cEWJA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <6.0.0' + typescript@5.0.4: resolution: {integrity: sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==} engines: {node: '>=12.20'} @@ -15451,7 +15524,7 @@ snapshots: '@babel/parser': 7.28.4 '@babel/template': 7.27.2 '@babel/types': 7.28.4 - debug: 4.4.3(supports-color@6.0.0) + debug: 4.4.1 transitivePeerDependencies: - supports-color @@ -15684,8 +15757,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15938,8 +16009,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -17308,13 +17377,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@emnapi/core@1.6.0': + '@emnapi/core@1.7.0': dependencies: '@emnapi/wasi-threads': 1.1.0 tslib: 2.8.1 optional: true - '@emnapi/runtime@1.6.0': + '@emnapi/runtime@1.7.0': dependencies: tslib: 2.8.1 optional: true @@ -17337,7 +17406,7 @@ snapshots: '@es-joy/jsdoccomment@0.50.2': dependencies: '@types/estree': 1.0.8 - '@typescript-eslint/types': 8.46.2 + '@typescript-eslint/types': 8.46.3 comment-parser: 1.4.1 esquery: 1.6.0 jsdoc-type-pratt-parser: 4.1.0 @@ -17583,6 +17652,8 @@ snapshots: '@eslint-community/regexpp@4.12.1': {} + '@eslint-community/regexpp@4.12.2': {} + '@eslint/config-array@0.21.1': dependencies: '@eslint/object-schema': 2.1.7 @@ -18593,8 +18664,8 @@ snapshots: '@napi-rs/wasm-runtime@1.0.7': dependencies: - '@emnapi/core': 1.6.0 - '@emnapi/runtime': 1.6.0 + '@emnapi/core': 1.7.0 + '@emnapi/runtime': 1.7.0 '@tybys/wasm-util': 0.10.1 optional: true @@ -20172,7 +20243,7 @@ snapshots: '@stylistic/eslint-plugin@4.4.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@typescript-eslint/utils': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) eslint: 9.39.1(jiti@2.6.1) eslint-visitor-keys: 4.2.1 espree: 10.4.0 @@ -20871,7 +20942,7 @@ snapshots: '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@eslint-community/regexpp': 4.12.1 + '@eslint-community/regexpp': 4.12.2 '@typescript-eslint/parser': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/scope-manager': 8.46.2 '@typescript-eslint/type-utils': 8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) @@ -20886,6 +20957,23 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/eslint-plugin@8.46.3(@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.46.3 + '@typescript-eslint/type-utils': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.46.3 + eslint: 9.39.1(jiti@2.6.1) + graphemer: 1.4.0 + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.1.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/parser@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 8.46.2 @@ -20898,6 +20986,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.46.3 + '@typescript-eslint/types': 8.46.3 + '@typescript-eslint/typescript-estree': 8.46.3(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.46.3 + debug: 4.4.3(supports-color@6.0.0) + eslint: 9.39.1(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/project-service@8.46.2(typescript@5.9.3)': dependencies: '@typescript-eslint/tsconfig-utils': 8.46.2(typescript@5.9.3) @@ -20907,15 +21007,33 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/project-service@8.46.3(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.46.3(typescript@5.9.3) + '@typescript-eslint/types': 8.46.3 + debug: 4.4.3(supports-color@6.0.0) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/scope-manager@8.46.2': dependencies: '@typescript-eslint/types': 8.46.2 '@typescript-eslint/visitor-keys': 8.46.2 + '@typescript-eslint/scope-manager@8.46.3': + dependencies: + '@typescript-eslint/types': 8.46.3 + '@typescript-eslint/visitor-keys': 8.46.3 + '@typescript-eslint/tsconfig-utils@8.46.2(typescript@5.9.3)': dependencies: typescript: 5.9.3 + '@typescript-eslint/tsconfig-utils@8.46.3(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + '@typescript-eslint/type-utils@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 8.46.2 @@ -20928,8 +21046,22 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/type-utils@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.46.3 + '@typescript-eslint/typescript-estree': 8.46.3(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + debug: 4.4.3(supports-color@6.0.0) + eslint: 9.39.1(jiti@2.6.1) + ts-api-utils: 2.1.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/types@8.46.2': {} + '@typescript-eslint/types@8.46.3': {} + '@typescript-eslint/typescript-estree@8.46.2(typescript@5.9.3)': dependencies: '@typescript-eslint/project-service': 8.46.2(typescript@5.9.3) @@ -20946,6 +21078,22 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/typescript-estree@8.46.3(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.46.3(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.46.3(typescript@5.9.3) + '@typescript-eslint/types': 8.46.3 + '@typescript-eslint/visitor-keys': 8.46.3 + debug: 4.4.3(supports-color@6.0.0) + fast-glob: 3.3.3 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.7.3 + ts-api-utils: 2.1.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/utils@8.46.2(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) @@ -20957,11 +21105,27 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/utils@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) + '@typescript-eslint/scope-manager': 8.46.3 + '@typescript-eslint/types': 8.46.3 + '@typescript-eslint/typescript-estree': 8.46.3(typescript@5.9.3) + eslint: 9.39.1(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/visitor-keys@8.46.2': dependencies: '@typescript-eslint/types': 8.46.2 eslint-visitor-keys: 4.2.1 + '@typescript-eslint/visitor-keys@8.46.3': + dependencies: + '@typescript-eslint/types': 8.46.3 + eslint-visitor-keys: 4.2.1 + '@ungap/structured-clone@1.3.0': {} '@uploadcare/cname-prefix@6.17.0': {} @@ -27378,7 +27542,7 @@ snapshots: needle@3.3.1: dependencies: iconv-lite: 0.6.3 - sax: 1.4.1 + sax: 1.4.2 optional: true negotiator@0.6.3: {} @@ -29819,6 +29983,9 @@ snapshots: sax@1.4.1: {} + sax@1.4.2: + optional: true + saxes@5.0.1: dependencies: xmlchars: 2.2.0 @@ -31310,6 +31477,17 @@ snapshots: transitivePeerDependencies: - supports-color + typescript-eslint@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.46.3(@typescript-eslint/parser@8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.46.3(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.1(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + typescript@5.0.4: {} typescript@5.4.5: {} From 5186ea3fff675a8f26598e227a265ce7b55f67fa Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 08:51:54 +0200 Subject: [PATCH 110/136] chore(deps): duplicate dependency in lock --- pnpm-lock.yaml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 908df92b1..84d33e6c0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12945,9 +12945,6 @@ packages: sax@1.4.2: resolution: {integrity: sha512-FySGAa0RGcFiN6zfrO9JvK1r7TB59xuzCcTHOBXBNoKgDejlOQCR2KL/FGk3/iDlsqyYg1ELZpOmlg09B01Czw==} - sax@1.4.2: - resolution: {integrity: sha512-FySGAa0RGcFiN6zfrO9JvK1r7TB59xuzCcTHOBXBNoKgDejlOQCR2KL/FGk3/iDlsqyYg1ELZpOmlg09B01Czw==} - saxes@5.0.1: resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} engines: {node: '>=10'} @@ -29983,9 +29980,6 @@ snapshots: sax@1.4.2: {} - sax@1.4.2: - optional: true - saxes@5.0.1: dependencies: xmlchars: 2.2.0 From aeb0f44a432a4e5bead11467e3b65f3105aaee8b Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 08:55:05 +0200 Subject: [PATCH 111/136] chore(website): fix typecheck issue --- apps/website/tsconfig.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/website/tsconfig.json b/apps/website/tsconfig.json index 4d67635d7..68e45adef 100644 --- a/apps/website/tsconfig.json +++ b/apps/website/tsconfig.json @@ -10,7 +10,8 @@ "jsxImportSource": "preact", "skipLibCheck": true, "types": [ - "vite/client" + "vite/client", + "vitest/config" ], "paths": { "react": ["../../node_modules/preact/compat/"], From 757a0464749080fe8ae956acff91bcc414cc00db Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 09:13:12 +0200 Subject: [PATCH 112/136] feat(build-docs): add root 404 page --- apps/build-docs/src/main.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/build-docs/src/main.ts b/apps/build-docs/src/main.ts index 19d533420..d94ada167 100644 --- a/apps/build-docs/src/main.ts +++ b/apps/build-docs/src/main.ts @@ -22,8 +22,9 @@ async function main() { buildSwagger(context); buildScriptApi(context); - // Copy index file. + // Copy index and 404 files. cpSync(join(__dirname, "index.html"), join(context.baseDir, "index.html")); + cpSync(join(context.baseDir, "user-guide/404.html"), join(context.baseDir, "404.html")); } main(); From 59a2ef7527c90f0d23d4a8a2a0995d7a1a0b3c2d Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 09:13:41 +0200 Subject: [PATCH 113/136] chore(build-docs): add preview entrypoint --- .../doc_notes/en/User Guide/!!!meta.json | 2 +- .../User Guide/Advanced Usage/Safe mode.html | 13 +- docs/Developer Guide/!!!meta.json | 91 +++++---- .../Developer Guide/Building/Documentation.md | 5 +- docs/User Guide/!!!meta.json | 32 +-- package.json | 2 + pnpm-lock.yaml | 187 +++++++++++++++++- 7 files changed, 261 insertions(+), 71 deletions(-) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 54c139517..25388c0b2 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Safe mode.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Safe mode.html index a169f3800..87c50d2b7 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Safe mode.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Safe mode.html @@ -4,12 +4,9 @@ script to enable it.

    What it does:

      -
    • Disables customWidget launcher types in app/widgets/containers/launcher.js.
    • -
    • Disables the running of mobileStartup or frontendStartup scripts.
    • -
    • Displays the root note instead of the previously saved session.
    • -
    • Disables the running of backendStartup, hourly, daily scripts - and checks for the hidden subtree.
    • +
    • Disables customWidget launcher types in app/widgets/containers/launcher.js.
    • +
    • Disables the running of mobileStartup or frontendStartup scripts.
    • +
    • Displays the root note instead of the previously saved session.
    • +
    • Disables the running of backendStartup, hourly, daily scripts + and checks for the hidden subtree.
    \ No newline at end of file diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index f384978f2..5cc741ff6 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -56,6 +56,13 @@ "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "TLXJwBDo8Rdv", + "isInheritable": false, + "position": 10 + }, { "type": "label", "name": "iconClass", @@ -69,13 +76,6 @@ "value": "environment-setup", "isInheritable": false, "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "TLXJwBDo8Rdv", - "isInheritable": false, - "position": 30 } ], "format": "markdown", @@ -96,6 +96,13 @@ "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "a0mkxxB4Uvbf", + "isInheritable": false, + "position": 10 + }, { "type": "label", "name": "iconClass", @@ -109,13 +116,6 @@ "value": "project-structure", "isInheritable": false, "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "a0mkxxB4Uvbf", - "isInheritable": false, - "position": 30 } ], "format": "markdown", @@ -246,25 +246,25 @@ "mime": "text/html", "attributes": [ { - "type": "label", - "name": "shareAlias", - "value": "dev-build", + "type": "relation", + "name": "internalLink", + "value": "mXFYlhuEr1mZ", "isInheritable": false, - "position": 20 + "position": 10 }, { "type": "relation", "name": "internalLink", "value": "T2W7WCZrYZBU", "isInheritable": false, - "position": 30 + "position": 20 }, { - "type": "relation", - "name": "internalLink", - "value": "mXFYlhuEr1mZ", + "type": "label", + "name": "shareAlias", + "value": "dev-build", "isInheritable": false, - "position": 40 + "position": 20 } ], "format": "markdown", @@ -736,14 +736,14 @@ "name": "internalLink", "value": "DSkl8C325tEC", "isInheritable": false, - "position": 20 + "position": 10 }, { "type": "relation", "name": "internalLink", "value": "tM3rIZQzlum4", "isInheritable": false, - "position": 30 + "position": 20 }, { "type": "label", @@ -1082,16 +1082,16 @@ "mime": "text/html", "attributes": [ { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", + "type": "relation", + "name": "internalLink", + "value": "DSkl8C325tEC", "isInheritable": false, "position": 10 }, { "type": "relation", "name": "internalLink", - "value": "DSkl8C325tEC", + "value": "VIcWnKGs0sMh", "isInheritable": false, "position": 20 }, @@ -1103,11 +1103,11 @@ "position": 30 }, { - "type": "relation", - "name": "internalLink", - "value": "VIcWnKGs0sMh", + "type": "label", + "name": "iconClass", + "value": "bx bx-table", "isInheritable": false, - "position": 40 + "position": 10 }, { "type": "label", @@ -1243,14 +1243,14 @@ { "type": "relation", "name": "internalLink", - "value": "PXzm2t3sCdsP", + "value": "oLhKpfi2kGON", "isInheritable": false, "position": 10 }, { "type": "relation", "name": "internalLink", - "value": "oLhKpfi2kGON", + "value": "PXzm2t3sCdsP", "isInheritable": false, "position": 20 }, @@ -1876,6 +1876,13 @@ "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "k7RavjuXQt8z", + "isInheritable": false, + "position": 20 + }, { "type": "label", "name": "shareAlias", @@ -1883,13 +1890,6 @@ "isInheritable": false, "position": 20 }, - { - "type": "relation", - "name": "internalLink", - "value": "k7RavjuXQt8z", - "isInheritable": false, - "position": 40 - }, { "type": "label", "name": "iconClass", @@ -2228,6 +2228,13 @@ "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "IxkDdjTogO18", + "isInheritable": false, + "position": 10 + }, { "type": "label", "name": "shareAlias", diff --git a/docs/Developer Guide/Developer Guide/Building/Documentation.md b/docs/Developer Guide/Developer Guide/Building/Documentation.md index bd3124b55..d7e78f42e 100644 --- a/docs/Developer Guide/Developer Guide/Building/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Building/Documentation.md @@ -14,4 +14,7 @@ The `deploy-docs` workflow triggers the documentation build and uploads it to Cl ## Building locally -In the Git root, run `pnpm docs:build`. The built documentation will be available in `site` at Git root. \ No newline at end of file +In the Git root: + +* Run `pnpm docs:build`. The built documentation will be available in `site` at Git root. +* To also run a webserver to test it, run `pnpm docs:preview` (this will not build the documentation) and navigate to `localhost:9000`. \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index ee9df7820..24e168341 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -1166,6 +1166,22 @@ "dataFileName": "Multi-Factor Authentication.md", "attachments": [] }, + { + "isClone": true, + "noteId": "Un4wj2Mak2Ky", + "notePath": [ + "pOsGYCXsbNQG", + "Otzi9La2YAUX", + "WOcw2SLH6tbX", + "Un4wj2Mak2Ky" + ], + "title": "Nix flake", + "prefix": null, + "dataFileName": "Nix flake.clone.md", + "type": "text", + "format": "markdown", + "isExpanded": false + }, { "isClone": false, "noteId": "yeEaYqosGLSh", @@ -1256,22 +1272,6 @@ "format": "markdown", "dataFileName": "System Requirements.md", "attachments": [] - }, - { - "isClone": true, - "noteId": "Un4wj2Mak2Ky", - "notePath": [ - "pOsGYCXsbNQG", - "Otzi9La2YAUX", - "WOcw2SLH6tbX", - "Un4wj2Mak2Ky" - ], - "title": "Nix flake", - "prefix": null, - "dataFileName": "Nix flake.clone.md", - "type": "text", - "format": "markdown", - "isExpanded": false } ] }, diff --git a/package.json b/package.json index 9533d10c1..402997ce5 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,7 @@ "chore:update-build-info": "tsx ./scripts/update-build-info.ts", "chore:update-version": "tsx ./scripts/update-version.ts", "docs:build": "pnpm run --filter build-docs start", + "docs:preview": "pnpm http-server site -p 9000", "edit-docs:edit-docs": "pnpm run --filter edit-docs edit-docs", "edit-docs:edit-demo": "pnpm run --filter edit-docs edit-demo", "test:all": "pnpm test:parallel && pnpm test:sequential", @@ -54,6 +55,7 @@ "eslint-plugin-playwright": "2.3.0", "eslint-plugin-react-hooks": "7.0.1", "happy-dom": "~20.0.0", + "http-server": "14.1.1", "jiti": "2.6.1", "jsonc-eslint-parser": "2.4.1", "react-refresh": "0.18.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 84d33e6c0..1054a98c4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -88,6 +88,9 @@ importers: happy-dom: specifier: ~20.0.0 version: 20.0.10 + http-server: + specifier: 14.1.1 + version: 14.1.1 jiti: specifier: 2.6.1 version: 2.6.1 @@ -835,6 +838,9 @@ importers: vite: specifier: 7.1.12 version: 7.1.12(@types/node@24.10.0)(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: + specifier: 4.0.6 + version: 4.0.6(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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) packages/ckeditor5: dependencies: @@ -4996,6 +5002,9 @@ packages: '@ssddanbrown/codemirror-lang-twig@1.0.0': resolution: {integrity: sha512-7WIMIh8Ssc54TooGCY57WU2rKEqZZrcV2tZSVRPtd0gKYsrDEKCSLWpQjUWEx7bdgh3NKHUjq1O4ugIzI/+dwQ==} + '@standard-schema/spec@1.0.0': + resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} + '@stylistic/eslint-plugin@4.4.1': resolution: {integrity: sha512-CEigAk7eOLyHvdgmpZsKFwtiqS2wFwI1fn4j09IU9GmD4euFM4jEBAViWeCqaNLlbX2k2+A/Fq9cje4HQBXuJQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -5794,6 +5803,9 @@ packages: '@vitest/expect@3.2.4': resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==} + '@vitest/expect@4.0.6': + resolution: {integrity: sha512-5j8UUlBVhOjhj4lR2Nt9sEV8b4WtbcYh8vnfhTNA2Kn5+smtevzjNq+xlBuVhnFGXiyPPNzGrOVvmyHWkS5QGg==} + '@vitest/mocker@3.2.4': resolution: {integrity: sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==} peerDependencies: @@ -5805,18 +5817,41 @@ packages: vite: optional: true + '@vitest/mocker@4.0.6': + resolution: {integrity: sha512-3COEIew5HqdzBFEYN9+u0dT3i/NCwppLnO1HkjGfAP1Vs3vti1Hxm/MvcbC4DAn3Szo1M7M3otiAaT83jvqIjA==} + peerDependencies: + msw: ^2.4.9 + vite: ^6.0.0 || ^7.0.0-0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + '@vitest/pretty-format@3.2.4': resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==} + '@vitest/pretty-format@4.0.6': + resolution: {integrity: sha512-4vptgNkLIA1W1Nn5X4x8rLJBzPiJwnPc+awKtfBE5hNMVsoAl/JCCPPzNrbf+L4NKgklsis5Yp2gYa+XAS442g==} + '@vitest/runner@3.2.4': resolution: {integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==} + '@vitest/runner@4.0.6': + resolution: {integrity: sha512-trPk5qpd7Jj+AiLZbV/e+KiiaGXZ8ECsRxtnPnCrJr9OW2mLB72Cb824IXgxVz/mVU3Aj4VebY+tDTPn++j1Og==} + '@vitest/snapshot@3.2.4': resolution: {integrity: sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==} + '@vitest/snapshot@4.0.6': + resolution: {integrity: sha512-PaYLt7n2YzuvxhulDDu6c9EosiRuIE+FI2ECKs6yvHyhoga+2TBWI8dwBjs+IeuQaMtZTfioa9tj3uZb7nev1g==} + '@vitest/spy@3.2.4': resolution: {integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==} + '@vitest/spy@4.0.6': + resolution: {integrity: sha512-g9jTUYPV1LtRPRCQfhbMintW7BTQz1n6WXYQYRQ25qkyffA4bjVXjkROokZnv7t07OqfaFKw1lPzqKGk1hmNuQ==} + '@vitest/ui@3.2.4': resolution: {integrity: sha512-hGISOaP18plkzbWEcP/QvtRW1xDXF2+96HbEX6byqQhAUbiS5oH6/9JwW+QsQCIYON2bI6QZBF+2PvOmrRZ9wA==} peerDependencies: @@ -5825,6 +5860,9 @@ packages: '@vitest/utils@3.2.4': resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==} + '@vitest/utils@4.0.6': + resolution: {integrity: sha512-bG43VS3iYKrMIZXBo+y8Pti0O7uNju3KvNn6DrQWhQQKcLavMB+0NZfO1/QBAEbq0MaQ3QjNsnnXlGQvsh0Z6A==} + '@volar/language-core@2.4.13': resolution: {integrity: sha512-MnQJ7eKchJx5Oz+YdbqyFUk8BN6jasdJv31n/7r6/WwlOOv7qzvot6B66887l2ST3bUW4Mewml54euzpJWA6bg==} @@ -6606,6 +6644,10 @@ packages: resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} engines: {node: '>=12'} + chai@6.2.0: + resolution: {integrity: sha512-aUTnJc/JipRzJrNADXVvpVqi6CO0dn3nx4EVPxijri+fj3LUUDyZQOgVeW54Ob3Y1Xh9Iz8f+CgaCl8v0mn9bA==} + engines: {node: '>=18'} + chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -8233,6 +8275,10 @@ packages: resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==} engines: {node: '>=12.0.0'} + expect-type@1.2.2: + resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} + engines: {node: '>=12.0.0'} + exponential-backoff@3.1.2: resolution: {integrity: sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==} @@ -10141,6 +10187,9 @@ packages: magic-string@0.30.18: resolution: {integrity: sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ==} + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + magicast@0.3.5: resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} @@ -13832,6 +13881,10 @@ packages: resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} engines: {node: '>=14.0.0'} + tinyrainbow@3.0.3: + resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} + engines: {node: '>=14.0.0'} + tinyspy@4.0.3: resolution: {integrity: sha512-t2T/WLB2WRgZ9EpE4jgPJ9w+i66UZfDc8wHh0xrwiRNN+UwH98GIJkTeZqX9rg0i0ptwzqW+uYeIF0T4F8LR7A==} engines: {node: '>=14.0.0'} @@ -14446,6 +14499,40 @@ packages: jsdom: optional: true + vitest@4.0.6: + resolution: {integrity: sha512-gR7INfiVRwnEOkCk47faros/9McCZMp5LM+OMNWGLaDBSvJxIzwjgNFufkuePBNaesGRnLmNfW+ddbUJRZn0nQ==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/debug': ^4.1.12 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/browser-playwright': 4.0.6 + '@vitest/browser-preview': 4.0.6 + '@vitest/browser-webdriverio': 4.0.6 + '@vitest/ui': 4.0.6 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/debug': + optional: true + '@types/node': + optional: true + '@vitest/browser-playwright': + optional: true + '@vitest/browser-preview': + optional: true + '@vitest/browser-webdriverio': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + void-elements@2.0.1: resolution: {integrity: sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==} engines: {node: '>=0.10.0'} @@ -15521,7 +15608,7 @@ snapshots: '@babel/parser': 7.28.4 '@babel/template': 7.27.2 '@babel/types': 7.28.4 - debug: 4.4.1 + debug: 4.4.3(supports-color@6.0.0) transitivePeerDependencies: - supports-color @@ -15754,6 +15841,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -16028,8 +16117,6 @@ snapshots: '@ckeditor/ckeditor5-table': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-emoji@47.1.0': dependencies: @@ -20238,6 +20325,8 @@ snapshots: '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 + '@standard-schema/spec@1.0.0': {} + '@stylistic/eslint-plugin@4.4.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/utils': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) @@ -21221,6 +21310,15 @@ snapshots: chai: 5.2.0 tinyrainbow: 2.0.0 + '@vitest/expect@4.0.6': + dependencies: + '@standard-schema/spec': 1.0.0 + '@types/chai': 5.2.2 + '@vitest/spy': 4.0.6 + '@vitest/utils': 4.0.6 + chai: 6.2.0 + tinyrainbow: 3.0.3 + '@vitest/mocker@3.2.4(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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))': dependencies: '@vitest/spy': 3.2.4 @@ -21230,26 +21328,52 @@ snapshots: msw: 2.7.5(@types/node@24.10.0)(typescript@5.9.3) vite: 7.1.12(@types/node@24.10.0)(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/mocker@4.0.6(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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))': + dependencies: + '@vitest/spy': 4.0.6 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + msw: 2.7.5(@types/node@24.10.0)(typescript@5.9.3) + vite: 7.1.12(@types/node@24.10.0)(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/pretty-format@3.2.4': dependencies: tinyrainbow: 2.0.0 + '@vitest/pretty-format@4.0.6': + dependencies: + tinyrainbow: 3.0.3 + '@vitest/runner@3.2.4': dependencies: '@vitest/utils': 3.2.4 pathe: 2.0.3 strip-literal: 3.0.0 + '@vitest/runner@4.0.6': + dependencies: + '@vitest/utils': 4.0.6 + pathe: 2.0.3 + '@vitest/snapshot@3.2.4': dependencies: '@vitest/pretty-format': 3.2.4 magic-string: 0.30.18 pathe: 2.0.3 + '@vitest/snapshot@4.0.6': + dependencies: + '@vitest/pretty-format': 4.0.6 + magic-string: 0.30.21 + pathe: 2.0.3 + '@vitest/spy@3.2.4': dependencies: tinyspy: 4.0.3 + '@vitest/spy@4.0.6': {} + '@vitest/ui@3.2.4(vitest@3.2.4)': dependencies: '@vitest/utils': 3.2.4 @@ -21267,6 +21391,11 @@ snapshots: loupe: 3.1.4 tinyrainbow: 2.0.0 + '@vitest/utils@4.0.6': + dependencies: + '@vitest/pretty-format': 4.0.6 + tinyrainbow: 3.0.3 + '@volar/language-core@2.4.13': dependencies: '@volar/source-map': 2.4.13 @@ -22221,6 +22350,8 @@ snapshots: loupe: 3.1.4 pathval: 2.0.1 + chai@6.2.0: {} + chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -24435,6 +24566,8 @@ snapshots: expect-type@1.2.1: {} + expect-type@1.2.2: {} + exponential-backoff@3.1.2: {} exponential-backoff@3.1.3: {} @@ -26663,6 +26796,10 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + magicast@0.3.5: dependencies: '@babel/parser': 7.28.4 @@ -31193,6 +31330,8 @@ snapshots: tinyrainbow@2.0.0: {} + tinyrainbow@3.0.3: {} + tinyspy@4.0.3: {} tldts-core@6.1.86: @@ -31863,6 +32002,48 @@ snapshots: - tsx - yaml + vitest@4.0.6(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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): + dependencies: + '@vitest/expect': 4.0.6 + '@vitest/mocker': 4.0.6(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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/pretty-format': 4.0.6 + '@vitest/runner': 4.0.6 + '@vitest/snapshot': 4.0.6 + '@vitest/spy': 4.0.6 + '@vitest/utils': 4.0.6 + debug: 4.4.3(supports-color@6.0.0) + es-module-lexer: 1.7.0 + expect-type: 1.2.2 + magic-string: 0.30.21 + pathe: 2.0.3 + picomatch: 4.0.3 + std-env: 3.9.0 + tinybench: 2.9.0 + tinyexec: 0.3.2 + tinyglobby: 0.2.15 + tinyrainbow: 3.0.3 + vite: 7.1.12(@types/node@24.10.0)(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) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/debug': 4.1.12 + '@types/node': 24.10.0 + '@vitest/ui': 3.2.4(vitest@3.2.4) + happy-dom: 20.0.10 + jsdom: 26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) + transitivePeerDependencies: + - jiti + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + void-elements@2.0.1: {} void-elements@3.1.0: {} From db644f20ed27af43c9fae51e3b4b8a6e8560eebb Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 09:21:44 +0200 Subject: [PATCH 114/136] docs(dev): releasing a new version --- docs/Developer Guide/!!!meta.json | 68 +++++++++---------- .../Developer Guide/Building/Documentation.md | 4 ++ .../Building/Releasing a new version.md | 19 ++++++ .../Old documentation/Releasing a version.md | 22 ------ 4 files changed, 57 insertions(+), 56 deletions(-) create mode 100644 docs/Developer Guide/Developer Guide/Building/Releasing a new version.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Releasing a version.md diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index 5cc741ff6..e3c2d4362 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -433,6 +433,40 @@ "format": "markdown", "dataFileName": "Documentation.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "4nwtTJyjNDKd", + "notePath": [ + "jdjRLhLV3TtI", + "a0mkxxB4Uvbf", + "4nwtTJyjNDKd" + ], + "title": "Releasing a new version", + "notePosition": 70, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "zdQzavvHDl1k", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-rocket", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Releasing a new version.md", + "attachments": [] } ] }, @@ -2213,40 +2247,6 @@ "attachments": [], "dirFileName": "Old documentation", "children": [ - { - "isClone": false, - "noteId": "rLWcPPQi7Eso", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "rLWcPPQi7Eso" - ], - "title": "Releasing a version", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "IxkDdjTogO18", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "releasing", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Releasing a version.md", - "attachments": [] - }, { "isClone": false, "noteId": "6BWwXzPCph4G", diff --git a/docs/Developer Guide/Developer Guide/Building/Documentation.md b/docs/Developer Guide/Developer Guide/Building/Documentation.md index d7e78f42e..6ce33eeaf 100644 --- a/docs/Developer Guide/Developer Guide/Building/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Building/Documentation.md @@ -1,4 +1,8 @@ # Documentation +## Editing the documentation + +To edit the documentation run `pnpm edit-docs:edit-docs`. This will spin up a custom Trilium desktop instance which automatically imports the documentation into memory. Any changes will update in the background the files which can then be committed. + ## Automation The documentation is built via `apps/build-docs`: diff --git a/docs/Developer Guide/Developer Guide/Building/Releasing a new version.md b/docs/Developer Guide/Developer Guide/Building/Releasing a new version.md new file mode 100644 index 000000000..8e62e8f36 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Building/Releasing a new version.md @@ -0,0 +1,19 @@ +# Releasing a new version +Releasing is mostly handled by the CI: + +* The version on GitHub is published automatically, including the description with the change log which is taken from the documentation. +* A PR is created automatically on the Winget repository to update to the new version. + +Releases are usually made directly from the `main` branch. + +The process is as follows: + +1. Edit the Documentation to add a corresponding entry in the _Release notes_ section. +2. In the root `package.json`, set `version` to the new version to be released. +3. Run `chore:update-version` to automatically update the version of the rest of the `package.json` files. +4. Run `pnpm i` to update the package lock as well. +5. Commit the changes to the `package.json` files and the `package-lock.json`. The commit message is usually `chore(release): prepare for v1.2.3`. +6. Tag the newly created commit: `git tag v1.2.3` +7. Push the commit and the newly created tag: `git push; git push --tags`. +8. Wait for the CI to finish. +9. When the release is automatically created in GitHub, download it to make sure it works OK. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Releasing a version.md b/docs/Developer Guide/Developer Guide/Old documentation/Releasing a version.md deleted file mode 100644 index ed3706f7e..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Releasing a version.md +++ /dev/null @@ -1,22 +0,0 @@ -# Releasing a version -On NixOS: - -``` -nix-shell -p dpkg fakeroot jq nodejs_20 -``` - -Then simply run from project root: - -``` -./bin/release.sh 1.2.3 -``` - -where `1.2.3` is the desired release version. - -If a version ends with `-beta`, it will automatically be marked as pre-release in GitHub. - -This will automatically generate a release in GitHub if everything goes according to plan. - -Note that the Windows installer is not automatically uploaded yet, it has to be taken from the [main workflow of the CI from the `develop` branch](../Architecture/CI/Main.md). - -Make sure to check test the artifacts of the release. \ No newline at end of file From 0ae4defc6dc51b7d9e4750803c15751a88770dae Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 10:55:48 +0200 Subject: [PATCH 115/136] docs(dev): reorganize and clean up technical documentation --- .../doc_notes/en/User Guide/!!!meta.json | 2 +- .../Advanced Usage/Nightly release.html | 35 + .../{ => Backend scripts}/Events.html | 0 .../Backend scripts/Server-side imports.html | 7 + .../{ => Frontend Basics}/Custom Widgets.html | 0 .../Frontend Basics/Custom Widgets/CSS.html | 9 + .../Custom Widgets/Right pane widget.html | 30 + .../Custom Widgets/Widget Basics.html | 23 +- .../Custom Widgets/Word count widget.html | 0 .../Word count widget_image.png | Bin .../Downloading responses from Goo.html | 0 .../Examples/New Task launcher button.html | 0 .../Examples/New Task launcher button_i.png | Bin .../Examples/Using promoted attributes .png | Bin .../Using promoted attributes to c.html | 0 docs/Developer Guide/!!!meta.json | 1412 +++++------------ .../Developer Guide/Building/Documentation.md | 24 - .../Building/Releasing a new version.md | 2 +- .../CKEditor.md | 0 .../CKEditor/Differences from upstream.md | 2 +- .../CKEditor/Plugin migration guide.md | 0 .../Dependencies/CKEditor/ckeditor5-math.md | 16 + .../CKEditor}/ckeditor5-math_image.png | Bin .../Per-dependency checks.md} | 4 +- .../bettersqlite binaries.md | 25 + .../{Old documentation => }/Documentation.md | 57 +- .../Documentation references in th.md | 12 +- .../Old documentation/Documentation_image.png | Bin 7317 -> 0 bytes .../Download latest nightly and in.md | 12 - .../bettersqlite binaries.md | 41 - .../Scripting/Server-side imports.md | 16 - .../Old documentation/Scripting/Widgets.md | 33 - .../CKEditor/Building the editor.md | 21 - .../CKEditor/Environment setup.md | 26 - .../Updating to a newer version of.md | 65 - .../CKEditor/Versions and external plugins.md | 8 - .../Sub-projects/ckeditor5-math.md | 29 - .../Release management & continuou.md | 16 - .../ckeditor5-math/Updating with upstream.md | 21 - .../1_Setting up authentication_.png | Bin 9957 -> 0 bytes .../Integration testing/Running tests.md | 38 - .../Setting up authentication.md | 12 - .../Setting up authentication_.png | Bin 15080 -> 0 bytes .../{Old documentation => }/Testing.md | 9 +- .../Testing/End-to-end tests.md | 31 + .../Testing/Integration testing.md | 0 .../Test database.md | 0 .../Error [TransformError] The pac.md | 2 +- docs/User Guide/!!!meta.json | 679 +++++--- .../Advanced Showcases/Task Manager.md | 2 +- .../Advanced Usage/Attributes/Labels.md | 2 +- .../Advanced Usage/Attributes/Relations.md | 2 +- .../Advanced Usage/Nightly release.md | 34 + .../UI Elements/Launch Bar.md | 2 +- docs/User Guide/User Guide/Scripting.md | 4 +- .../Scripting/{ => Backend scripts}/Events.md | 6 +- .../Backend scripts/Server-side imports.md | 11 + .../Examples/New Task launcher button.md | 47 - .../User Guide/Scripting/Frontend Basics.md | 2 +- .../{ => Frontend Basics}/Custom Widgets.md | 0 .../Frontend Basics/Custom Widgets}/CSS.md | 0 .../Custom Widgets}/Right pane widget.md | 0 .../Custom Widgets/Widget Basics.md | 15 +- .../Custom Widgets/Word count widget.md | 6 +- .../Word count widget_image.png | Bin .../Downloading responses from Goo.md | 0 .../Examples/New Task launcher button.md | 47 + .../Examples/New Task launcher button_i.png | Bin .../Examples/Using promoted attributes .png | Bin .../Using promoted attributes to c.md | 0 docs/User Guide/User Guide/Troubleshooting.md | 2 +- 71 files changed, 1144 insertions(+), 1757 deletions(-) create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Nightly release.html rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Backend scripts}/Events.html (100%) create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Backend scripts/Server-side imports.html rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Custom Widgets.html (100%) create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS.html create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget.html rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Custom Widgets/Widget Basics.html (71%) rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Custom Widgets/Word count widget.html (100%) rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Custom Widgets/Word count widget_image.png (100%) rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/Downloading responses from Goo.html (100%) rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/New Task launcher button.html (100%) rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/New Task launcher button_i.png (100%) rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/Using promoted attributes .png (100%) rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/Using promoted attributes to c.html (100%) delete mode 100644 docs/Developer Guide/Developer Guide/Building/Documentation.md rename docs/Developer Guide/Developer Guide/{Project Structure => Dependencies}/CKEditor.md (100%) rename docs/Developer Guide/Developer Guide/{Old documentation/Sub-projects => Dependencies}/CKEditor/Differences from upstream.md (81%) rename docs/Developer Guide/Developer Guide/{Project Structure => Dependencies}/CKEditor/Plugin migration guide.md (100%) create mode 100644 docs/Developer Guide/Developer Guide/Dependencies/CKEditor/ckeditor5-math.md rename docs/Developer Guide/Developer Guide/{Old documentation/Sub-projects => Dependencies/CKEditor}/ckeditor5-math_image.png (100%) rename docs/Developer Guide/Developer Guide/{Old documentation/Project maintenance/Updating dependencies.md => Dependencies/Per-dependency checks.md} (96%) create mode 100644 docs/Developer Guide/Developer Guide/Dependencies/Per-dependency checks/bettersqlite binaries.md rename docs/Developer Guide/Developer Guide/{Old documentation => }/Documentation.md (66%) rename docs/Developer Guide/Developer Guide/{Old documentation => }/Documentation/Documentation references in th.md (69%) delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Documentation_image.png delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Installation/Download latest nightly and in.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/bettersqlite binaries.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Scripting/Server-side imports.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Scripting/Widgets.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Building the editor.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Environment setup.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Updating to a newer version of.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Versions and external plugins.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math/Release management & continuou.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math/Updating with upstream.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/1_Setting up authentication_.png delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Running tests.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Setting up authentication.md delete mode 100644 docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Setting up authentication_.png rename docs/Developer Guide/Developer Guide/{Old documentation => }/Testing.md (77%) create mode 100644 docs/Developer Guide/Developer Guide/Testing/End-to-end tests.md create mode 100644 docs/Developer Guide/Developer Guide/Testing/Integration testing.md rename docs/Developer Guide/Developer Guide/{Old documentation/Testing/Integration testing => Testing}/Test database.md (100%) rename docs/Developer Guide/Developer Guide/{Old documentation => }/Troubleshooting/Error [TransformError] The pac.md (99%) create mode 100644 docs/User Guide/User Guide/Advanced Usage/Nightly release.md rename docs/User Guide/User Guide/Scripting/{ => Backend scripts}/Events.md (78%) create mode 100644 docs/User Guide/User Guide/Scripting/Backend scripts/Server-side imports.md delete mode 100644 docs/User Guide/User Guide/Scripting/Examples/New Task launcher button.md rename docs/User Guide/User Guide/Scripting/{ => Frontend Basics}/Custom Widgets.md (100%) rename docs/{Developer Guide/Developer Guide/Old documentation/Scripting/Widgets => User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets}/CSS.md (100%) rename docs/{Developer Guide/Developer Guide/Old documentation/Scripting/Widgets => User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets}/Right pane widget.md (100%) rename docs/User Guide/User Guide/Scripting/{ => Frontend Basics}/Custom Widgets/Widget Basics.md (75%) rename docs/User Guide/User Guide/Scripting/{ => Frontend Basics}/Custom Widgets/Word count widget.md (88%) rename docs/User Guide/User Guide/Scripting/{ => Frontend Basics}/Custom Widgets/Word count widget_image.png (100%) rename docs/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/Downloading responses from Goo.md (100%) create mode 100644 docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button.md rename docs/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/New Task launcher button_i.png (100%) rename docs/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/Using promoted attributes .png (100%) rename docs/User Guide/User Guide/Scripting/{ => Frontend Basics}/Examples/Using promoted attributes to c.md (100%) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 25388c0b2..c9517ba7b 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]},{"id":"_help_HAIOFBoYIIdO","title":"Nightly release","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Nightly release"},{"name":"iconClass","value":"bx bx-moon","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-window","type":"label"}],"children":[{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_M8IppdwVHSjG","title":"Right pane widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_VqGQnnPGnqAU","title":"CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_SPirpZypehBG","title":"Backend scripts","type":"book","attributes":[{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_fZ2IGYFXjkEy","title":"Server-side imports","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Server-side imports"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Nightly release.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Nightly release.html new file mode 100644 index 000000000..d3cdc2008 --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Nightly release.html @@ -0,0 +1,35 @@ +

    Nightly releases are versions built every day, containing the latest improvements + and bugfixes, directly from the main development branch. These versions + are generally useful in preparation for a release, to ensure that there + are no significant bugs that need to be addressed first, or they can be + used to confirm whether a particular bug is fixed or feature is well implemented.

    +

    Regarding the stability

    +

    Despite being on a development branch, generally the main branch is pretty + stable since PRs are tested before they are merged. If you notice any issues, + feel free to report them either via a ticket or via the Matrix.

    +

    Downloading the nightly release manually

    +

    Go to github.com/TriliumNext/Trilium/releases/tag/nightly and + look for the artifacts starting with TriliumNotes-main. Choose + the appropriate one for your platform (e.g. windows-x64.zip).

    +

    Depending on your use case, you can either test the portable version or + even use the installer.

    + + +

    Automatically download and install the latest nightly

    +

    This is pretty useful if you are a beta tester that wants to periodically + update their version:

    +

    On Ubuntu:

    #!/usr/bin/env bash
    +
    +name=TriliumNotes-linux-x64-nightly.deb
    +rm -f $name*
    +wget https://github.com/TriliumNext/Trilium/releases/download/nightly/$name
    +sudo apt-get install ./$name
    +rm $name
    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Events.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Backend scripts/Events.html similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Events.html rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Backend scripts/Events.html diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Backend scripts/Server-side imports.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Backend scripts/Server-side imports.html new file mode 100644 index 000000000..7820ccfe2 --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Backend scripts/Server-side imports.html @@ -0,0 +1,7 @@ +

    Older versions of Trilium Notes allowed the use of Common.js module imports + inside backend scripts, such as:

    const isBetween = require('dayjs/plugin/isBetween')
    +api.dayjs.extend(isBetween)
    +

    For newer versions, Node.js imports are not officially supported anymore, + since we've added a bundler which makes it more difficult to reuse dependencies.

    +

    Theoretically it's still possible to use imports by manually setting up + a node_modules in the server directory via npm or pnpm.

    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets.html similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets.html rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets.html diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS.html new file mode 100644 index 000000000..249da3ad3 --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS.html @@ -0,0 +1,9 @@ +

    In doRender():

    this.cssBlock(`#my-widget {
    +	position: absolute;
    +    bottom: 40px;
    +    left: 60px;
    +    z-index: 1;
    +}`)
    +
    +

    Reference: https://trilium.rocks/X7pxYpiu0lgU +

    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget.html new file mode 100644 index 000000000..7b571b628 --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget.html @@ -0,0 +1,30 @@ +
      +
    • doRender must not be overridden, instead doRenderBody() has + to be overridden.
    • +
    • parentWidget() must be set to “rightPane”.
    • +
    • widgetTitle() getter can optionally be overriden, otherwise + the widget will be displayed as “Untitled widget”.
    • +
    const template = `<div>Hi</div>`;
    +
    +class ToDoListWidget extends api.RightPanelWidget {
    +    
    +    get widgetTitle() {
    +        return "Title goes here";
    +    }
    +        
    +    get parentWidget() { return "right-pane" }
    +    
    +    doRenderBody() {
    +        this.$body.empty().append($(template));
    +    }   
    +    
    +    async refreshWithNote(note) {
    +        this.toggleInt(false);                
    +        this.triggerCommand("reEvaluateRightPaneVisibility");
    +        this.toggleInt(true);
    +        this.triggerCommand("reEvaluateRightPaneVisibility");
    +    }
    +}
    +
    +module.exports = new ToDoListWidget();
    +

    The implementation is in src/public/app/widgets/right_panel_widget.js.

    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets/Widget Basics.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html similarity index 71% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets/Widget Basics.html rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html index 273dbaae6..57a0a834b 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets/Widget Basics.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html @@ -16,11 +16,11 @@ module.exports = new MyWidget();

    To implement this widget:

      -
    1. Create a new JS Frontend note in Trilium and paste in the code +
    2. Create a new JS Frontend note in Trilium and paste in the code above.
    3. -
    4. Assign the #widget attribute to +
    5. Assign the #widget attribute to the note.
    6. -
    7. Restart Trilium or reload the window.
    8. +
    9. Restart Trilium or reload the window.

    To verify that the widget is working, open the developer tools (Cmd + Shift + I) and run document.querySelector("#my-widget"). If the element @@ -87,5 +87,18 @@ module.exports = new MyWidget(); } module.exports = new MyWidget(); -

    Reload the application one last time. When you click the button, a "Hello - World!" message should appear, confirming that your widget is fully functional.

    \ No newline at end of file +

    parentWidget() can be given the following values:

    +
      +
    • left-pane - This renders the widget on the left side of the + screen where the note tree lives.
    • +
    • center-pane - This renders the widget in the center of the + layout in the same location that notes and splits appear.
    • +
    • note-detail-pane - This renders the widget with the + note in the center pane. This means it can appear multiple times with splits.
    • +
    • right-pane - This renders the widget to the right of any opened + notes.
    • +
    +

    Reload the application + one last time. When you click the button, a "Hello World!" message should + appear, confirming that your widget is fully functional.

    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets/Word count widget.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget.html similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets/Word count widget.html rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget.html diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets/Word count widget_image.png b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget_image.png similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Custom Widgets/Word count widget_image.png rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget_image.png diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/Downloading responses from Goo.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo.html similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/Downloading responses from Goo.html rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo.html diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/New Task launcher button.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button.html similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/New Task launcher button.html rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button.html diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/New Task launcher button_i.png b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button_i.png similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/New Task launcher button_i.png rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button_i.png diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/Using promoted attributes .png b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes .png similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/Using promoted attributes .png rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes .png diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/Using promoted attributes to c.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c.html similarity index 100% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Examples/Using promoted attributes to c.html rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c.html diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index e3c2d4362..e75df02a9 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -120,80 +120,75 @@ ], "format": "markdown", "dataFileName": "Project Structure.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "zdQzavvHDl1k", + "notePath": [ + "jdjRLhLV3TtI", + "zdQzavvHDl1k" + ], + "title": "Documentation", + "notePosition": 280, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "documentation", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-book-open", + "isInheritable": false, + "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "T2W7WCZrYZBU", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "dataFileName": "Documentation.md", "attachments": [], - "dirFileName": "Project Structure", + "dirFileName": "Documentation", "children": [ { "isClone": false, - "noteId": "Jg7clqogFOyD", + "noteId": "LjqM0VUL1CrU", "notePath": [ "jdjRLhLV3TtI", - "cxfTSHIUQtt2", - "Jg7clqogFOyD" + "zdQzavvHDl1k", + "LjqM0VUL1CrU" ], - "title": "CKEditor", + "title": "Documentation references in the application", "notePosition": 10, "prefix": null, "isExpanded": false, "type": "text", "mime": "text/html", "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "BRhQZHgwaGyw", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-package", - "isInheritable": false, - "position": 10 - }, { "type": "label", "name": "shareAlias", - "value": "ckeditor", + "value": "doc-references", "isInheritable": false, "position": 20 } ], "format": "markdown", - "dataFileName": "CKEditor.md", - "attachments": [], - "dirFileName": "CKEditor", - "children": [ - { - "isClone": false, - "noteId": "BRhQZHgwaGyw", - "notePath": [ - "jdjRLhLV3TtI", - "cxfTSHIUQtt2", - "Jg7clqogFOyD", - "BRhQZHgwaGyw" - ], - "title": "Plugin migration guide", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "plugin-migration", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Plugin migration guide.md", - "attachments": [] - } - ] + "dataFileName": "Documentation references in th.md", + "attachments": [] } ] }, @@ -205,7 +200,7 @@ "a0mkxxB4Uvbf" ], "title": "Building", - "notePosition": 280, + "notePosition": 290, "prefix": null, "isExpanded": false, "type": "text", @@ -400,40 +395,6 @@ "dataFileName": "Build deliveries locally.md", "attachments": [] }, - { - "isClone": false, - "noteId": "zdQzavvHDl1k", - "notePath": [ - "jdjRLhLV3TtI", - "a0mkxxB4Uvbf", - "zdQzavvHDl1k" - ], - "title": "Documentation", - "notePosition": 60, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "documentation", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-book-open", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", - "dataFileName": "Documentation.md", - "attachments": [] - }, { "isClone": false, "noteId": "4nwtTJyjNDKd", @@ -470,6 +431,250 @@ } ] }, + { + "isClone": false, + "noteId": "qalhAaJoQ7AN", + "notePath": [ + "jdjRLhLV3TtI", + "qalhAaJoQ7AN" + ], + "title": "Dependencies", + "notePosition": 310, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bxs-component", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "Dependencies", + "children": [ + { + "isClone": false, + "noteId": "fa6hAJ9Ith3A", + "notePath": [ + "jdjRLhLV3TtI", + "qalhAaJoQ7AN", + "fa6hAJ9Ith3A" + ], + "title": "Per-dependency checks", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "Xfi1ScuBTKJf", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "updating-deps", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Per-dependency checks.md", + "attachments": [], + "dirFileName": "Per-dependency checks", + "children": [ + { + "isClone": false, + "noteId": "Xfi1ScuBTKJf", + "notePath": [ + "jdjRLhLV3TtI", + "qalhAaJoQ7AN", + "fa6hAJ9Ith3A", + "Xfi1ScuBTKJf" + ], + "title": "bettersqlite binaries", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "bettersqlite-binaries", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "bettersqlite binaries.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "Jg7clqogFOyD", + "notePath": [ + "jdjRLhLV3TtI", + "qalhAaJoQ7AN", + "Jg7clqogFOyD" + ], + "title": "CKEditor", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "BRhQZHgwaGyw", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-package", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "ckeditor", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "CKEditor.md", + "attachments": [], + "dirFileName": "CKEditor", + "children": [ + { + "isClone": false, + "noteId": "BRhQZHgwaGyw", + "notePath": [ + "jdjRLhLV3TtI", + "qalhAaJoQ7AN", + "Jg7clqogFOyD", + "BRhQZHgwaGyw" + ], + "title": "Plugin migration guide", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "plugin-migration", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Plugin migration guide.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "5gBYmUqiupBl", + "notePath": [ + "jdjRLhLV3TtI", + "qalhAaJoQ7AN", + "Jg7clqogFOyD", + "5gBYmUqiupBl" + ], + "title": "Differences from upstream", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "lY19SLxUMj3J", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "fullContentWidth", + "value": "", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "differences-from-upstream", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Differences from upstream.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "lY19SLxUMj3J", + "notePath": [ + "jdjRLhLV3TtI", + "qalhAaJoQ7AN", + "Jg7clqogFOyD", + "lY19SLxUMj3J" + ], + "title": "ckeditor5-math", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "ckeditor5-math", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "dataFileName": "ckeditor5-math.md", + "attachments": [ + { + "attachmentId": "UlSZYhYX8Kfj", + "title": "image.png", + "role": "image", + "mime": "image/png", + "position": 10, + "dataFileName": "ckeditor5-math_image.png" + } + ] + } + ] + } + ] + }, { "isClone": false, "noteId": "yeqU0zo0ZQ83", @@ -478,7 +683,7 @@ "yeqU0zo0ZQ83" ], "title": "Architecture", - "notePosition": 300, + "notePosition": 320, "prefix": null, "isExpanded": false, "type": "text", @@ -1234,7 +1439,7 @@ "UzRirf46Xi46" ], "title": "Hidden notes", - "notePosition": 70, + "notePosition": 80, "prefix": null, "isExpanded": false, "type": "text", @@ -1268,7 +1473,7 @@ "m2W35hwSDUeh" ], "title": "Icons", - "notePosition": 80, + "notePosition": 90, "prefix": null, "isExpanded": false, "type": "text", @@ -1309,7 +1514,7 @@ "TLXJwBDo8Rdv" ], "title": "Internationalisation / Translations", - "notePosition": 90, + "notePosition": 100, "prefix": null, "isExpanded": false, "type": "text", @@ -1444,7 +1649,7 @@ "Usiyzn9C4WFv" ], "title": "Launchers", - "notePosition": 100, + "notePosition": 110, "prefix": null, "isExpanded": false, "type": "text", @@ -1471,7 +1676,7 @@ "qjQNyaYXSNWu" ], "title": "Note Revisions", - "notePosition": 110, + "notePosition": 120, "prefix": null, "isExpanded": false, "type": "text", @@ -1505,7 +1710,7 @@ "7RBJMqVz2EsJ" ], "title": "Note Types", - "notePosition": 120, + "notePosition": 130, "prefix": null, "isExpanded": false, "type": "text", @@ -1839,7 +2044,7 @@ "6dC7ha5vjqqS" ], "title": "Options", - "notePosition": 130, + "notePosition": 140, "prefix": null, "isExpanded": false, "type": "text", @@ -1904,7 +2109,7 @@ "W0msUwLxm40d" ], "title": "Printing and exporting to PDF", - "notePosition": 140, + "notePosition": 150, "prefix": null, "isExpanded": false, "type": "text", @@ -1945,7 +2150,7 @@ "UvXpeSqfYc6d" ], "title": "Protected entities", - "notePosition": 150, + "notePosition": 160, "prefix": null, "isExpanded": false, "type": "text", @@ -2000,7 +2205,7 @@ "vphziLmQeQHY" ], "title": "Share", - "notePosition": 160, + "notePosition": 170, "prefix": null, "isExpanded": false, "type": "text", @@ -2034,7 +2239,7 @@ "n9wYW9nUTynV" ], "title": "Synchronisation", - "notePosition": 170, + "notePosition": 180, "prefix": null, "isExpanded": false, "type": "text", @@ -2098,7 +2303,7 @@ "k7RavjuXQt8z" ], "title": "Syntax highlighting", - "notePosition": 180, + "notePosition": 190, "prefix": null, "isExpanded": false, "type": "text", @@ -2132,7 +2337,7 @@ "7BCukQTCm7fv" ], "title": "Themes", - "notePosition": 190, + "notePosition": 200, "prefix": null, "isExpanded": false, "type": "text", @@ -2167,7 +2372,7 @@ "YjerxU7Aii8X" ], "title": "Troubleshooting", - "notePosition": 340, + "notePosition": 360, "prefix": null, "isExpanded": false, "type": "text", @@ -2218,18 +2423,45 @@ "format": "markdown", "dataFileName": "better-sqlite3 was compiled ag.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "QUb0fRhbpT8E", + "notePath": [ + "jdjRLhLV3TtI", + "YjerxU7Aii8X", + "QUb0fRhbpT8E" + ], + "title": "Error [TransformError]: The package \"@esbuild/linux-x64\" could not be found, and is needed by esbuild.", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "esbuild-error", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Error [TransformError] The pac.md", + "attachments": [] } ] }, { "isClone": false, - "noteId": "ibAPHul7Efvr", + "noteId": "dtKC3FmoWOrv", "notePath": [ "jdjRLhLV3TtI", - "ibAPHul7Efvr" + "dtKC3FmoWOrv" ], - "title": "Old documentation", - "notePosition": 350, + "title": "Testing", + "notePosition": 380, "prefix": null, "isExpanded": false, "type": "text", @@ -2238,25 +2470,40 @@ { "type": "label", "name": "shareAlias", - "value": "old-documentation", + "value": "testing", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bxs-eyedropper", + "isInheritable": false, + "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "w6gMvKh0UAVT", + "isInheritable": false, + "position": 40 } ], "format": "markdown", + "dataFileName": "Testing.md", "attachments": [], - "dirFileName": "Old documentation", + "dirFileName": "Testing", "children": [ { "isClone": false, - "noteId": "6BWwXzPCph4G", + "noteId": "C5MUQczZ5R9N", "notePath": [ "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "6BWwXzPCph4G" + "dtKC3FmoWOrv", + "C5MUQczZ5R9N" ], - "title": "Project maintenance", - "notePosition": 60, + "title": "Integration testing", + "notePosition": 10, "prefix": null, "isExpanded": false, "type": "text", @@ -2265,101 +2512,25 @@ { "type": "label", "name": "shareAlias", - "value": "project-maintenance", + "value": "integration", "isInheritable": false, "position": 20 } ], "format": "markdown", - "attachments": [], - "dirFileName": "Project maintenance", - "children": [ - { - "isClone": false, - "noteId": "fa6hAJ9Ith3A", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "6BWwXzPCph4G", - "fa6hAJ9Ith3A" - ], - "title": "Updating dependencies", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "Xfi1ScuBTKJf", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "updating-deps", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Updating dependencies.md", - "attachments": [], - "dirFileName": "Updating dependencies", - "children": [ - { - "isClone": false, - "noteId": "Xfi1ScuBTKJf", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "6BWwXzPCph4G", - "fa6hAJ9Ith3A", - "Xfi1ScuBTKJf" - ], - "title": "bettersqlite binaries", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "PXzm2t3sCdsP", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "bettersqlite-binaries", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "bettersqlite binaries.md", - "attachments": [] - } - ] - } - ] + "dataFileName": "Integration testing.md", + "attachments": [] }, { "isClone": false, - "noteId": "re0QTuqiYnVb", + "noteId": "bIfKwfCnqpeI", "notePath": [ "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "re0QTuqiYnVb" + "dtKC3FmoWOrv", + "bIfKwfCnqpeI" ], - "title": "Scripting", - "notePosition": 80, + "title": "Test database", + "notePosition": 20, "prefix": null, "isExpanded": false, "type": "text", @@ -2368,144 +2539,25 @@ { "type": "label", "name": "shareAlias", - "value": "scripting", + "value": "test-database", "isInheritable": false, "position": 20 } ], "format": "markdown", - "attachments": [], - "dirFileName": "Scripting", - "children": [ - { - "isClone": false, - "noteId": "gz6zq5rlHqMa", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "re0QTuqiYnVb", - "gz6zq5rlHqMa" - ], - "title": "Widgets", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "widgets", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Widgets.md", - "attachments": [], - "dirFileName": "Widgets", - "children": [ - { - "isClone": false, - "noteId": "M8IppdwVHSjG", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "re0QTuqiYnVb", - "gz6zq5rlHqMa", - "M8IppdwVHSjG" - ], - "title": "Right pane widget", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "right-pane-widget", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Right pane widget.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "VqGQnnPGnqAU", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "re0QTuqiYnVb", - "gz6zq5rlHqMa", - "VqGQnnPGnqAU" - ], - "title": "CSS", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "css", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "CSS.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "fZ2IGYFXjkEy", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "re0QTuqiYnVb", - "fZ2IGYFXjkEy" - ], - "title": "Server-side imports", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "server-imports", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Server-side imports.md", - "attachments": [] - } - ] + "dataFileName": "Test database.md", + "attachments": [] }, { "isClone": false, - "noteId": "Sow7ThJozkzJ", + "noteId": "w6gMvKh0UAVT", "notePath": [ "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "Sow7ThJozkzJ" + "dtKC3FmoWOrv", + "w6gMvKh0UAVT" ], - "title": "Documentation", - "notePosition": 90, + "title": "End-to-end tests", + "notePosition": 30, "prefix": null, "isExpanded": false, "type": "text", @@ -2514,718 +2566,14 @@ { "type": "label", "name": "shareAlias", - "value": "documentation", + "value": "running-tests", "isInheritable": false, "position": 20 } ], "format": "markdown", - "dataFileName": "Documentation.md", - "attachments": [ - { - "attachmentId": "2bUrJyt2yfsd", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "Documentation_image.png" - } - ], - "dirFileName": "Documentation", - "children": [ - { - "isClone": false, - "noteId": "LjqM0VUL1CrU", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "Sow7ThJozkzJ", - "LjqM0VUL1CrU" - ], - "title": "Documentation references in the application", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "doc-references", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Documentation references in th.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "dtKC3FmoWOrv", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dtKC3FmoWOrv" - ], - "title": "Testing", - "notePosition": 100, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "testing", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Testing.md", - "attachments": [], - "dirFileName": "Testing", - "children": [ - { - "isClone": false, - "noteId": "C5MUQczZ5R9N", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dtKC3FmoWOrv", - "C5MUQczZ5R9N" - ], - "title": "Integration testing", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "integration", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Integration testing", - "children": [ - { - "isClone": false, - "noteId": "pH4RsxqifVpK", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dtKC3FmoWOrv", - "C5MUQczZ5R9N", - "pH4RsxqifVpK" - ], - "title": "Setting up authentication", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "auth", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Setting up authentication.md", - "attachments": [ - { - "attachmentId": "aWFXFuXNon7J", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "Setting up authentication_.png" - }, - { - "attachmentId": "JRbtB4byzewo", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "1_Setting up authentication_.png" - } - ] - }, - { - "isClone": false, - "noteId": "bIfKwfCnqpeI", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dtKC3FmoWOrv", - "C5MUQczZ5R9N", - "bIfKwfCnqpeI" - ], - "title": "Test database", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "test-database", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Test database.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "w6gMvKh0UAVT", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dtKC3FmoWOrv", - "C5MUQczZ5R9N", - "w6gMvKh0UAVT" - ], - "title": "Running tests", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "running-tests", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Running tests.md", - "attachments": [] - } - ] - } - ] - }, - { - "isClone": false, - "noteId": "dHfw0XZE515z", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z" - ], - "title": "Sub-projects", - "notePosition": 110, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "subprojects", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Sub-projects", - "children": [ - { - "isClone": false, - "noteId": "JkTy2zz8Zbyq", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "JkTy2zz8Zbyq" - ], - "title": "CKEditor", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "ckeditor", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "CKEditor", - "children": [ - { - "isClone": false, - "noteId": "5yWZVlKPjLCC", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "JkTy2zz8Zbyq", - "5yWZVlKPjLCC" - ], - "title": "Environment setup", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "CaInsmrlZhR6", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "environment-setup", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Environment setup.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "CaInsmrlZhR6", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "JkTy2zz8Zbyq", - "CaInsmrlZhR6" - ], - "title": "Building the editor", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "5yWZVlKPjLCC", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "building-the-editor", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Building the editor.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "5gBYmUqiupBl", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "JkTy2zz8Zbyq", - "5gBYmUqiupBl" - ], - "title": "Differences from upstream", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "lY19SLxUMj3J", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "fullContentWidth", - "value": "", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "differences-from-upstream", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Differences from upstream.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "Q9FyKVERd1Lb", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "JkTy2zz8Zbyq", - "Q9FyKVERd1Lb" - ], - "title": "Updating to a newer version of CKEditor", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "5yWZVlKPjLCC", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "CaInsmrlZhR6", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "yAFSS6awVbaZ", - "isInheritable": false, - "position": 30 - }, - { - "type": "label", - "name": "shareAlias", - "value": "updating", - "isInheritable": false, - "position": 40 - } - ], - "format": "markdown", - "dataFileName": "Updating to a newer version of.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "yAFSS6awVbaZ", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "JkTy2zz8Zbyq", - "yAFSS6awVbaZ" - ], - "title": "Versions and external plugins", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "lY19SLxUMj3J", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "external-plugin-and-versions", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Versions and external plugins.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "lY19SLxUMj3J", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "lY19SLxUMj3J" - ], - "title": "ckeditor5-math", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "JkTy2zz8Zbyq", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "UMN2ABrBU5D7", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "CaInsmrlZhR6", - "isInheritable": false, - "position": 30 - }, - { - "type": "label", - "name": "shareAlias", - "value": "ckeditor5-math", - "isInheritable": false, - "position": 40 - } - ], - "format": "markdown", - "dataFileName": "ckeditor5-math.md", - "attachments": [ - { - "attachmentId": "UlSZYhYX8Kfj", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "ckeditor5-math_image.png" - } - ], - "dirFileName": "ckeditor5-math", - "children": [ - { - "isClone": false, - "noteId": "vpbbBaypScLb", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "lY19SLxUMj3J", - "vpbbBaypScLb" - ], - "title": "Updating with upstream", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "UMN2ABrBU5D7", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "updating-upstream", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Updating with upstream.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "UMN2ABrBU5D7", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "dHfw0XZE515z", - "lY19SLxUMj3J", - "UMN2ABrBU5D7" - ], - "title": "Release management & continuous integration", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "release-management", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Release management & continuou.md", - "attachments": [] - } - ] - } - ] - }, - { - "isClone": false, - "noteId": "QRLbiDXNxoWN", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "QRLbiDXNxoWN" - ], - "title": "Troubleshooting", - "notePosition": 120, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "troubleshooting", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Troubleshooting", - "children": [ - { - "isClone": false, - "noteId": "QUb0fRhbpT8E", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "QRLbiDXNxoWN", - "QUb0fRhbpT8E" - ], - "title": "Error [TransformError]: The package \"@esbuild/linux-x64\" could not be found, and is needed by esbuild.", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "esbuild-error", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Error [TransformError] The pac.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "x6lgrdztQwVB", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "x6lgrdztQwVB" - ], - "title": "Installation", - "notePosition": 130, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "installation", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Installation", - "children": [ - { - "isClone": false, - "noteId": "bOjeTrUViwLw", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "x6lgrdztQwVB", - "bOjeTrUViwLw" - ], - "title": "Download latest nightly and install it", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "download-nightly", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Download latest nightly and in.md", - "attachments": [] - } - ] + "dataFileName": "End-to-end tests.md", + "attachments": [] } ] } diff --git a/docs/Developer Guide/Developer Guide/Building/Documentation.md b/docs/Developer Guide/Developer Guide/Building/Documentation.md deleted file mode 100644 index 6ce33eeaf..000000000 --- a/docs/Developer Guide/Developer Guide/Building/Documentation.md +++ /dev/null @@ -1,24 +0,0 @@ -# Documentation -## Editing the documentation - -To edit the documentation run `pnpm edit-docs:edit-docs`. This will spin up a custom Trilium desktop instance which automatically imports the documentation into memory. Any changes will update in the background the files which can then be committed. - -## Automation - -The documentation is built via `apps/build-docs`: - -1. The output directory is cleared. -2. The User Guide and the Developer Guide are built. - 1. The documentation from the repo is archived and imported into an in-memory instance. - 2. The documentation is exported using the shared theme. -3. The API docs (internal and ETAPI) are statically rendered via Redocly. -4. The script API is generated via `typedoc` - -The `deploy-docs` workflow triggers the documentation build and uploads it to CloudFlare Pages. - -## Building locally - -In the Git root: - -* Run `pnpm docs:build`. The built documentation will be available in `site` at Git root. -* To also run a webserver to test it, run `pnpm docs:preview` (this will not build the documentation) and navigate to `localhost:9000`. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Building/Releasing a new version.md b/docs/Developer Guide/Developer Guide/Building/Releasing a new version.md index 8e62e8f36..19e3427ec 100644 --- a/docs/Developer Guide/Developer Guide/Building/Releasing a new version.md +++ b/docs/Developer Guide/Developer Guide/Building/Releasing a new version.md @@ -8,7 +8,7 @@ Releases are usually made directly from the `main` branch. The process is as follows: -1. Edit the Documentation to add a corresponding entry in the _Release notes_ section. +1. Edit the Documentation to add a corresponding entry in the _Release notes_ section. 2. In the root `package.json`, set `version` to the new version to be released. 3. Run `chore:update-version` to automatically update the version of the rest of the `package.json` files. 4. Run `pnpm i` to update the package lock as well. diff --git a/docs/Developer Guide/Developer Guide/Project Structure/CKEditor.md b/docs/Developer Guide/Developer Guide/Dependencies/CKEditor.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Project Structure/CKEditor.md rename to docs/Developer Guide/Developer Guide/Dependencies/CKEditor.md diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Differences from upstream.md b/docs/Developer Guide/Developer Guide/Dependencies/CKEditor/Differences from upstream.md similarity index 81% rename from docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Differences from upstream.md rename to docs/Developer Guide/Developer Guide/Dependencies/CKEditor/Differences from upstream.md index a5230d8f7..d8e2db46b 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Differences from upstream.md +++ b/docs/Developer Guide/Developer Guide/Dependencies/CKEditor/Differences from upstream.md @@ -1,5 +1,5 @@ # Differences from upstream -* Embeds [`~~isaul32/ckeditor5-math~~`](https://github.com/isaul32/ckeditor5-math)  ckeditor5-math, which is a third-party plugin for adding math support. CKEditor itself also has a [math plugin](https://ckeditor.com/docs/ckeditor5/latest/features/math-equations.html) with MathType and ChemType but it's premium-only. +* Embeds [`~~isaul32/ckeditor5-math~~`](https://github.com/isaul32/ckeditor5-math)  ckeditor5-math, which is a third-party plugin for adding math support. CKEditor itself also has a [math plugin](https://ckeditor.com/docs/ckeditor5/latest/features/math-equations.html) with MathType and ChemType but it's premium-only. * Zadam left a TODO in `findandreplaceUI`: `// FIXME: keyboard shortcut doesn't work:` [`https://github.com/ckeditor/ckeditor5/issues/10645`](https://github.com/ckeditor/ckeditor5/issues/10645) * `packages\ckeditor5-build-balloon-block\src\mention_customization.js` introduces note insertion via `@` character. diff --git a/docs/Developer Guide/Developer Guide/Project Structure/CKEditor/Plugin migration guide.md b/docs/Developer Guide/Developer Guide/Dependencies/CKEditor/Plugin migration guide.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Project Structure/CKEditor/Plugin migration guide.md rename to docs/Developer Guide/Developer Guide/Dependencies/CKEditor/Plugin migration guide.md diff --git a/docs/Developer Guide/Developer Guide/Dependencies/CKEditor/ckeditor5-math.md b/docs/Developer Guide/Developer Guide/Dependencies/CKEditor/ckeditor5-math.md new file mode 100644 index 000000000..e47a59f12 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Dependencies/CKEditor/ckeditor5-math.md @@ -0,0 +1,16 @@ +# ckeditor5-math +
    ckeditor5-math in action.
    + +A fork of [isaul32/ckeditor5-math](https://github.com/isaul32/ckeditor5-math), which is the CKEditor5 plugin which adds the math functionality. We keep our own version to be able to use it on the latest version of CKEditor, alongside some custom improvements. + +## Development environment + +* Tested on Node.js 20. +* The package manager is yarn 1 (v1.22.22 is known to be working fine for it at the time of writing). + +Important commands: + +* To check if the code has any formatting issues: `yarn lint` +* To start a live preview: `yarn start` +* To run the tests: `yarn test` + * Note that this requires Chromium, on NixOS this can be achieved by running a `nix-shell -p chromium`, and running `CHROME_BIN=$(which chromium) yarn test` inside it. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math_image.png b/docs/Developer Guide/Developer Guide/Dependencies/CKEditor/ckeditor5-math_image.png similarity index 100% rename from docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math_image.png rename to docs/Developer Guide/Developer Guide/Dependencies/CKEditor/ckeditor5-math_image.png diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies.md b/docs/Developer Guide/Developer Guide/Dependencies/Per-dependency checks.md similarity index 96% rename from docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies.md rename to docs/Developer Guide/Developer Guide/Dependencies/Per-dependency checks.md index fb27cb6bf..309042ffc 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies.md +++ b/docs/Developer Guide/Developer Guide/Dependencies/Per-dependency checks.md @@ -1,2 +1,2 @@ -# Updating dependencies -
    DependencyName in library_loaderThings to check for a basic sanity check Protected by unit tests
    better-sqlite3 See bettersqlite binaries.  
    jsdom 
    • Note map
    • Clipper
    • Note similarity
    Protected by typings, should catch any potential changes in API.Yes
    async-mutex 
    • Sync
      
    axios 
    • Can't be directly tested, as it's exposed only via the backend script API.
      
    sax 
    • EverNote imports
      
    • ws
    • debounce
     
    • Check any action is reported from server to client (e.g. delete a note).
      
    ejs 
    • Onboarding / first setup
      
    dayjs 
    • Day notes
      
    semver 
    • Application should start.
      
    https-proxy-agent ???  
    sax 
    • EverNote import
      
    ini 
    • Affects config, generally if the application starts then it should be OK.
      
    jsplumbRELATION_MAP
    • Relation map note type
      
    jquery.mark.es6MARKJS
    • In search, when highlighting the text that matched.
    • In search in HTML, which might not actually be used since it seems to have been replaced by CKEditor's own find & replace dialog.
      
    knockout.js 
    • Used in rendering the login and main layout of the application.
      
    normalize.min.css 
    • Used in shared notes.
      
    wheel-zoom.min.jsWHEEL_ZOOM
    • When opening a image that is in attachment.
    • When opening a stand-alone image note.
    • When zooming in a mermaid chart.
      
    fancytree 
    • The note tree should be fully functional.
      
    bootstrap 
    • Check mostly the on-boarding pages, when there is no database.
      
    electron-debug 
    • Run electron using npm run start-electron and check that the debug hotkeys are still working (Ctrl+Shift+I on Windows/Linux, Cmd+Alt+I for dev tools, Cmd/Ctrl+R for reload).
      
    electron-dl    
    eslint    
    marked 
    • Importing a markdown note.
     Yes
    force-graph 
    • Note map
      
    \ No newline at end of file +# Per-dependency checks +
    DependencyName in library_loaderThings to check for a basic sanity check Protected by unit tests
    better-sqlite3 See bettersqlite binaries.  
    jsdom 
    • Note map
    • Clipper
    • Note similarity
    Protected by typings, should catch any potential changes in API.Yes
    async-mutex 
    • Sync
      
    axios 
    • Can't be directly tested, as it's exposed only via the backend script API.
      
    sax 
    • EverNote imports
      
    • ws
    • debounce
     
    • Check any action is reported from server to client (e.g. delete a note).
      
    ejs 
    • Onboarding / first setup
      
    dayjs 
    • Day notes
      
    semver 
    • Application should start.
      
    https-proxy-agent ???  
    sax 
    • EverNote import
      
    ini 
    • Affects config, generally if the application starts then it should be OK.
      
    jsplumbRELATION_MAP
    • Relation map note type
      
    jquery.mark.es6MARKJS
    • In search, when highlighting the text that matched.
    • In search in HTML, which might not actually be used since it seems to have been replaced by CKEditor's own find & replace dialog.
      
    knockout.js 
    • Used in rendering the login and main layout of the application.
      
    normalize.min.css 
    • Used in shared notes.
      
    wheel-zoom.min.jsWHEEL_ZOOM
    • When opening a image that is in attachment.
    • When opening a stand-alone image note.
    • When zooming in a mermaid chart.
      
    fancytree 
    • The note tree should be fully functional.
      
    bootstrap 
    • Check mostly the on-boarding pages, when there is no database.
      
    electron-debug 
    • Run electron using npm run start-electron and check that the debug hotkeys are still working (Ctrl+Shift+I on Windows/Linux, Cmd+Alt+I for dev tools, Cmd/Ctrl+R for reload).
      
    electron-dl    
    eslint    
    marked 
    • Importing a markdown note.
     Yes
    force-graph 
    • Note map
      
    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Dependencies/Per-dependency checks/bettersqlite binaries.md b/docs/Developer Guide/Developer Guide/Dependencies/Per-dependency checks/bettersqlite binaries.md new file mode 100644 index 000000000..5a473b5e5 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Dependencies/Per-dependency checks/bettersqlite binaries.md @@ -0,0 +1,25 @@ +# bettersqlite binaries +### The native node bindings + +`better-sqlite3` has native Node bindings. With updates of `better-sqlite3`, but also of Electron and Node.js versions, these bindings need to be updated. + +Note that Electron and Node.js versions need different versions of these bindings, since Electron usually packs a different version of Node.js. + +During development, `pnpm install` tries to build or reuse prebuilt natives for the current Node.js version. This makes `npm run start-server` work out of the box. Trying to run `npm run start-electron` with these versions generally causes an error such as this: + +``` +Uncaught Exception: +Error: The module '/Users/elian/Projects/Notes/node_modules/better-sqlite3/build/Release/better_sqlite3.node' +was compiled against a different Node.js version using +NODE_MODULE_VERSION 108. This version of Node.js requires +NODE_MODULE_VERSION 116. Please try re-compiling or re-installing +the module (for instance, using `npm rebuild` or `npm install`). +``` + +### How the natives are handled + +To avoid issues between the `server` and the `desktop`, the `desktop` build gets its own copy of the `bettersqlite3` dependency in its `node_module`. This copy is then rebuilt automatically to match the Electron version. + +This process of rebuilding is handled by `scripts/electron-rebuild.mts` which runs automatically after `pnpm install` (via `postinstall`). + +If needed, the script can be run manually again via `pnpm postinstall`. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Documentation.md b/docs/Developer Guide/Developer Guide/Documentation.md similarity index 66% rename from docs/Developer Guide/Developer Guide/Old documentation/Documentation.md rename to docs/Developer Guide/Developer Guide/Documentation.md index 987582cac..4874aaa1d 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Documentation.md @@ -1,29 +1,32 @@ # Documentation -
    - -There are multiple types of documentation for Trilium: +There are multiple types of documentation for Trilium: * The _User Guide_ represents the user-facing documentation. This documentation can be browsed by users directly from within Trilium, by pressing F1. * The _Developer's Guide_ represents a set of Markdown documents that present the internals of Trilium, for developers. * _Release Notes_, this contains the change log for each released or soon-to-be-released version. The release notes are used automatically by the CI when releasing a version. * The _Script API_, which is an automatically generated documentation for the front-end and back-end APIs for scripts. -## Editing documentation +## Location of the documentation + +All documentation is stored in the [Trilium](https://github.com/TriliumNext/Trilium) repository: + +* `docs/Developer Guide` contains Markdown documentation that can be modified either externally (using a Markdown editor, or internally using Trilium). +* `docs/Release Notes` is also stored in Markdown format and can be freely edited. +* `docs/Script API` contains auto-generated files and thus must not be modified. +* `docs/User Guide` contains also Markdown-only documentation but must generally not be edited externally. + * The reason is that the `pnpm edit-docs:edit-docs` feature will not only import/export this documentation, but also generate the corresponding HTML documentation and meta structure in `src/public/app/doc_notes/en/User Guide`. + * It's theoretically possible to edit the Markdown files externally and then run `docs:edit` and trigger a change in order to build the documentation, but that would not be a very productive workflow. + +## Editing the documentation There are two ways to modify documentation: * Using a special mode of Trilium. * By manually editing the files. -### Using `docs:edit` +### Using the `edit-docs` app -To edit the documentation using Trilium, set up a working development environment and run the following commands: - -* On most operating systems, `npm run electron:switch` followed by `npm run docs:edit` -* On NixOS, `npm run docs:edit-nix`. - -> [!NOTE] -> `npm run docs:edit` acts very similar to `npm run electron:start` in the sense that you cannot both be editing documentation and starting a server. Using both `npm run electron:start` and `docs:edit` is possible, since they are using the same Electron instance. +To edit the documentation using Trilium, set up a working development environment via Environment Setup and run the following command: `pnpm edit-docs:edit-docs`. How it works: @@ -50,24 +53,30 @@ Important aspects to consider: * The Trilium import/export mechanism is not perfect, so if you make some modifications to the documentation using `docs:edit`, at the next import/export/import cycle some whitespace might get thrown in. It's generally safe to commit the changes as-is. * Since we are importing Markdown, editing HTML and then exporting the HTML back to Markdown there might be some edge cases where the formatting is not properly preserved. Try to identify such cases and report them in order to get them fixed (this will benefit also the users). -## Location of the documentation +## Automation -All documentation is stored in the [Notes](https://github.com/TriliumNext/Trilium) repository: +The documentation is built via `apps/build-docs`: -* `docs/Developer Guide` contains Markdown documentation that can be modified either externally (using a Markdown editor, or internally using Trilium). -* `docs/Release Notes` is also stored in Markdown format and can be freely edited. -* `docs/Script API` contains auto-generated files and thus must not be modified. -* `docs/User Guide` contains also Markdown-only documentation but must generally not be edited externally. - * The reason is that the `docs:edit` feature will not only import/export this documentation, but also generate the corresponding HTML documentation and meta structure in `src/public/app/doc_notes/en/User Guide`. - * It's theoretically possible to edit the Markdown files externally and then run `docs:edit` and trigger a change in order to build the documentation, but that would not be a very productive workflow. +1. The output directory is cleared. +2. The User Guide and the Developer Guide are built. + 1. The documentation from the repo is archived and imported into an in-memory instance. + 2. The documentation is exported using the shared theme. +3. The API docs (internal and ETAPI) are statically rendered via Redocly. +4. The script API is generated via `typedoc` + +The `deploy-docs` workflow triggers the documentation build and uploads it to CloudFlare Pages. ## Updating the Script API As mentioned previously, the Script API is not manually editable since it is auto-generated using TypeDoc. -To update the API documentation, simply run `npm run docs:build`. Compare the changes (if any) and commit them. +To update the API documentation, simply run `pnpm docs:build`. Compare the changes (if any) and commit them. -Note that in order to simulate the environment a script would have, some fake source files (in the sense that they are only used for documentation) are being used as entrypoints for the documentation: +Note that in order to simulate the environment a script would have, some fake source files (in the sense that they are only used for documentation) are being used as entrypoints for the documentation. Look for `backend_script_entrypoint` and `frontend_script_entrypoint` in `apps/build-docs/src`. -* For back-end scripts, the script is located in `src/services/backend_script_entrypoint.ts`. -* For front-end scripts, the script is located in `src/public/app/services/frontend_script_entrypoint.ts`. \ No newline at end of file +## Building locally + +In the Git root: + +* Run `pnpm docs:build`. The built documentation will be available in `site` at Git root. +* To also run a webserver to test it, run `pnpm docs:preview` (this will not build the documentation) and navigate to `localhost:9000`. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Documentation/Documentation references in th.md b/docs/Developer Guide/Developer Guide/Documentation/Documentation references in th.md similarity index 69% rename from docs/Developer Guide/Developer Guide/Old documentation/Documentation/Documentation references in th.md rename to docs/Developer Guide/Developer Guide/Documentation/Documentation references in th.md index 1c9a9fea9..79c1bd80e 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Documentation/Documentation references in th.md +++ b/docs/Developer Guide/Developer Guide/Documentation/Documentation references in th.md @@ -13,6 +13,8 @@ https://triliumnext.github.io/Docs/Wiki/ There is a pattern of “?” buttons throughout the application which make use of the `data-help-page` attribute. Whenever these buttons are pressed, the user is redirected to the corresponding wiki page by prepending the wiki root URL to the `data-help-page` attribute. +### Deprecated `help-page` attribute + Since the current wiki has a different structure than the original, for example to link to [https://github.com/TriliumNext/Docs/blob/main/Wiki/tree-concepts.md](https://github.com/TriliumNext/Docs/blob/main/Wiki/tree-concepts.md) the `data-help-page` attribute must be set to `tree-concepts.md`. For links to headings, simply add the heading after the `.md`: `tree-concepts.md#prefix` @@ -20,4 +22,12 @@ For links to headings, simply add the heading after the `.md`: `tree-concepts.md You can identify those by looking for: * `.attr("data-help-page"` -* `data-help-page="` \ No newline at end of file +* `data-help-page="` + +### More modern `data-in-app-help` attribute + +Instead of opening in a web browser, this opens the help directly in the application in a split view. This is handled via the `data-in-app-help` attribute, where the value is the note ID of the help page without the `_help_` prefix. + +### React + +Use the `HelpButton` component in the same fashion as the `data-in-app-help` attribute. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Documentation_image.png b/docs/Developer Guide/Developer Guide/Old documentation/Documentation_image.png deleted file mode 100644 index 542bb7858c9c03a5643192dfd2d2a8d4e10bc6e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7317 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 diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Installation/Download latest nightly and in.md b/docs/Developer Guide/Developer Guide/Old documentation/Installation/Download latest nightly and in.md deleted file mode 100644 index 0d5f2a2e4..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Installation/Download latest nightly and in.md +++ /dev/null @@ -1,12 +0,0 @@ -# Download latest nightly and install it -On Ubuntu: - -``` -#!/usr/bin/env bash - -name=TriliumNotes-linux-x64-nightly.deb -rm -f $name* -wget https://github.com/TriliumNext/Trilium/releases/download/nightly/$name -sudo apt-get install ./$name -rm $name -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/bettersqlite binaries.md b/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/bettersqlite binaries.md deleted file mode 100644 index 5538646ca..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Project maintenance/Updating dependencies/bettersqlite binaries.md +++ /dev/null @@ -1,41 +0,0 @@ -# bettersqlite binaries -### The native node bindings - -`better-sqlite3` has native Node bindings. With updates of `better-sqlite3`, but also of Electron and Node.js versions, these bindings need to be updated. - -Note that Electron and Node.js versions need different versions of these bindings, since Electron usually packs a different version of Node.js. - -During development, `npm install` tries to build or reuse prebuilt natives for the current Node.js version. This makes `npm run start-server` work out of the box. Trying to run `npm run start-electron` with these versions generally causes an error such as this: - -``` -Uncaught Exception: -Error: The module '/Users/elian/Projects/Notes/node_modules/better-sqlite3/build/Release/better_sqlite3.node' -was compiled against a different Node.js version using -NODE_MODULE_VERSION 108. This version of Node.js requires -NODE_MODULE_VERSION 116. Please try re-compiling or re-installing -the module (for instance, using `npm rebuild` or `npm install`). -``` - -### How the natives are handled - -Locally, this can be fixed by rebuilding the binaries, which is what `npm run switch-electron` does, which uses `electron-rebuild` under the hood. - -When the deliveries are built (see Build deliveries locally), it is not feasible to rebuild the dependencies since we are building for multiple platforms. Luckily, `better-sqlite3` provides these prebuilt binaries from us, available as artifacts on [their GitHub releases page](https://github.com/WiseLibs/better-sqlite3/releases/).  - -The build script manages the natives for `better-sqlite3` by keeping a copy of the `.node` file for every platform in `bin/better-sqlite3`. - -Whenever the version of `better-sqlite3` changes, the `.node` files must also be renewed based on their releases page. To simplify this process, a script was created in `bin/better-sqlite3/update.sh`. - -## How to update the natives - -The update script needs to know the version of Electron or Node.js for which to download the prebuilt binaries. - -If you get errors during download, check on the [releases page](https://github.com/WiseLibs/better-sqlite3/releases/) to ensure that this particular combination of Electron/Node actually exists for the given release. - -To determine the `NODE_MODULE_VERSION` that is required, look for `This version of Node.js requires` -`NODE_MODULE_VERSION` in the error when starting Trilium via: - -* `npm run start-electron` (or run any Electron [delivery](../../../Building/Build%20deliveries%20locally.md)), case in which the `ELECTRON_VERSION` variable needs to be changed. -* `npm run start-server` (or run the Linux server delivery), case in which the `NODE_VERSION` variable needs to be changed. - -Check which files got changed after running the update script and for each platform that got changed, test it locally via Build deliveries locally or via the CI. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Scripting/Server-side imports.md b/docs/Developer Guide/Developer Guide/Old documentation/Scripting/Server-side imports.md deleted file mode 100644 index c19366cee..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Scripting/Server-side imports.md +++ /dev/null @@ -1,16 +0,0 @@ -# Server-side imports -Trilium Notes allowed the use of Common.js module imports inside backend scripts, such as: - -``` -const isBetween = require('dayjs/plugin/isBetween') -api.dayjs.extend(isBetween) -``` - -For TriliumNext, the backend has been switched to use ESM which has a slightly more complicated syntax. Instead of `require` we now have `import` but which is asynchronous so it will require an `await`: - -``` -const isBetween = (await import("dayjs/plugin/isBetween")).default; -api.dayjs.extend(isBetween); -``` - -Note that `.default` is also usually needed to obtain the same behaviour as a CJS import. When in doubt, use `console.log` to see the output of the value returned by `await import`. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Scripting/Widgets.md b/docs/Developer Guide/Developer Guide/Old documentation/Scripting/Widgets.md deleted file mode 100644 index 57de0ad15..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Scripting/Widgets.md +++ /dev/null @@ -1,33 +0,0 @@ -# Widgets -To create a basic widget, simply create a code note with type “JS frontend”. Add the `#widget` label in order for it to be loaded at startup. - -``` -const template = `
    `; - -class MyWidget extends api.BasicWidget { - get position() { return 1; } - get parentWidget() { return "left-pane" } - - doRender() { - this.$widget = $(template); - return this.$widget; - } -} - -module.exports = new MyWidget(); -``` - -`parentWidget()` can be given the following values: - -* `left-pane` - This renders the widget on the left side of the screen where the note tree lives. -* `center-pane` - This renders the widget in the center of the layout in the same location that notes and splits appear. -* `note-detail-pane` - This renders the widget _with_ the note in the center pane. This means it can appear multiple times with splits. -* `right-pane` - This renders the widget to the right of any opened notes. - -* * * - -Reference: - -* [https://trilium.rocks/X7pxYpiu0lgU](https://trilium.rocks/X7pxYpiu0lgU) -* [https://github.com/zadam/trilium/wiki/Widget-Basics](https://github.com/zadam/trilium/wiki/Widget-Basics) -* [https://github.com/zadam/trilium/wiki/Frontend-Basics](https://github.com/zadam/trilium/wiki/Frontend-Basics) \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Building the editor.md b/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Building the editor.md deleted file mode 100644 index 940617026..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Building the editor.md +++ /dev/null @@ -1,21 +0,0 @@ -# Building the editor -First, make sure Environment setup is set up. - -## Trigger the build - -``` -cd packages/ckeditor5-build-trilium -yarn build -``` - -This will trigger a change in the `build` directory. - -## Copy the build artifact to the main repo - -Go to `packages/ckeditor5-build-balloon-trilium/build` and copy `ckeditor.js` and `ckeditor.js.map` to `libraries/ckeditor` in the `Notes` repository. - -An example shell command to copy it: - -``` -cp build/ckeditor.* ~/Projects/TriliumNext/Notes/libraries/ckeditor/ -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Environment setup.md b/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Environment setup.md deleted file mode 100644 index 76819a12b..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Environment setup.md +++ /dev/null @@ -1,26 +0,0 @@ -# Environment setup -## Clone the repository - -To set up the repository: - -``` -git clone https://github.com/TriliumNext/trilium-ckeditor5.git -``` - -## Install dependencies - -First, install root dependencies: - -``` -cd trilium-ckeditor5 -yarn install -``` - -Secondly, install the Trilium build dependencies: - -``` -cd packages/ckeditor5-build-trilium -yarn install -``` - -To trigger the build, see Building the editor. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Updating to a newer version of.md b/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Updating to a newer version of.md deleted file mode 100644 index 6e7808f67..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Updating to a newer version of.md +++ /dev/null @@ -1,65 +0,0 @@ -# Updating to a newer version of CKEditor -## Before updating - -Make sure that all the plugins are compatible with this version:  Versions and external plugins. If not, they will need to be updated to the same version as the one you are updating, by altering their `package.json`. - -If the plugin is external to the Trilium organisation, it needs to be forked first. - -## Environment setup - -The first step is to add the CKEditor source as a remote. This only needs to be done once. - -``` -git remote add upstream ssh://git@github.com/ckeditor/ckeditor5.git -git fetch upstream -``` - -## Update steps - -Due to how the repository is structured, updates to the CKEditor are a bit difficult. - -1. `git fetch upstream` -2. Pick a version and merge with it: `git merge -X theirs v99.2.0` -3. When there are complicated conflicts, sometimes it's easier to take everything from the target version instead, for a given path: `git checkout v99.2.0 -- "packages/ckeditor5-list/**"`. -4. Go in `packages/ckeditor5-build-trilium/package.json` and run `node sync-version.js` to update the `package.json` with the new versions. Review and commit the change. -5. Follow again the dependency setup in Environment setup, as they have changed. -6. [Run the build](Building%20the%20editor.md) and check that it works. - -## Final steps - -1. Start the TriliumNext server -2. If updated to a newer version of CKEditor, check type `CKEDITOR_VERSION` in the browser/Electron console to ensure that the correct version is used. -3. Do a basic sanity check as well. -4. Commit and push the change on both sides (in the `trilium-ckeditor5` repo and in the `Notes` repo). - -## Troubleshooting client side errors - -These errors might show up when testing the Trilium app: - -``` -ReferenceError: CKEditor is not defined -``` - -Usually this is a side effect of another error, check the logs carefully to see if there is any other related error (perhaps a `CKEditorError`). - -* * * - -``` -Uncaught error: Message: CKEditorError: ckeditor-duplicated-modules -``` - -Most likely cause is one of the external plugins is incompatible with this version. - -For example, to disable the Math plugin, go to `packages/ckeditor5-build-trilium/src/config.ts` and modify: - -```diff --import Math from '@triliumnext/ckeditor5-math/src/math'; --import AutoformatMath from '@triliumnext/ckeditor5-math/src/autoformatmath'; - -export const COMMON_PLUGINS = [ -- Math, -- AutoformatMath, -] -``` - -In this case, make sure to align the version of all the external plugins with the one you are updating to, usually by forking the external plugin and updating its versions. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Versions and external plugins.md b/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Versions and external plugins.md deleted file mode 100644 index 2fe124c31..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/CKEditor/Versions and external plugins.md +++ /dev/null @@ -1,8 +0,0 @@ -# Versions and external plugins -## External plugins - -| | | | -| --- | --- | --- | -| trilium-ckeditor5 | 43.2.0 | | -| `ckeditor5-math` | | See ckeditor5-math. | -| | | | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math.md b/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math.md deleted file mode 100644 index 91b6b265f..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math.md +++ /dev/null @@ -1,29 +0,0 @@ -# ckeditor5-math -
    ckeditor5-math in action.
    - -A fork of [isaul32/ckeditor5-math](https://github.com/isaul32/ckeditor5-math), which is the CKEditor5 plugin which adds the math functionality. The fork was created to handle #297: Insert Math appears to be broken. - -## Development environment - -* Tested on Node.js 20. -* The package manager is yarn 1 (v1.22.22 is known to be working fine for it at the time of writing). - -Important commands: - -* To check if the code has any formatting issues: `yarn lint` -* To start a live preview: `yarn start` -* To run the tests: `yarn test` - * Note that this requires Chromium, on NixOS this can be achieved by running a `nix-shell -p chromium`, and running `CHROME_BIN=$(which chromium) yarn test` inside it. - -## 📦 Packages - -The built artifact of the plugin is released by the CI and available on the [GitHub NPM registry](https://github.com/TriliumNext/ckeditor5-math/pkgs/npm/ckeditor5-math). - -Note that due to limitations on GitHub's registry, it is not possible to install this package without setting up a personal access token (even though the package itself is public). See [missing note] for more information. - -## ⬆️ Integrating with CKEditor - -1. Release a new version: Release management & continuous integration -2. In `trilium-ckeditor5`, go to `packages/ckeditor5-build-trilium/package.json` in the CKEditor repository and change the dependency of `@triliumnext/ckeditor5-math` to the newly released version. -3. Run `yarn install`. -4. Proceed with Building the editor to integrate everything into TriliumNext and then commit the change. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math/Release management & continuou.md b/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math/Release management & continuou.md deleted file mode 100644 index 1511f4bfc..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math/Release management & continuou.md +++ /dev/null @@ -1,16 +0,0 @@ -# Release management & continuous integration -To automate the release process, a GitHub workflow has been added which builds the package and releases it over to GitHub NPM registry. - -The workflow publishes a release whenever a tag with the correct format is pushed. - -The steps are as follows: - -1. Ensure that the source code is clean and ready for a release. -2. Go to `package.json` and bump the `version` field. -3. Commit the changes. -4. Tag the commit with `v1.2.3`, with the correct version number. -5. Push the changes. - -Then follow the CI and it should indicate success. Afterwards, check the [package](https://github.com/TriliumNext/ckeditor5-math/pkgs/npm/ckeditor5-math)section to ensure that the package is in the “Recent Versions” section. - -If the changes could benefit upstream, consider opening a pull request with the changes there as well. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math/Updating with upstream.md b/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math/Updating with upstream.md deleted file mode 100644 index b69003358..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Sub-projects/ckeditor5-math/Updating with upstream.md +++ /dev/null @@ -1,21 +0,0 @@ -# Updating with upstream -If there was a change in the upstream repository ([isaul32/ckeditor5-math](https://github.com/isaul32/ckeditor5-math)), it can be integrated as follows: - -1. Add the upstream as remote (`git remote add upstream ssh://git@github.com/isaul32/ckeditor5-math.git`). -2. Fetch the changes: `git fetch upstream` -3. Merge with a tag: `git merge v43.1.2` -4. Solve the conflict in `package.json` by: - 1. Taking the same version as the upcoming one and appending `-hotfix1`. - 2. Keeping the `@triliumnext/ckeditor5-math` name. -5. Install dependencies: `yarn install` -6. Check that the build works via `yarn prepublishOnly`. -7. Commit the changes, push them. -8. Release a version with Release management & continuous integration. - -## CI job not triggered after pushing all the upstream tags - -If the CI job was not triggered, you might have accidentally pushed a lot of tags using `git push --tags`. Manually delete the tag and push it again: - -```diff -git push -d origin v43.1.2-hotfix1 && git push --tags -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/1_Setting up authentication_.png b/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/1_Setting up authentication_.png deleted file mode 100644 index 020472c6d94f186ac08e26d9e42e6a5c179b952e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9957 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 diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Running tests.md b/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Running tests.md deleted file mode 100644 index 3ab98a39c..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Running tests.md +++ /dev/null @@ -1,38 +0,0 @@ -# Running tests -## First-time run - -Before starting Playwright, it has to be installed locally via: - -``` -npx playwright install -``` - -## Starting the integration test server - -There are two types of integration test servers: - -* `npm run integration-mem-db` will run a server with dev mode disabled. - * This is usually what the end user will see when accessing a server instance. - * It will not test the Electron/desktop side of the application. - * Changes to the public scripts will not take effect until running `npm run webpack`. -* `npm run integration-mem-db-dev` will run a server with dev mode enabled. - * This is usually what a dev sees when running `npm run start-server`. - * The difference with the production one is that the assets are loaded directly from files and as such it does not require `npm run webpack` to see changes. - -Either options will open up a server on [localhost:8082](http://localhost:8082) that can be accessed either manually via the browser or via Playwright. - -When asked for a password, the password is `demo1234`. - -## Starting the interactive test runner - -After starting the integration test server, to run the Playwright UI, run in the terminal: - -``` -npx playwright test --ui -``` - -It is also possible to run the interactive code generator instead: - -``` -npx playwright codegen -``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Setting up authentication.md b/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Setting up authentication.md deleted file mode 100644 index 4df7880fe..000000000 --- a/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Setting up authentication.md +++ /dev/null @@ -1,12 +0,0 @@ -# Setting up authentication -There is a setup test that stores the authentication token so that it can be reused throughout all the tests. - -If tests fail due to being stuck on login, then it must be run. - -To run it manually press “all” near the “Status:” text on top-left of the window - -
    - -Then check “setup” and look for `auth.setup.ts` and press its corresponding Run button: - -
    \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Setting up authentication_.png b/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Setting up authentication_.png deleted file mode 100644 index 4b260dfbc7d3033d1d58ad680b8bc330bdfc0598..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15080 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 XKO%y|H|qi?Sdk|Za^i(z`u_h1pk_^7 diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Testing.md b/docs/Developer Guide/Developer Guide/Testing.md similarity index 77% rename from docs/Developer Guide/Developer Guide/Old documentation/Testing.md rename to docs/Developer Guide/Developer Guide/Testing.md index 95efd9919..a1f8a1983 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Testing.md +++ b/docs/Developer Guide/Developer Guide/Testing.md @@ -17,17 +17,14 @@ Note that some integration tests rely on an in-memory database in order to funct ### REST API testing for the server -Some original work was done by Zadam in `/test-etapi`, using `.http` files. - -New effort using `vitest` and `supertest` to initialize the Express server and run assertions without having to make actual requests to the server. +API tests are handled via `vitest` and `supertest` to initialize the Express server and run assertions without having to make actual requests to the server. An important aspect is that we have access to the Express `app` which allows for interesting assertions such as checking the state of the server, registering debug middleware and so on. -One example is `src/share/routes.spec.ts`. +One example is `src/share/routes.spec.ts`, or for the ETAPI in `apps/server/spec/etapi`. These integration tests are run alongside unit tests. ## End-to-end testing -* This tests both the client and the server, by running the server and then using Playwright to query the state of the page. -* These can be found in `/e2e`. \ No newline at end of file +See e2e tests. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Testing/End-to-end tests.md b/docs/Developer Guide/Developer Guide/Testing/End-to-end tests.md new file mode 100644 index 000000000..387940158 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Testing/End-to-end tests.md @@ -0,0 +1,31 @@ +# End-to-end tests +* This tests both the client and the server, by running the server and then using Playwright to query the state of the page. +* These can be found in `apps/server-e2e` and `apps/desktop/e2e`. + +## First-time run + +Before starting Playwright, it has to be installed locally via: + +``` +pnpm playwright install +``` + +## Starting the integration test server + +Simply run `pnpm e2e` in one of the e2e projects. + +The integration server doesn't have authentication enabled to avoid login issues. + +## Starting the interactive test runner + +After starting the integration test server, to run the Playwright UI, run in the terminal: + +``` +pnpm playwright test --ui +``` + +It is also possible to run the interactive code generator instead: + +``` +pnpm playwright codegen +``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Testing/Integration testing.md b/docs/Developer Guide/Developer Guide/Testing/Integration testing.md new file mode 100644 index 000000000..e69de29bb diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Test database.md b/docs/Developer Guide/Developer Guide/Testing/Test database.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Old documentation/Testing/Integration testing/Test database.md rename to docs/Developer Guide/Developer Guide/Testing/Test database.md diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Troubleshooting/Error [TransformError] The pac.md b/docs/Developer Guide/Developer Guide/Troubleshooting/Error [TransformError] The pac.md similarity index 99% rename from docs/Developer Guide/Developer Guide/Old documentation/Troubleshooting/Error [TransformError] The pac.md rename to docs/Developer Guide/Developer Guide/Troubleshooting/Error [TransformError] The pac.md index 8a93a52be..82a5d93a8 100644 --- a/docs/Developer Guide/Developer Guide/Old documentation/Troubleshooting/Error [TransformError] The pac.md +++ b/docs/Developer Guide/Developer Guide/Troubleshooting/Error [TransformError] The pac.md @@ -36,5 +36,5 @@ The solution is to remove `node_modules` and reinstall all dependencies: ``` rm -r node_modules -npm install +pnpm install ``` \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index 24e168341..a38998354 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -14081,6 +14081,33 @@ "format": "markdown", "dataFileName": "Safe mode.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "HAIOFBoYIIdO", + "notePath": [ + "pOsGYCXsbNQG", + "tC7s2alapj8V", + "HAIOFBoYIIdO" + ], + "title": "Nightly release", + "notePosition": 260, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-moon", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Nightly release.md", + "attachments": [] } ] }, @@ -14617,152 +14644,238 @@ { "type": "label", "name": "iconClass", - "value": "bx bx-info-circle", + "value": "bx bx-window", "isInheritable": false, "position": 40 } ], "format": "markdown", "dataFileName": "Frontend Basics.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "es8OU2GuguFU", - "notePath": [ - "pOsGYCXsbNQG", - "CdNpE2pqjmI6", - "es8OU2GuguFU" - ], - "title": "Examples", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "examples", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-code-alt", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", "attachments": [], - "dirFileName": "Examples", + "dirFileName": "Frontend Basics", "children": [ { "isClone": false, - "noteId": "TjLYAo3JMO8X", + "noteId": "MgibgPcfeuGz", "notePath": [ "pOsGYCXsbNQG", "CdNpE2pqjmI6", - "es8OU2GuguFU", - "TjLYAo3JMO8X" + "yIhgI5H7A2Sm", + "MgibgPcfeuGz" ], - "title": "\"New Task\" launcher button", + "title": "Custom Widgets", "notePosition": 10, "prefix": null, "isExpanded": false, "type": "text", - "mime": "text/html", + "mime": "text/markdown", "attributes": [ { - "type": "relation", - "name": "internalLink", - "value": "xYjQUYhpbUEW", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "xYmIYSP6wE3F", + "type": "label", + "name": "shareAlias", + "value": "custom-widget", "isInheritable": false, "position": 20 }, - { - "type": "relation", - "name": "internalLink", - "value": "6f9hih2hXXZk", - "isInheritable": false, - "position": 30 - }, - { - "type": "relation", - "name": "internalLink", - "value": "zEY4DaJG4YT5", - "isInheritable": false, - "position": 40 - }, - { - "type": "relation", - "name": "internalLink", - "value": "m1lbrzyKDaRB", - "isInheritable": false, - "position": 50 - }, - { - "type": "relation", - "name": "internalLink", - "value": "s8alTXmpFR61", - "isInheritable": false, - "position": 60 - }, - { - "type": "relation", - "name": "internalLink", - "value": "yIhgI5H7A2Sm", - "isInheritable": false, - "position": 70 - }, { "type": "label", "name": "iconClass", - "value": "bx bx-task", + "value": "bx bxs-widget", "isInheritable": false, - "position": 80 - }, - { - "type": "label", - "name": "shareAlias", - "value": "new-task-button", - "isInheritable": false, - "position": 90 + "position": 30 } ], "format": "markdown", - "dataFileName": "New Task launcher button.md", - "attachments": [ + "dataFileName": "Custom Widgets.md", + "attachments": [], + "dirFileName": "Custom Widgets", + "children": [ { - "attachmentId": "9C2JA6tdtRpN", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "New Task launcher button_i.png" + "isClone": false, + "noteId": "YNxAqkI5Kg1M", + "notePath": [ + "pOsGYCXsbNQG", + "CdNpE2pqjmI6", + "yIhgI5H7A2Sm", + "MgibgPcfeuGz", + "YNxAqkI5Kg1M" + ], + "title": "Word count widget", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "6tZeKvSHEUiB", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "6f9hih2hXXZk", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "s8alTXmpFR61", + "isInheritable": false, + "position": 30 + }, + { + "type": "label", + "name": "shareAlias", + "value": "word-count", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "dataFileName": "Word count widget.md", + "attachments": [ + { + "attachmentId": "JhM9NWfebzPi", + "title": "image.png", + "role": "image", + "mime": "image/png", + "position": 10, + "dataFileName": "Word count widget_image.png" + } + ] + }, + { + "isClone": false, + "noteId": "SynTBQiBsdYJ", + "notePath": [ + "pOsGYCXsbNQG", + "CdNpE2pqjmI6", + "yIhgI5H7A2Sm", + "MgibgPcfeuGz", + "SynTBQiBsdYJ" + ], + "title": "Widget Basics", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/markdown", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "zEY4DaJG4YT5", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "BFs8mudNFgCS", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "GLks18SNjxmC", + "isInheritable": false, + "position": 30 + }, + { + "type": "label", + "name": "shareAlias", + "value": "widget-basics", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "s8alTXmpFR61", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "dataFileName": "Widget Basics.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "M8IppdwVHSjG", + "notePath": [ + "pOsGYCXsbNQG", + "CdNpE2pqjmI6", + "yIhgI5H7A2Sm", + "MgibgPcfeuGz", + "M8IppdwVHSjG" + ], + "title": "Right pane widget", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "right-pane-widget", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Right pane widget.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "VqGQnnPGnqAU", + "notePath": [ + "pOsGYCXsbNQG", + "CdNpE2pqjmI6", + "yIhgI5H7A2Sm", + "MgibgPcfeuGz", + "VqGQnnPGnqAU" + ], + "title": "CSS", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "css", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "CSS.md", + "attachments": [] } ] }, { "isClone": false, - "noteId": "7kZPMD0uFwkH", + "noteId": "es8OU2GuguFU", "notePath": [ "pOsGYCXsbNQG", "CdNpE2pqjmI6", - "es8OU2GuguFU", - "7kZPMD0uFwkH" + "yIhgI5H7A2Sm", + "es8OU2GuguFU" ], - "title": "Downloading responses from Google Forms", + "title": "Examples", "notePosition": 20, "prefix": null, "isExpanded": false, @@ -14772,49 +14885,182 @@ { "type": "label", "name": "shareAlias", - "value": "responses-from-google-forms", + "value": "examples", "isInheritable": false, "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Downloading responses from Goo.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "DL92EjAaXT26", - "notePath": [ - "pOsGYCXsbNQG", - "CdNpE2pqjmI6", - "es8OU2GuguFU", - "DL92EjAaXT26" - ], - "title": "Using promoted attributes to configure scripts", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ + }, { "type": "label", - "name": "shareAlias", - "value": "promoted-attributes-config", + "name": "iconClass", + "value": "bx bx-code-alt", "isInheritable": false, - "position": 20 + "position": 30 } ], "format": "markdown", - "dataFileName": "Using promoted attributes to c.md", - "attachments": [ + "attachments": [], + "dirFileName": "Examples", + "children": [ { - "attachmentId": "7P3jzVEa1mk7", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "Using promoted attributes .png" + "isClone": false, + "noteId": "TjLYAo3JMO8X", + "notePath": [ + "pOsGYCXsbNQG", + "CdNpE2pqjmI6", + "yIhgI5H7A2Sm", + "es8OU2GuguFU", + "TjLYAo3JMO8X" + ], + "title": "\"New Task\" launcher button", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "xYjQUYhpbUEW", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "xYmIYSP6wE3F", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "6f9hih2hXXZk", + "isInheritable": false, + "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "zEY4DaJG4YT5", + "isInheritable": false, + "position": 40 + }, + { + "type": "relation", + "name": "internalLink", + "value": "m1lbrzyKDaRB", + "isInheritable": false, + "position": 50 + }, + { + "type": "relation", + "name": "internalLink", + "value": "s8alTXmpFR61", + "isInheritable": false, + "position": 60 + }, + { + "type": "relation", + "name": "internalLink", + "value": "yIhgI5H7A2Sm", + "isInheritable": false, + "position": 70 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-task", + "isInheritable": false, + "position": 80 + }, + { + "type": "label", + "name": "shareAlias", + "value": "new-task-button", + "isInheritable": false, + "position": 90 + } + ], + "format": "markdown", + "dataFileName": "New Task launcher button.md", + "attachments": [ + { + "attachmentId": "9C2JA6tdtRpN", + "title": "image.png", + "role": "image", + "mime": "image/png", + "position": 10, + "dataFileName": "New Task launcher button_i.png" + } + ] + }, + { + "isClone": false, + "noteId": "7kZPMD0uFwkH", + "notePath": [ + "pOsGYCXsbNQG", + "CdNpE2pqjmI6", + "yIhgI5H7A2Sm", + "es8OU2GuguFU", + "7kZPMD0uFwkH" + ], + "title": "Downloading responses from Google Forms", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "responses-from-google-forms", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Downloading responses from Goo.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "DL92EjAaXT26", + "notePath": [ + "pOsGYCXsbNQG", + "CdNpE2pqjmI6", + "yIhgI5H7A2Sm", + "es8OU2GuguFU", + "DL92EjAaXT26" + ], + "title": "Using promoted attributes to configure scripts", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "promoted-attributes-config", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Using promoted attributes to c.md", + "attachments": [ + { + "attachmentId": "7P3jzVEa1mk7", + "title": "image.png", + "role": "image", + "mime": "image/png", + "position": 10, + "dataFileName": "Using promoted attributes .png" + } + ] } ] } @@ -14822,162 +15068,76 @@ }, { "isClone": false, - "noteId": "GPERMystNGTB", + "noteId": "SPirpZypehBG", "notePath": [ "pOsGYCXsbNQG", "CdNpE2pqjmI6", - "GPERMystNGTB" + "SPirpZypehBG" ], - "title": "Events", - "notePosition": 70, + "title": "Backend scripts", + "notePosition": 30, "prefix": null, "isExpanded": false, "type": "text", - "mime": "text/markdown", + "mime": "text/html", "attributes": [ { - "type": "relation", - "name": "internalLink", - "value": "CdNpE2pqjmI6", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "c5xB8m4g2IY6", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "zEY4DaJG4YT5", + "type": "label", + "name": "shareAlias", + "value": "backend-basics", "isInheritable": false, "position": 30 }, - { - "type": "label", - "name": "shareAlias", - "value": "events", - "isInheritable": false, - "position": 10 - }, { "type": "label", "name": "iconClass", - "value": "bx bx-rss", + "value": "bx bx-server", "isInheritable": false, - "position": 20 + "position": 40 } ], "format": "markdown", - "dataFileName": "Events.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "MgibgPcfeuGz", - "notePath": [ - "pOsGYCXsbNQG", - "CdNpE2pqjmI6", - "MgibgPcfeuGz" - ], - "title": "Custom Widgets", - "notePosition": 80, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/markdown", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "custom-widget", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bxs-widget", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", - "dataFileName": "Custom Widgets.md", "attachments": [], - "dirFileName": "Custom Widgets", + "dirFileName": "Backend scripts", "children": [ { "isClone": false, - "noteId": "YNxAqkI5Kg1M", + "noteId": "fZ2IGYFXjkEy", "notePath": [ "pOsGYCXsbNQG", "CdNpE2pqjmI6", - "MgibgPcfeuGz", - "YNxAqkI5Kg1M" + "SPirpZypehBG", + "fZ2IGYFXjkEy" ], - "title": "Word count widget", + "title": "Server-side imports", "notePosition": 10, "prefix": null, "isExpanded": false, "type": "text", "mime": "text/html", "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "6tZeKvSHEUiB", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "6f9hih2hXXZk", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "s8alTXmpFR61", - "isInheritable": false, - "position": 30 - }, { "type": "label", "name": "shareAlias", - "value": "word-count", + "value": "server-imports", "isInheritable": false, - "position": 40 + "position": 20 } ], "format": "markdown", - "dataFileName": "Word count widget.md", - "attachments": [ - { - "attachmentId": "JhM9NWfebzPi", - "title": "image.png", - "role": "image", - "mime": "image/png", - "position": 10, - "dataFileName": "Word count widget_image.png" - } - ] + "dataFileName": "Server-side imports.md", + "attachments": [] }, { "isClone": false, - "noteId": "SynTBQiBsdYJ", + "noteId": "GPERMystNGTB", "notePath": [ "pOsGYCXsbNQG", "CdNpE2pqjmI6", - "MgibgPcfeuGz", - "SynTBQiBsdYJ" + "SPirpZypehBG", + "GPERMystNGTB" ], - "title": "Widget Basics", + "title": "Events", "notePosition": 20, "prefix": null, "isExpanded": false, @@ -14987,34 +15147,41 @@ { "type": "relation", "name": "internalLink", - "value": "zEY4DaJG4YT5", + "value": "CdNpE2pqjmI6", "isInheritable": false, "position": 10 }, { "type": "relation", "name": "internalLink", - "value": "BFs8mudNFgCS", + "value": "c5xB8m4g2IY6", "isInheritable": false, "position": 20 }, { "type": "relation", "name": "internalLink", - "value": "GLks18SNjxmC", + "value": "zEY4DaJG4YT5", "isInheritable": false, "position": 30 }, { "type": "label", "name": "shareAlias", - "value": "widget-basics", + "value": "events", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-rss", "isInheritable": false, "position": 20 } ], "format": "markdown", - "dataFileName": "Widget Basics.md", + "dataFileName": "Events.md", "attachments": [] } ] @@ -15028,7 +15195,7 @@ "GLks18SNjxmC" ], "title": "Script API", - "notePosition": 90, + "notePosition": 100, "prefix": null, "isExpanded": false, "type": "text", @@ -15191,7 +15358,7 @@ "vElnKeDNPSVl" ], "title": "Logging", - "notePosition": 100, + "notePosition": 110, "prefix": null, "isExpanded": false, "type": "text", diff --git a/docs/User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager.md b/docs/User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager.md index 20cf37c5e..13a4a5d94 100644 --- a/docs/User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager.md +++ b/docs/User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager.md @@ -15,7 +15,7 @@ New tasks are created in the TODO note which has `~child:template` [relation](.. ### Attributes -Task template defines several [promoted attributes](../Attributes/Promoted%20Attributes.md) - todoDate, doneDate, tags, location. Importantly it also defines `~runOnAttributeChange` relation - [event](../../Scripting/Events.md) handler which is run on attribute change. This [script](../../Scripting.md) handles when e.g. we fill out the doneDate attribute - meaning the task is done and should be moved to "Done" note and removed from TODO, locations and tags. +Task template defines several [promoted attributes](../Attributes/Promoted%20Attributes.md) - todoDate, doneDate, tags, location. Importantly it also defines `~runOnAttributeChange` relation - [event](../../Scripting/Backend%20scripts/Events.md) handler which is run on attribute change. This [script](../../Scripting.md) handles when e.g. we fill out the doneDate attribute - meaning the task is done and should be moved to "Done" note and removed from TODO, locations and tags. ### New task button diff --git a/docs/User Guide/User Guide/Advanced Usage/Attributes/Labels.md b/docs/User Guide/User Guide/Advanced Usage/Attributes/Labels.md index 1a90f31cb..cb68dab93 100644 --- a/docs/User Guide/User Guide/Advanced Usage/Attributes/Labels.md +++ b/docs/User Guide/User Guide/Advanced Usage/Attributes/Labels.md @@ -39,4 +39,4 @@ This is a list of labels that Trilium natively supports. > [!TIP] > Some labels presented here end with a `*`. That means that there are multiple labels with the same prefix, consult the specific page linked in the description of that label for more information. -
    LabelDescription
    disableVersioningDisables automatic creation of Note Revisions for a particular note. Useful for e.g. large, but unimportant notes - e.g. large JS libraries used for scripting.
    versioningLimitLimits the maximum number of Note Revisions for a particular note, overriding the global settings.
    calendarRootMarks the note which should be used as root for Day Notes. Only one should be marked as such.
    archivedHides notes from default search results and dialogs. Archived notes can optionally be hidden in the Note Tree.
    excludeFromExportExcludes this note and its children when exporting.
    run, runOnInstance, runAtHourSee Events.
    disableInclusionScripts with this label won't be included into parent script execution.
    sorted

    Keeps child notes sorted by title alphabetically.

    When given a value, it will sort by the value of another label instead. If one of the child notes doesn't have the specified label, the title will be used for them instead.

    sortDirection

    If sorted is applied, specifies the direction of the sort:

    • ASC, ascending (default)
    • DESC, descending
    sortFoldersFirstIf sorted is applied, folders (notes with children) will be sorted as a group at the top, and the rest will be sorted.
    topIf sorted is applied to the parent note, keeps given note on top in its parent.
    hidePromotedAttributesHide Promoted Attributes on this note. Generally useful when defining inherited attributes, but the parent note doesn't need them.
    readOnlyMarks a note to be always be read-only, if it's a supported note (text, code, mermaid).
    autoReadOnlyDisabledDisables automatic read-only mode for the given note.
    appCssMarks CSS notes which are loaded into the Trilium application and can thus be used to modify Trilium's looks. See Custom app-wide CSS for more info.
    appThemeMarks CSS notes which are full Trilium themes and are thus available in Trilium options. See Theme development for more information.
    appThemeBaseSet to next, next-light, or next-dark to use the corresponding TriliumNext theme (auto, light or dark) as the base for a custom theme, instead of the legacy one. See Customize the Next theme for more information.
    cssClassValue of this label is then added as CSS class to the node representing given note in the Note Tree. This can be useful for advanced theming. Can be used in template notes.
    iconClassvalue of this label is added as a CSS class to the icon on the tree which can help visually distinguish the notes in the tree. Example might be bx bx-home - icons are taken from boxicons. Can be used in template notes.
    pageSizeSpecifies the number of items per page in Note List.
    customRequestHandlerSee Custom Request Handler.
    customResourceProviderSee Custom Resource Providers.
    widgetMarks this note as a custom widget which will be added to the Trilium component tree. See Custom Widgets for more information.
    searchHomeNew search notes will be created as children of this note (see Saved Search).
    workspace and related attributesSee Workspaces.
    inboxdefault inbox location for new notes - when you create a note using new note button in the sidebar, notes will be created as child notes in the note marked as with #inbox label.
    sqlConsoleHomeDefault location of SQL Console notes
    bookmarkedIndicates this note is a bookmark.
    bookmarkFolderNote with this label will appear in bookmarks as folder (allowing access to its children). See Bookmarks for more information.
    share*See the attribute reference in Sharing.
    displayRelations, hideRelationsComma delimited names of relations which should be displayed/hidden in a Relation Map (both the note type and the Note Map (Link map, Tree map) general functionality).
    titleTemplate

    Default title of notes created as children of this note. This value is evaluated as a JavaScript string and thus can be enriched with dynamic content via the injected now and parentNote variables.

    Examples:

    • \({parentNote.getLabel('authorName')}'s literary works
    • Log for \){now.format('YYYY-MM-DD HH:mm:ss')}
    • to mirror the parent's template.

    See Default Note Title for more info.

    templateThis note will appear in the selection of available template when creating new note. See Templates for more information.
    tocControls the display of the Table of contents for a given note. #toc or #toc=show to always display the table of contents, #toc=false to always hide it.
    colordefines color of the note in note tree, links etc. Use any valid CSS color value like 'red' or #a13d5f
    Note: this color may be automatically adjusted when displayed to ensure sufficient contrast with the background.
    keyboardShortcutDefines a keyboard shortcut which will immediately jump to this note. Example: 'ctrl+alt+e'. Requires frontend reload for the change to take effect.
    keepCurrentHoistingOpening this link won't change hoisting even if the note is not displayable in the current hoisted subtree.
    executeButtonTitle of the button which will execute the current code note
    executeDescriptionLonger description of the current code note displayed together with the execute button
    excludeFromNoteMapNotes with this label will be hidden from the Note Map.
    newNotesOnTopNew notes will be created at the top of the parent note, not on the bottom.
    hideHighlightWidgetHides the Highlights list widget
    hideChildrenOverviewHides the Note List for that particular note.
    printLandscapeWhen exporting to PDF, changes the orientation of the page to landscape instead of portrait.
    printPageSizeWhen exporting to PDF, changes the size of the page. Supported values: A0, A1, A2, A3, A4, A5, A6, Legal, Letter, Tabloid, Ledger.
    geolocationIndicates the latitude and longitude of a note, to be displayed in a Geo Map.
    calendar:*Defines specific options for the Calendar View.
    viewTypeSets the view of child notes (e.g. grid or list). See Note List for more information.
    \ No newline at end of file +
    LabelDescription
    disableVersioningDisables automatic creation of Note Revisions for a particular note. Useful for e.g. large, but unimportant notes - e.g. large JS libraries used for scripting.
    versioningLimitLimits the maximum number of Note Revisions for a particular note, overriding the global settings.
    calendarRootMarks the note which should be used as root for Day Notes. Only one should be marked as such.
    archivedHides notes from default search results and dialogs. Archived notes can optionally be hidden in the Note Tree.
    excludeFromExportExcludes this note and its children when exporting.
    run, runOnInstance, runAtHourSee Events.
    disableInclusionScripts with this label won't be included into parent script execution.
    sorted

    Keeps child notes sorted by title alphabetically.

    When given a value, it will sort by the value of another label instead. If one of the child notes doesn't have the specified label, the title will be used for them instead.

    sortDirection

    If sorted is applied, specifies the direction of the sort:

    • ASC, ascending (default)
    • DESC, descending
    sortFoldersFirstIf sorted is applied, folders (notes with children) will be sorted as a group at the top, and the rest will be sorted.
    topIf sorted is applied to the parent note, keeps given note on top in its parent.
    hidePromotedAttributesHide Promoted Attributes on this note. Generally useful when defining inherited attributes, but the parent note doesn't need them.
    readOnlyMarks a note to be always be read-only, if it's a supported note (text, code, mermaid).
    autoReadOnlyDisabledDisables automatic read-only mode for the given note.
    appCssMarks CSS notes which are loaded into the Trilium application and can thus be used to modify Trilium's looks. See Custom app-wide CSS for more info.
    appThemeMarks CSS notes which are full Trilium themes and are thus available in Trilium options. See Theme development for more information.
    appThemeBaseSet to next, next-light, or next-dark to use the corresponding TriliumNext theme (auto, light or dark) as the base for a custom theme, instead of the legacy one. See Customize the Next theme for more information.
    cssClassValue of this label is then added as CSS class to the node representing given note in the Note Tree. This can be useful for advanced theming. Can be used in template notes.
    iconClassvalue of this label is added as a CSS class to the icon on the tree which can help visually distinguish the notes in the tree. Example might be bx bx-home - icons are taken from boxicons. Can be used in template notes.
    pageSizeSpecifies the number of items per page in Note List.
    customRequestHandlerSee Custom Request Handler.
    customResourceProviderSee Custom Resource Providers.
    widgetMarks this note as a custom widget which will be added to the Trilium component tree. See Custom Widgets for more information.
    searchHomeNew search notes will be created as children of this note (see Saved Search).
    workspace and related attributesSee Workspaces.
    inboxdefault inbox location for new notes - when you create a note using new note button in the sidebar, notes will be created as child notes in the note marked as with #inbox label.
    sqlConsoleHomeDefault location of SQL Console notes
    bookmarkedIndicates this note is a bookmark.
    bookmarkFolderNote with this label will appear in bookmarks as folder (allowing access to its children). See Bookmarks for more information.
    share*See the attribute reference in Sharing.
    displayRelations, hideRelationsComma delimited names of relations which should be displayed/hidden in a Relation Map (both the note type and the Note Map (Link map, Tree map) general functionality).
    titleTemplate

    Default title of notes created as children of this note. This value is evaluated as a JavaScript string and thus can be enriched with dynamic content via the injected now and parentNote variables.

    Examples:

    • \({parentNote.getLabel('authorName')}'s literary works
    • Log for \){now.format('YYYY-MM-DD HH:mm:ss')}
    • to mirror the parent's template.

    See Default Note Title for more info.

    templateThis note will appear in the selection of available template when creating new note. See Templates for more information.
    tocControls the display of the Table of contents for a given note. #toc or #toc=show to always display the table of contents, #toc=false to always hide it.
    colordefines color of the note in note tree, links etc. Use any valid CSS color value like 'red' or #a13d5f
    Note: this color may be automatically adjusted when displayed to ensure sufficient contrast with the background.
    keyboardShortcutDefines a keyboard shortcut which will immediately jump to this note. Example: 'ctrl+alt+e'. Requires frontend reload for the change to take effect.
    keepCurrentHoistingOpening this link won't change hoisting even if the note is not displayable in the current hoisted subtree.
    executeButtonTitle of the button which will execute the current code note
    executeDescriptionLonger description of the current code note displayed together with the execute button
    excludeFromNoteMapNotes with this label will be hidden from the Note Map.
    newNotesOnTopNew notes will be created at the top of the parent note, not on the bottom.
    hideHighlightWidgetHides the Highlights list widget
    hideChildrenOverviewHides the Note List for that particular note.
    printLandscapeWhen exporting to PDF, changes the orientation of the page to landscape instead of portrait.
    printPageSizeWhen exporting to PDF, changes the size of the page. Supported values: A0, A1, A2, A3, A4, A5, A6, Legal, Letter, Tabloid, Ledger.
    geolocationIndicates the latitude and longitude of a note, to be displayed in a Geo Map.
    calendar:*Defines specific options for the Calendar View.
    viewTypeSets the view of child notes (e.g. grid or list). See Note List for more information.
    \ No newline at end of file diff --git a/docs/User Guide/User Guide/Advanced Usage/Attributes/Relations.md b/docs/User Guide/User Guide/Advanced Usage/Attributes/Relations.md index 454e7d007..6e1e9aa1f 100644 --- a/docs/User Guide/User Guide/Advanced Usage/Attributes/Relations.md +++ b/docs/User Guide/User Guide/Advanced Usage/Attributes/Relations.md @@ -43,7 +43,7 @@ These relations are supported and used internally by Trilium. | Label | Description | | --- | --- | -| `runOn*` | See Events | +| `runOn*` | See Events | | `template` | note's attributes will be inherited even without a parent-child relationship, note's content and subtree will be added to instance notes if empty. See documentation for details. | | `inherit` | note's attributes will be inherited even without a parent-child relationship. See Templates for a similar concept. See Attribute Inheritance in the documentation. | | `renderNote` | notes of type Render Note will be rendered using a code note (HTML or script) and it is necessary to point using this relation to which note should be rendered | diff --git a/docs/User Guide/User Guide/Advanced Usage/Nightly release.md b/docs/User Guide/User Guide/Advanced Usage/Nightly release.md new file mode 100644 index 000000000..c9c2aac09 --- /dev/null +++ b/docs/User Guide/User Guide/Advanced Usage/Nightly release.md @@ -0,0 +1,34 @@ +# Nightly release +Nightly releases are versions built every day, containing the latest improvements and bugfixes, directly from the main development branch. These versions are generally useful in preparation for a release, to ensure that there are no significant bugs that need to be addressed first, or they can be used to confirm whether a particular bug is fixed or feature is well implemented. + +## Regarding the stability + +Despite being on a development branch, generally the main branch is pretty stable since PRs are tested before they are merged. If you notice any issues, feel free to report them either via a ticket or via the Matrix. + +## Downloading the nightly release manually + +Go to [github.com/TriliumNext/Trilium/releases/tag/nightly](https://github.com/TriliumNext/Trilium/releases/tag/nightly) and look for the artifacts starting with `TriliumNotes-main`. Choose the appropriate one for your platform (e.g. `windows-x64.zip`). + +Depending on your use case, you can either test the portable version or even use the installer. + +> [!NOTE] +> If you choose the installable version (e.g. the .exe on Windows), it will replace your stable installation. + +> [!IMPORTANT] +> By default, the nightly uses the same database as the production version. Generally you could easily downgrade if needed. However, if there are changes to the database or sync version, it will not be possible to downgrade without having to restore from a backup. + +## Automatically download and install the latest nightly + +This is pretty useful if you are a beta tester that wants to periodically update their version: + +On Ubuntu: + +``` +#!/usr/bin/env bash + +name=TriliumNotes-linux-x64-nightly.deb +rm -f $name* +wget https://github.com/TriliumNext/Trilium/releases/download/nightly/$name +sudo apt-get install ./$name +rm $name +``` \ No newline at end of file diff --git a/docs/User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar.md b/docs/User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar.md index 795e02602..d0ba7aecf 100644 --- a/docs/User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar.md +++ b/docs/User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar.md @@ -56,7 +56,7 @@ Right click either the _Available launchers_ or _Visible launchers_ sections and 2. Optionally, set a `keyboardShortcut` to trigger the launcher. 3. **Custom Widget** - Allows defining a custom widget to be rendered inside the launcher. See [Widget Basics](../../Scripting/Custom%20Widgets/Widget%20Basics.md) for more information. + Allows defining a custom widget to be rendered inside the launcher. See [Widget Basics](../../Scripting/Frontend%20Basics/Custom%20Widgets/Widget%20Basics.md) for more information. 4. **Spacers** Launchers that create some distance between other launchers for better visual distinction. diff --git a/docs/User Guide/User Guide/Scripting.md b/docs/User Guide/User Guide/Scripting.md index f5724f8a3..54a08c16b 100644 --- a/docs/User Guide/User Guide/Scripting.md +++ b/docs/User Guide/User Guide/Scripting.md @@ -12,7 +12,7 @@ So we have frontend and backend, each with their own set of responsibilities, bu ## Use cases -* "New Task" launcher button +* "New Task" launcher button ## Action handler @@ -34,7 +34,7 @@ You can see more scripting with explanation in Events. +See Events. ## Script API diff --git a/docs/User Guide/User Guide/Scripting/Events.md b/docs/User Guide/User Guide/Scripting/Backend scripts/Events.md similarity index 78% rename from docs/User Guide/User Guide/Scripting/Events.md rename to docs/User Guide/User Guide/Scripting/Backend scripts/Events.md index 6dbeeeba6..227acd5f1 100644 --- a/docs/User Guide/User Guide/Scripting/Events.md +++ b/docs/User Guide/User Guide/Scripting/Backend scripts/Events.md @@ -1,15 +1,15 @@ # Events -[Script](../Scripting.md) notes can be triggered by events. Note that these are backend events and thus relation need to point to the "JS backend" code note. +[Script](../../Scripting.md) notes can be triggered by events. Note that these are backend events and thus relation need to point to the "JS backend" code note. ## Global events Global events are attached to the script note via label. Simply create e.g. "run" label with some of these values and script note will be executed once the event occurs. -
    LabelDescription
    run

    Defines on which events script should run. Possible values are:

    • frontendStartup - when Trilium frontend starts up (or is refreshed), but not on mobile.
    • mobileStartup - when Trilium frontend starts up (or is refreshed), on mobile.
    • backendStartup - when Trilium backend starts up
    • hourly - run once an hour. You can use additional label runAtHour to specify at which hour, on the back-end.
    • daily - run once a day, on the back-end
    runOnInstanceSpecifies that the script should only run on a particular Trilium instance.
    runAtHourOn which hour should this run. Should be used together with #run=hourly. Can be defined multiple times for more runs during the day.
    +
    LabelDescription
    run

    Defines on which events script should run. Possible values are:

    • frontendStartup - when Trilium frontend starts up (or is refreshed), but not on mobile.
    • mobileStartup - when Trilium frontend starts up (or is refreshed), on mobile.
    • backendStartup - when Trilium backend starts up
    • hourly - run once an hour. You can use additional label runAtHour to specify at which hour, on the back-end.
    • daily - run once a day, on the back-end
    runOnInstanceSpecifies that the script should only run on a particular Trilium instance.
    runAtHourOn which hour should this run. Should be used together with #run=hourly. Can be defined multiple times for more runs during the day.
    ## Entity events -Other events are bound to some entity, these are defined as [relations](../Advanced%20Usage/Attributes.md) - meaning that script is triggered only if note has this script attached to it through relations (or it can inherit it). +Other events are bound to some entity, these are defined as [relations](../../Advanced%20Usage/Attributes.md) - meaning that script is triggered only if note has this script attached to it through relations (or it can inherit it). | Relation | Description | | --- | --- | diff --git a/docs/User Guide/User Guide/Scripting/Backend scripts/Server-side imports.md b/docs/User Guide/User Guide/Scripting/Backend scripts/Server-side imports.md new file mode 100644 index 000000000..ddc795aa0 --- /dev/null +++ b/docs/User Guide/User Guide/Scripting/Backend scripts/Server-side imports.md @@ -0,0 +1,11 @@ +# Server-side imports +Older versions of Trilium Notes allowed the use of Common.js module imports inside backend scripts, such as: + +``` +const isBetween = require('dayjs/plugin/isBetween') +api.dayjs.extend(isBetween) +``` + +For newer versions, Node.js imports are **not officially supported anymore**, since we've added a bundler which makes it more difficult to reuse dependencies. + +Theoretically it's still possible to use imports by manually setting up a `node_modules` in the server directory via `npm` or `pnpm`. \ No newline at end of file diff --git a/docs/User Guide/User Guide/Scripting/Examples/New Task launcher button.md b/docs/User Guide/User Guide/Scripting/Examples/New Task launcher button.md deleted file mode 100644 index 85e834b8b..000000000 --- a/docs/User Guide/User Guide/Scripting/Examples/New Task launcher button.md +++ /dev/null @@ -1,47 +0,0 @@ -# "New Task" launcher button -In this example we are going to extend the functionality of Task Manager showcase (which comes by default with Trilium) by adding a button in the Launch Bar  (![](New%20Task%20launcher%20button_i.png)) to create a new task automatically and open it. - -## Creating the note - -1. First, create a new Code note type with the _JS frontend_ language. -2. Define the `#run=frontendStartup` label in Attributes. - -## Content of the script - -Copy-paste the following script: - -```javascript -api.addButtonToToolbar({ - title: "New task", - icon: "task", - shortcut: "alt+n", - action: async () => { - const taskNoteId = await api.runOnBackend(() => { - const todoRootNote = api.getNoteWithLabel("taskTodoRoot"); - const resp = api.createTextNote(todoRootNote.noteId, "New task", "") - return resp.note.noteId; - }); - - await api.waitUntilSynced(); - await api.activateNewNote(taskNoteId); - } -}); -``` - -## Testing the functionality - -Since we set the script to be run on start-up, all we need to do is to [refresh the application](../../Troubleshooting/Refreshing%20the%20application.md). - -## Understanding how the script works - -
    api.addButtonToToolbar({
    -	title: "New task",
    -    icon: "task",
    -    shortcut: "alt+n",
    -    action: async () => {
    -    	// [...]
    -    }
    -});

    This uses the Front-end API to create a icon in the Launch Bar, by specifying:

    • A title
    • A corresponding boxicons icon (without the bx- prefix).
    • Optionally, a keyboard shortcut to assign to it.
    • The action, which will be executed when the button is pressed.
    const taskNoteId = await api.runOnBackend(() => {
    -    // Shown below.           
    -    return resp.note.noteId;
    -});
    • This portion of code is actually executed on the server (backend) and not on the client (i.e. browser).
      • The reason is that the creating notes is the responsibility of the server.
    • Here we can also see that it is possible to return results from the server execution and read them in the client (taskNoteId).
    const todoRootNote = api.getNoteWithLabel("taskTodoRoot");
    • Here we identify a note with the label #taskTodoRoot. This is how the Task Manager showcase knows where to place all the different tasks.
    • Normally this might return a null value if no such note could be identified, but error handling is outside the scope of this example. 
    const resp = api.createTextNote(todoRootNote.noteId, "New task", "")
    • We create a new child note within the to-do root note (first argument) with the title “New task" (second argument) and no content by default (third argument).
    await api.waitUntilSynced();
    • Back on the client, since we created a new note on the server, we now need to wait for the change to be reflected in the client.
    await api.activateNewNote(taskNoteId);
    • Since we know the ID of the newly created note, all we have to do now is to show this note to the user.
    \ No newline at end of file diff --git a/docs/User Guide/User Guide/Scripting/Frontend Basics.md b/docs/User Guide/User Guide/Scripting/Frontend Basics.md index 2557deed7..13c47823d 100644 --- a/docs/User Guide/User Guide/Scripting/Frontend Basics.md +++ b/docs/User Guide/User Guide/Scripting/Frontend Basics.md @@ -54,4 +54,4 @@ Conversely to scripts, widgets do have some specific requirements in order to wo ### Tutorial -For more information on building widgets, take a look at [Widget Basics](Custom%20Widgets/Widget%20Basics.md). \ No newline at end of file +For more information on building widgets, take a look at [Widget Basics](Frontend%20Basics/Custom%20Widgets/Widget%20Basics.md). \ No newline at end of file diff --git a/docs/User Guide/User Guide/Scripting/Custom Widgets.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets.md similarity index 100% rename from docs/User Guide/User Guide/Scripting/Custom Widgets.md rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets.md diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Scripting/Widgets/CSS.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Old documentation/Scripting/Widgets/CSS.md rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS.md diff --git a/docs/Developer Guide/Developer Guide/Old documentation/Scripting/Widgets/Right pane widget.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Old documentation/Scripting/Widgets/Right pane widget.md rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget.md diff --git a/docs/User Guide/User Guide/Scripting/Custom Widgets/Widget Basics.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.md similarity index 75% rename from docs/User Guide/User Guide/Scripting/Custom Widgets/Widget Basics.md rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.md index b6e2a95ca..474cba983 100644 --- a/docs/User Guide/User Guide/Scripting/Custom Widgets/Widget Basics.md +++ b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.md @@ -22,10 +22,10 @@ module.exports = new MyWidget(); To implement this widget: 1. Create a new `JS Frontend` note in Trilium and paste in the code above. -2. Assign the `#widget` [attribute](../../Advanced%20Usage/Attributes.md) to the [note](../../Basic%20Concepts%20and%20Features/Notes.md). +2. Assign the `#widget` [attribute](../../../Advanced%20Usage/Attributes.md) to the [note](../../../Basic%20Concepts%20and%20Features/Notes.md). 3. Restart Trilium or reload the window. -To verify that the widget is working, open the developer tools (`Cmd` + `Shift` + `I`) and run `document.querySelector("#my-widget")`. If the element is found, the widget is functioning correctly. If `undefined` is returned, double-check that the [note](../../Basic%20Concepts%20and%20Features/Notes.md) has the `#widget` [attribute](../../Advanced%20Usage/Attributes.md). +To verify that the widget is working, open the developer tools (`Cmd` + `Shift` + `I`) and run `document.querySelector("#my-widget")`. If the element is found, the widget is functioning correctly. If `undefined` is returned, double-check that the [note](../../../Basic%20Concepts%20and%20Features/Notes.md) has the `#widget` [attribute](../../../Advanced%20Usage/Attributes.md). ### Step 2: Adding an UI Element @@ -85,7 +85,7 @@ After reloading Trilium, the button should now appear at the bottom left of the ### Step 4: Adding User Interaction -Let’s make the button interactive by showing a message when it’s clicked. We'll use the `api.showMessage` method from the [Script API](../Script%20API.md). +Let’s make the button interactive by showing a message when it’s clicked. We'll use the `api.showMessage` method from the [Script API](../../Script%20API.md). ``` class MyWidget extends api.BasicWidget { @@ -108,4 +108,11 @@ class MyWidget extends api.BasicWidget { module.exports = new MyWidget(); ``` -Reload the application one last time. When you click the button, a "Hello World!" message should appear, confirming that your widget is fully functional. \ No newline at end of file +`parentWidget()` can be given the following values: + +* `left-pane` - This renders the widget on the left side of the screen where the note tree lives. +* `center-pane` - This renders the widget in the center of the layout in the same location that notes and splits appear. +* `note-detail-pane` - This renders the widget _with_ the note in the center pane. This means it can appear multiple times with splits. +* `right-pane` - This renders the widget to the right of any opened notes. + +[Reload](../../../Troubleshooting/Refreshing%20the%20application.md) the application one last time. When you click the button, a "Hello World!" message should appear, confirming that your widget is fully functional. \ No newline at end of file diff --git a/docs/User Guide/User Guide/Scripting/Custom Widgets/Word count widget.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget.md similarity index 88% rename from docs/User Guide/User Guide/Scripting/Custom Widgets/Word count widget.md rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget.md index ad8c1c351..8b6be5684 100644 --- a/docs/User Guide/User Guide/Scripting/Custom Widgets/Word count widget.md +++ b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget.md @@ -1,8 +1,8 @@ # Word count widget > [!TIP] -> This widget is also present in new installations in the Demo Notes. +> This widget is also present in new installations in the Demo Notes. -Create a Code note of type JS frontend and **give it a** `#widget` **label**. +Create a Code note of type JS frontend and **give it a** `#widget` **label**. ``` /* @@ -82,7 +82,7 @@ class WordCountWidget extends api.NoteContextAwareWidget { module.exports = new WordCountWidget(); ``` -After you make changes it is necessary to [restart Trilium](../../Troubleshooting/Refreshing%20the%20application.md) so that the layout can be rebuilt. +After you make changes it is necessary to [restart Trilium](../../../Troubleshooting/Refreshing%20the%20application.md) so that the layout can be rebuilt. At the bottom of the note you can see the resulting widget: diff --git a/docs/User Guide/User Guide/Scripting/Custom Widgets/Word count widget_image.png b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget_image.png similarity index 100% rename from docs/User Guide/User Guide/Scripting/Custom Widgets/Word count widget_image.png rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget_image.png diff --git a/docs/User Guide/User Guide/Scripting/Examples/Downloading responses from Goo.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo.md similarity index 100% rename from docs/User Guide/User Guide/Scripting/Examples/Downloading responses from Goo.md rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo.md diff --git a/docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button.md new file mode 100644 index 000000000..6740c047f --- /dev/null +++ b/docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button.md @@ -0,0 +1,47 @@ +# "New Task" launcher button +In this example we are going to extend the functionality of Task Manager showcase (which comes by default with Trilium) by adding a button in the Launch Bar  (![](New%20Task%20launcher%20button_i.png)) to create a new task automatically and open it. + +## Creating the note + +1. First, create a new Code note type with the _JS frontend_ language. +2. Define the `#run=frontendStartup` label in Attributes. + +## Content of the script + +Copy-paste the following script: + +```javascript +api.addButtonToToolbar({ + title: "New task", + icon: "task", + shortcut: "alt+n", + action: async () => { + const taskNoteId = await api.runOnBackend(() => { + const todoRootNote = api.getNoteWithLabel("taskTodoRoot"); + const resp = api.createTextNote(todoRootNote.noteId, "New task", "") + return resp.note.noteId; + }); + + await api.waitUntilSynced(); + await api.activateNewNote(taskNoteId); + } +}); +``` + +## Testing the functionality + +Since we set the script to be run on start-up, all we need to do is to [refresh the application](../../../Troubleshooting/Refreshing%20the%20application.md). + +## Understanding how the script works + +
    api.addButtonToToolbar({
    +	title: "New task",
    +    icon: "task",
    +    shortcut: "alt+n",
    +    action: async () => {
    +    	// [...]
    +    }
    +});

    This uses the Front-end API to create a icon in the Launch Bar, by specifying:

    • A title
    • A corresponding boxicons icon (without the bx- prefix).
    • Optionally, a keyboard shortcut to assign to it.
    • The action, which will be executed when the button is pressed.
    const taskNoteId = await api.runOnBackend(() => {
    +    // Shown below.           
    +    return resp.note.noteId;
    +});
    • This portion of code is actually executed on the server (backend) and not on the client (i.e. browser).
      • The reason is that the creating notes is the responsibility of the server.
    • Here we can also see that it is possible to return results from the server execution and read them in the client (taskNoteId).
    const todoRootNote = api.getNoteWithLabel("taskTodoRoot");
    • Here we identify a note with the label #taskTodoRoot. This is how the Task Manager showcase knows where to place all the different tasks.
    • Normally this might return a null value if no such note could be identified, but error handling is outside the scope of this example. 
    const resp = api.createTextNote(todoRootNote.noteId, "New task", "")
    • We create a new child note within the to-do root note (first argument) with the title “New task" (second argument) and no content by default (third argument).
    await api.waitUntilSynced();
    • Back on the client, since we created a new note on the server, we now need to wait for the change to be reflected in the client.
    await api.activateNewNote(taskNoteId);
    • Since we know the ID of the newly created note, all we have to do now is to show this note to the user.
    \ No newline at end of file diff --git a/docs/User Guide/User Guide/Scripting/Examples/New Task launcher button_i.png b/docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button_i.png similarity index 100% rename from docs/User Guide/User Guide/Scripting/Examples/New Task launcher button_i.png rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button_i.png diff --git a/docs/User Guide/User Guide/Scripting/Examples/Using promoted attributes .png b/docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes .png similarity index 100% rename from docs/User Guide/User Guide/Scripting/Examples/Using promoted attributes .png rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes .png diff --git a/docs/User Guide/User Guide/Scripting/Examples/Using promoted attributes to c.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c.md similarity index 100% rename from docs/User Guide/User Guide/Scripting/Examples/Using promoted attributes to c.md rename to docs/User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c.md diff --git a/docs/User Guide/User Guide/Troubleshooting.md b/docs/User Guide/User Guide/Troubleshooting.md index f439d1185..7ef4d2716 100644 --- a/docs/User Guide/User Guide/Troubleshooting.md +++ b/docs/User Guide/User Guide/Troubleshooting.md @@ -21,7 +21,7 @@ TRILIUM_START_NOTE_ID=root ./trilium ## Broken Script Prevents Application Startup -If a custom script causes Triliumto crash, and it is set as a startup script or in an active [custom widget](Scripting/Custom%20Widgets.md), start Triliumin "safe mode" to prevent any custom scripts from executing: +If a custom script causes Triliumto crash, and it is set as a startup script or in an active [custom widget](Scripting/Frontend%20Basics/Custom%20Widgets.md), start Triliumin "safe mode" to prevent any custom scripts from executing: ``` TRILIUM_SAFE_MODE=true ./trilium From 0494032fb5184048e68c31b9e8d00da65295c79a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 4 Nov 2025 12:35:56 +0000 Subject: [PATCH 116/136] Convert ASCII diagrams to Mermaid.js format Co-authored-by: eliandoran <21236836+eliandoran@users.noreply.github.com> --- docs/ARCHITECTURE.md | 125 +++++++++++++++++++++------------------- docs/DATABASE.md | 42 +++++++------- docs/SYNCHRONIZATION.md | 36 +++++------- 3 files changed, 99 insertions(+), 104 deletions(-) diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 44d4f99fd..53f35dbd2 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -53,30 +53,30 @@ Trilium Notes is a hierarchical note-taking application built as a TypeScript mo Trilium follows a **client-server architecture** even in desktop mode, where Electron runs both the backend server and frontend client within the same process. -``` -┌─────────────────────────────────────────────────────────────┐ -│ Frontend │ -│ ┌────────────┐ ┌────────────┐ ┌────────────┐ │ -│ │ Widgets │ │ Froca │ │ UI │ │ -│ │ System │ │ Cache │ │ Services │ │ -│ └────────────┘ └────────────┘ └────────────┘ │ -│ │ │ -│ WebSocket / REST API │ -│ │ │ -└─────────────────────────┼────────────────────────────────────┘ - │ -┌─────────────────────────┼────────────────────────────────────┐ -│ Backend Server │ -│ ┌────────────┐ ┌────────────┐ ┌────────────┐ │ -│ │ Express │ │ Becca │ │ Script │ │ -│ │ Routes │ │ Cache │ │ Engine │ │ -│ └────────────┘ └────────────┘ └────────────┘ │ -│ │ │ -│ ┌────┴─────┐ │ -│ │ SQLite │ │ -│ │ Database │ │ -│ └──────────┘ │ -└─────────────────────────────────────────────────────────────┘ +```mermaid +graph TB + subgraph Frontend + Widgets[Widgets
    System] + Froca[Froca
    Cache] + UIServices[UI
    Services] + end + + subgraph Backend["Backend Server"] + Express[Express
    Routes] + Becca[Becca
    Cache] + ScriptEngine[Script
    Engine] + Database[(SQLite
    Database)] + end + + Widgets -.-> API[WebSocket / REST API] + Froca -.-> API + UIServices -.-> API + API -.-> Express + API -.-> Becca + API -.-> ScriptEngine + Becca --> Database + Express --> Database + ScriptEngine --> Database ``` ### Deployment Modes @@ -225,30 +225,24 @@ Located at: `apps/server/src/share/` Trilium's data model is based on five core entities: -``` -┌──────────────────────────────────────────────────────────┐ -│ Note Tree │ -│ │ -│ ┌─────────┐ │ -│ │ Note │ │ -│ │ (BNote) │ │ -│ └────┬────┘ │ -│ │ │ -│ │ linked by │ -│ ▼ │ -│ ┌──────────┐ ┌─────────────┐ │ -│ │ Branch │◄────────│ Attribute │ │ -│ │(BBranch) │ │ (BAttribute)│ │ -│ └──────────┘ └─────────────┘ │ -│ │ │ -│ │ creates │ -│ ▼ │ -│ ┌──────────┐ ┌─────────────┐ │ -│ │ Revision │ │ Attachment │ │ -│ │(BRevision│ │(BAttachment)│ │ -│ └──────────┘ └─────────────┘ │ -│ │ -└──────────────────────────────────────────────────────────┘ +```mermaid +graph TD + Note[Note
    BNote] + Branch[Branch
    BBranch] + Attribute[Attribute
    BAttribute] + Revision[Revision
    BRevision] + Attachment[Attachment
    BAttachment] + + Note -->|linked by| Branch + Note -.->|metadata| Attribute + Branch -->|creates| Revision + Note -->|has| Attachment + + style Note fill:#e1f5ff + style Branch fill:#fff4e1 + style Attribute fill:#ffe1f5 + style Revision fill:#f5ffe1 + style Attachment fill:#ffe1e1 ``` #### Entity Definitions @@ -514,18 +508,29 @@ Key services: ### UI Components **Main Layout:** -``` -┌──────────────────────────────────────────────────────┐ -│ Title Bar │ -├──────────┬────────────────────────┬──────────────────┤ -│ │ │ │ -│ Note │ Note Detail │ Right Panel │ -│ Tree │ Editor │ (Info, Links) │ -│ │ │ │ -│ │ │ │ -├──────────┴────────────────────────┴──────────────────┤ -│ Status Bar │ -└──────────────────────────────────────────────────────┘ + +```mermaid +graph TD + subgraph TriliumUI[" "] + TitleBar[Title Bar] + + subgraph MainArea[" "] + NoteTree[Note Tree] + NoteDetail[Note Detail
    Editor] + RightPanel[Right Panel
    Info, Links] + end + + StatusBar[Status Bar] + end + + TitleBar -.-> MainArea + MainArea -.-> StatusBar + + style TitleBar fill:#e1f5ff + style NoteTree fill:#fff4e1 + style NoteDetail fill:#f5ffe1 + style RightPanel fill:#ffe1f5 + style StatusBar fill:#e1f5ff ``` **Component Locations:** diff --git a/docs/DATABASE.md b/docs/DATABASE.md index d02452f21..52df42e0b 100644 --- a/docs/DATABASE.md +++ b/docs/DATABASE.md @@ -427,27 +427,27 @@ CREATE TABLE etapi_tokens ( ## Data Relationships -``` - ┌──────────────┐ - │ Notes │ - └───┬──────────┘ - │ - ┌───────────┼───────────┐ - │ │ │ - ▼ ▼ ▼ - ┌────────┐ ┌──────────┐ ┌───────────┐ - │Branches│ │Attributes│ │Attachments│ - └────────┘ └──────────┘ └─────┬─────┘ - │ │ - │ │ - │ ┌──────────┐ │ - └──────▶│ Blobs │◀────────┘ - └──────────┘ - ▲ - │ - ┌────┴─────┐ - │Revisions │ - └──────────┘ +```mermaid +graph TB + Notes[Notes] + Branches[Branches] + Attributes[Attributes] + Attachments[Attachments] + Blobs[(Blobs)] + Revisions[Revisions] + + Notes --> Branches + Notes --> Attributes + Notes --> Attachments + Notes --> Blobs + Notes --> Revisions + + Branches --> Blobs + Attachments --> Blobs + Revisions --> Blobs + + style Notes fill:#e1f5ff + style Blobs fill:#ffe1e1 ``` **Relationships:** diff --git a/docs/SYNCHRONIZATION.md b/docs/SYNCHRONIZATION.md index 2f39eee40..0945e533a 100644 --- a/docs/SYNCHRONIZATION.md +++ b/docs/SYNCHRONIZATION.md @@ -14,29 +14,19 @@ Trilium implements a sophisticated **bidirectional synchronization system** that ## Sync Architecture -``` -┌─────────────┐ ┌─────────────┐ -│ Desktop 1 │ │ Desktop 2 │ -│ (Client) │ │ (Client) │ -└──────┬──────┘ └──────┬──────┘ - │ │ - │ WebSocket/HTTP │ - │ │ - ▼ ▼ -┌────────────────────────────────────────────────┐ -│ Sync Server │ -│ ┌──────────────────────────────────────┐ │ -│ │ Sync Service │ │ -│ │ - Entity Change Management │ │ -│ │ - Conflict Resolution │ │ -│ │ - Version Tracking │ │ -│ └──────────────────────────────────────┘ │ -│ │ │ -│ ┌──────┴───────┐ │ -│ │ Database │ │ -│ │ (entity_changes)│ │ -│ └──────────────┘ │ -└────────────────────────────────────────────────┘ +```mermaid +graph TB + Desktop1[Desktop 1
    Client] + Desktop2[Desktop 2
    Client] + + subgraph SyncServer["Sync Server"] + SyncService[Sync Service
    - Entity Change Management
    - Conflict Resolution
    - Version Tracking] + SyncDB[(Database
    entity_changes)] + end + + Desktop1 <-->|WebSocket/HTTP| SyncService + Desktop2 <-->|WebSocket/HTTP| SyncService + SyncService --> SyncDB ``` ## Core Concepts From 58ac3256344c4baabc3a1b3d095ddd9fe8fea99f Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 15:51:54 +0200 Subject: [PATCH 117/136] docs(dev): integrate some of the architecture notes --- .../en/User Guide/User Guide/AI.html | 2 +- .../User Guide/Advanced Usage/Attributes.html | 4 +- .../Custom Request Handler.html | 8 +- .../Navigation/Search.html | 2 +- .../Basic Concepts and Features/Notes.html | 2 +- .../UI Elements/Ribbon.html | 2 +- .../en/User Guide/User Guide/Collections.html | 6 +- .../Desktop Installation.html | 2 +- .../Server Installation.html | 2 +- .../en/User Guide/User Guide/Note Types.html | 4 +- .../en/User Guide/User Guide/Scripting.html | 6 +- .../Custom Widgets/Widget Basics.html | 21 +- .../User Guide/Troubleshooting.html | 5 +- docs/ARCHITECTURE.md | 742 ---------- docs/Developer Guide/!!!meta.json | 1314 ++++++++++------- .../Developer Guide/Architecture.md | 118 ++ .../Developer Guide/Architecture/API.md | 72 + .../Client-server architecture/Backend.md | 88 ++ .../Client-server architecture/Frontend.md | 61 + .../Developer Guide/Architecture/Database.md | 40 + .../Database structure/attachments.md | 4 +- .../Database structure/attributes.md | 2 +- .../Database structure/blobs.md | 0 .../Database structure/branches.md | 4 +- .../Database structure/entity_changes.md | 0 .../Database structure/etapi_tokens.md | 2 +- .../Database structure/notes.md | 4 +- .../Database structure/options.md | 0 .../Database structure/recent_notes.md | 0 .../Database structure/revisions.md | 2 +- .../Architecture/Protected entities.md | 6 - .../{Architecture => Concepts}/Backlinks.md | 0 .../Branch prefixes.md | 0 .../CI/1_Main_image.png | Bin .../{Architecture => Concepts}/CI/Main.md | 0 .../CI/Main_image.png | Bin .../Developer Guide/Concepts/Cache.md | 111 ++ .../Deleted notes.md | 0 .../Demo document.md | 0 .../Developer Guide/Concepts/Entities.md | 109 ++ .../Hidden notes.md | 0 .../{Architecture => Concepts}/Icons.md | 0 .../Internationalisation Translat.md | 0 .../Guidelines.md | 0 .../Server translations.md | 0 .../i18n-ally.md | 0 .../{Architecture => Concepts}/Launchers.md | 0 .../Note Revisions.md | 0 .../Copy image reference to the cl.md | 0 .../Export diagram as SVG.md | 0 .../Adding a new note type/First steps.md | 0 .../First steps/mind_map.js | 0 .../Adding a new note type/Loading data.md | 0 .../Note type checklist.md | 0 .../Adding a new note type/SVG rendering.md | 0 .../Saving data via spaced update.md | 0 .../{Architecture => Concepts}/Options.md | 0 .../Options/Creating a new option.md | 0 .../Printing and exporting to PDF.md | 0 .../Concepts/Protected entities.md | 6 + .../{Architecture => Concepts}/Share.md | 0 .../Synchronisation/Content hashing.md | 0 .../Syntax highlighting.md | 0 .../{Architecture => Concepts}/Themes.md | 0 .../Developer Guide/Documentation.md | 2 +- .../Developer Guide/Environment Setup.md | 2 +- docs/User Guide/!!!meta.json | 26 +- 67 files changed, 1428 insertions(+), 1353 deletions(-) create mode 100644 docs/Developer Guide/Developer Guide/Architecture.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/API.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Backend.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Frontend.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Database.md rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/attachments.md (90%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/attributes.md (84%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/blobs.md (100%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/branches.md (82%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/entity_changes.md (100%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/etapi_tokens.md (90%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/notes.md (90%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/options.md (100%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/recent_notes.md (100%) rename docs/Developer Guide/Developer Guide/Architecture/{ => Database}/Database structure/revisions.md (94%) delete mode 100644 docs/Developer Guide/Developer Guide/Architecture/Protected entities.md rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Backlinks.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Branch prefixes.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/CI/1_Main_image.png (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/CI/Main.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/CI/Main_image.png (100%) create mode 100644 docs/Developer Guide/Developer Guide/Concepts/Cache.md rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Deleted notes.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Demo document.md (100%) create mode 100644 docs/Developer Guide/Developer Guide/Concepts/Entities.md rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Hidden notes.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Icons.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Internationalisation Translat.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Internationalisation Translations/Guidelines.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Internationalisation Translations/Server translations.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Internationalisation Translations/i18n-ally.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Launchers.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Revisions.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Types/Adding a new note type/Copy image reference to the cl.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Types/Adding a new note type/Export diagram as SVG.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Types/Adding a new note type/First steps.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Types/Adding a new note type/First steps/mind_map.js (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Types/Adding a new note type/Loading data.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Types/Adding a new note type/Note type checklist.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Types/Adding a new note type/SVG rendering.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Note Types/Adding a new note type/Saving data via spaced update.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Options.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Options/Creating a new option.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Printing and exporting to PDF.md (100%) create mode 100644 docs/Developer Guide/Developer Guide/Concepts/Protected entities.md rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Share.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Synchronisation/Content hashing.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Syntax highlighting.md (100%) rename docs/Developer Guide/Developer Guide/{Architecture => Concepts}/Themes.md (100%) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html index e94560b68..0fc11a28d 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html @@ -36,7 +36,7 @@ class="image image_resized" style="width:74.04%;">

    To see what embedding models Ollama has available, you can check out this searchon their website, and then pull whichever one - you want to try out. As of 4/15/25, my personal favorite is mxbai-embed-large.

    + you want to try out. A popular choice is mxbai-embed-large.

    First, we'll need to select the Ollama provider from the tabs of providers, then we will enter in the Base URL for our Ollama. Since our Ollama is running on our local machine, our Base URL is http://localhost:11434. diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Attributes.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Attributes.html index 8f28f72f4..d46a3e51c 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Attributes.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Attributes.html @@ -8,7 +8,7 @@

  • Labels can be used for a variety of purposes, such as storing metadata or configuring - the behaviour of notes. Labels are also searchable, enhancing note retrieval.

    + the behavior of notes. Labels are also searchable, enhancing note retrieval.

    For more information, including predefined labels, see Labels.

  • @@ -21,7 +21,7 @@ class="reference-link" href="#root/_help_Cq5X6iKQop6R">Relations.

    -

    These attributes play a crucial role in organizing, categorising, and +

    These attributes play a crucial role in organizing, categorizing, and enhancing the functionality of notes.

    Viewing the list of attributes

    Both the labels and relations for the current note are displayed in the Owned Attributes section diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Custom Request Handler.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Custom Request Handler.html index d7068f7eb..196996eed 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Custom Request Handler.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Custom Request Handler.html @@ -11,7 +11,7 @@ const {secret, title, content} = req.body; if (req.method == 'POST' && secret === 'secret-password') { // notes must be saved somewhere in the tree hierarchy specified by a parent note. // This is defined by a relation from this code note to the "target" parent note - // alternetively you can just use constant noteId for simplicity (get that from "Note Info" dialog of the desired parent note) + // alternatively you can just use constant noteId for simplicity (get that from "Note Info" dialog of the desired parent note) const targetParentNoteId = api.currentNote.getRelationValue('targetNote'); const {note} = api.createTextNote(targetParentNoteId, title, content); @@ -30,7 +30,7 @@ else { be saved

    Explanation

    -

    Let's test this by using an HTTP client to send a request:

    POST http://my.trilium.org/custom/create-note
    +

    Let's test this by using an HTTP client to send a request:

    POST http://your-trilium-server/custom/create-note
     Content-Type: application/json
     
     {
    @@ -64,12 +64,12 @@ Content-Type: application/json
       can always look into its documentation for
       details.

    Parameters

    -

    REST request paths often contain parameters in the URL, e.g.:

    http://my.trilium.org/custom/notes/123
    +

    REST request paths often contain parameters in the URL, e.g.:

    http://your-trilium-server/custom/notes/123

    The last part is dynamic so the matching of the URL must also be dynamic - for this reason the matching is done with regular expressions. Following customRequestHandler value would match it:

    notes/([0-9]+)

    Additionally, this also defines a matching group with the use of parenthesis which then makes it easier to extract the value. The matched groups are available in api.pathParams:

    const noteId = api.pathParams[0];
    -

    Often you also need query params (as in e.g. http://my.trilium.org/custom/notes?noteId=123), +

    Often you also need query params (as in e.g. http://your-trilium-server/custom/notes?noteId=123), you can get those with standard express req.query.noteId.

    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/Navigation/Search.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/Navigation/Search.html index 5a93064e8..0911a8b6c 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/Navigation/Search.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/Navigation/Search.html @@ -21,7 +21,7 @@
    1. Set the text to search for in the Search string field.
        -
      1. Apart from searching for words ad-literam, there is also the possibility +
      2. Apart from searching for words literally, there is also the possibility to search for attributes or properties of notes.
      3. See the examples below for more information.
      diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/Notes.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/Notes.html index 26efd0947..42e484e70 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/Notes.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/Notes.html @@ -31,7 +31,7 @@ and you will see a list of all modified notes including the deleted ones. Notes available for undeletion have a link to do so. This is kind of "trash can" functionality known from e.g. Windows.

      -

      Clicking an undelete will recover the note, it's content and attributes +

      Clicking an undelete will recover the note, its content and attributes - note should be just as before being deleted. This action will also undelete note's children which have been deleted in the same action.

      To be able to undelete a note, it is necessary that deleted note's parent diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon.html index 96db62c4b..e23f83d72 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon.html @@ -29,7 +29,7 @@

    2. Editable changes whether the current note:
      • Enters read-only mode automatically if - the note is too big (default behaviour).
      • + the note is too big (default behavior).
      • Is always in read-only mode (however it can still be edited temporarily).
      • Is always editable, regardless of its size.
      diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Collections.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Collections.html index fa40dcfbd..3aaad0a7e 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Collections.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Collections.html @@ -1,5 +1,5 @@ -

      Collections are a unique type of notes that don't have a content, but - instead display its child notes in various presentation methods.

      +

      Collections are a unique type of note that don't have content, but instead + display their child notes in various presentation methods.

      Main collections

      @@ -94,7 +94,7 @@ in the Ribbon.

      Archived notes

      By default, archived notes will not be - shown in collections. This behaviour can be changed by going to Collection Properties in + shown in collections. This behavior can be changed by going to Collection Properties in the Ribbon and checking Show archived notes.

      Archived notes will be generally indicated by being greyed out as opposed diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Desktop Installation.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Desktop Installation.html index b213daf6e..5adf8dbe1 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Desktop Installation.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Desktop Installation.html @@ -27,6 +27,6 @@ any startup scripts that might cause the application to crash.

      Synchronization

      -

      For Trilium desktp users who wish to synchronize their data with a server +

      For Trilium desktop users who wish to synchronize their data with a server instance, refer to the Synchronization guide for detailed instructions.

      \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Server Installation.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Server Installation.html index 0c34a40ae..dfaa68a0d 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Server Installation.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Server Installation.html @@ -40,7 +40,7 @@

      Disabling / Modifying the Upload Limit

      If you're running into the 250MB limit imposed on the server by default, and you'd like to increase the upload limit, you can set the TRILIUM_NO_UPLOAD_LIMIT environment - variable to true disable it completely:

      export TRILIUM_NO_UPLOAD_LIMIT=true 
      + variable to true to disable it completely:

      export TRILIUM_NO_UPLOAD_LIMIT=true 

      Or, if you'd simply like to increase the upload limit size to something beyond 250MB, you can set the MAX_ALLOWED_FILE_SIZE_MB environment variable to something larger than the integer 250 (e.g. 450 in diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types.html index 9c69cade3..1369ccfa6 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Note Types.html @@ -1,5 +1,5 @@ -

      One core features of Trilium is that it supports multiple types of notes, - depending on the need.

      +

      One of the core features of Trilium is that it supports multiple types + of notes, depending on the need.

      Creating a new note with a different type via the note tree

      The default note type in Trilium (e.g. when creating a new note) is  Script API provide extra functionality.

      -

      Scripting

      +

      Architecture Overview

      To go further I must explain basic architecture of Trilium - in its essence it is a classic web application - it has these two main components:

        @@ -14,8 +14,8 @@

      So we have frontend and backend, each with their own set of responsibilities, but their common feature is that they both run JavaScript code. Add to - this the fact, that we're able to create JavaScript [[code notes]] and - we're onto something.

      + this the fact, that we're able to create JavaScript code notes and we're onto something.

      Use cases

      • "New Task" launcher button diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html index 57a0a834b..84a15c29e 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html @@ -16,11 +16,11 @@ module.exports = new MyWidget();

        To implement this widget:

          -
        1. Create a new JS Frontend note in Trilium and paste in the code +
        2. Create a new JS Frontend note in Trilium and paste in the code above.
        3. -
        4. Assign the #widget attribute to +
        5. Assign the #widget attribute to the note.
        6. -
        7. Restart Trilium or reload the window.
        8. +
        9. Restart Trilium or reload the window.

        To verify that the widget is working, open the developer tools (Cmd + Shift + I) and run document.querySelector("#my-widget"). If the element @@ -89,16 +89,15 @@ module.exports = new MyWidget(); module.exports = new MyWidget();

        parentWidget() can be given the following values:

          -
        • left-pane - This renders the widget on the left side of the +
        • left-pane - This renders the widget on the left side of the screen where the note tree lives.
        • -
        • center-pane - This renders the widget in the center of the +
        • center-pane - This renders the widget in the center of the layout in the same location that notes and splits appear.
        • -
        • note-detail-pane - This renders the widget with the +
        • note-detail-pane - This renders the widget with the note in the center pane. This means it can appear multiple times with splits.
        • -
        • right-pane - This renders the widget to the right of any opened +
        • right-pane - This renders the widget to the right of any opened notes.
        -

        Reload the application - one last time. When you click the button, a "Hello World!" message should - appear, confirming that your widget is fully functional.

        \ No newline at end of file +

        Reload the application one last time. + When you click the button, a "Hello World!" message should appear, confirming + that your widget is fully functional.

        \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Troubleshooting.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Troubleshooting.html index cc53090a9..11b6cdc3c 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Troubleshooting.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Troubleshooting.html @@ -1,4 +1,5 @@ -

        As Trilium is currently in beta, encountering bugs is to be expected.

        +

        While Trilium is actively maintained and stable, encountering bugs is + possible.

        General Quick Fix

        The first step in troubleshooting is often a restart.

        If you experience an UI issue, the frontend may have entered an inconsistent @@ -15,7 +16,7 @@ variable to reset the open tabs to a single specified note ID (e.g., root). In Linux, you can set it as follows:

        TRILIUM_START_NOTE_ID=root ./trilium

        Broken Script Prevents Application Startup

        -

        If a custom script causes Triliumto crash, and it is set as a startup +

        If a custom script causes Trilium to crash, and it is set as a startup script or in an active custom widget, start Triliumin "safe mode" to prevent any custom scripts from executing:

        TRILIUM_SAFE_MODE=true ./trilium

        Depending on your Trilium distribution, you may have pre-made scripts diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 53f35dbd2..1c1d6638b 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -1,741 +1,5 @@ -# Trilium Notes - Technical Architecture Documentation - -> **Version:** 0.99.3 -> **Last Updated:** November 2025 -> **Maintainer:** TriliumNext Team - -## Table of Contents - -1. [Introduction](#introduction) -2. [High-Level Architecture](#high-level-architecture) -3. [Monorepo Structure](#monorepo-structure) -4. [Core Architecture Patterns](#core-architecture-patterns) -5. [Data Layer](#data-layer) -6. [Caching System](#caching-system) -7. [Frontend Architecture](#frontend-architecture) -8. [Backend Architecture](#backend-architecture) -9. [API Architecture](#api-architecture) -10. [Build System](#build-system) -11. [Testing Strategy](#testing-strategy) -12. [Security Architecture](#security-architecture) -13. [Related Documentation](#related-documentation) - ---- - -## Introduction - -Trilium Notes is a hierarchical note-taking application built as a TypeScript monorepo. It supports multiple deployment modes (desktop, server, mobile web) and features advanced capabilities including synchronization, scripting, encryption, and rich content editing. - -### Key Characteristics - -- **Monorepo Architecture**: Uses pnpm workspaces for dependency management -- **Multi-Platform**: Desktop (Electron), Server (Node.js/Express), and Mobile Web -- **TypeScript-First**: Strong typing throughout the codebase -- **Plugin-Based**: Extensible architecture for note types and UI components -- **Offline-First**: Full functionality without network connectivity -- **Synchronization-Ready**: Built-in sync protocol for multi-device usage - -### Technology Stack - -- **Runtime**: Node.js (backend), Browser/Electron (frontend) -- **Language**: TypeScript, JavaScript -- **Database**: SQLite (better-sqlite3) -- **Build Tools**: Vite, ESBuild, pnpm -- **UI Framework**: Custom widget-based system -- **Rich Text**: CKEditor 5 (customized) -- **Code Editing**: CodeMirror 6 -- **Desktop**: Electron -- **Server**: Express.js - ---- - -## High-Level Architecture - -Trilium follows a **client-server architecture** even in desktop mode, where Electron runs both the backend server and frontend client within the same process. - -```mermaid -graph TB - subgraph Frontend - Widgets[Widgets
        System] - Froca[Froca
        Cache] - UIServices[UI
        Services] - end - - subgraph Backend["Backend Server"] - Express[Express
        Routes] - Becca[Becca
        Cache] - ScriptEngine[Script
        Engine] - Database[(SQLite
        Database)] - end - - Widgets -.-> API[WebSocket / REST API] - Froca -.-> API - UIServices -.-> API - API -.-> Express - API -.-> Becca - API -.-> ScriptEngine - Becca --> Database - Express --> Database - ScriptEngine --> Database -``` - -### Deployment Modes - -1. **Desktop Application** - - Electron wrapper running both frontend and backend - - Local SQLite database - - Full offline functionality - - Cross-platform (Windows, macOS, Linux) - -2. **Server Installation** - - Node.js server exposing web interface - - Multi-user capable - - Can sync with desktop clients - - Docker deployment supported - -3. **Mobile Web** - - Optimized responsive interface - - Accessed via browser - - Requires server installation - ---- - -## Monorepo Structure - -Trilium uses **pnpm workspaces** to manage its monorepo structure, with apps and packages clearly separated. - -``` -trilium/ -├── apps/ # Runnable applications -│ ├── client/ # Frontend application (shared by server & desktop) -│ ├── server/ # Node.js server with web interface -│ ├── desktop/ # Electron desktop application -│ ├── web-clipper/ # Browser extension for web content capture -│ ├── db-compare/ # Database comparison tool -│ ├── dump-db/ # Database export tool -│ ├── edit-docs/ # Documentation editing tool -│ ├── build-docs/ # Documentation build tool -│ └── website/ # Marketing website -│ -├── packages/ # Shared libraries -│ ├── commons/ # Shared interfaces and utilities -│ ├── ckeditor5/ # Custom rich text editor -│ ├── codemirror/ # Code editor customizations -│ ├── highlightjs/ # Syntax highlighting -│ ├── ckeditor5-admonition/ # CKEditor plugin: admonitions -│ ├── ckeditor5-footnotes/ # CKEditor plugin: footnotes -│ ├── ckeditor5-keyboard-marker/# CKEditor plugin: keyboard shortcuts -│ ├── ckeditor5-math/ # CKEditor plugin: math equations -│ ├── ckeditor5-mermaid/ # CKEditor plugin: diagrams -│ ├── express-partial-content/ # HTTP partial content middleware -│ ├── share-theme/ # Shared note theme -│ ├── splitjs/ # Split pane library -│ └── turndown-plugin-gfm/ # Markdown conversion -│ -├── docs/ # Documentation -├── scripts/ # Build and utility scripts -└── patches/ # Package patches (via pnpm) -``` - -### Package Dependencies - -The monorepo uses workspace protocol (`workspace:*`) for internal dependencies: - -``` -desktop → client → commons -server → client → commons -client → ckeditor5, codemirror, highlightjs -ckeditor5 → ckeditor5-* plugins -``` - ---- - -## Core Architecture Patterns - -### Three-Layer Cache System - -Trilium implements a sophisticated **three-tier caching system** to optimize performance and enable offline functionality: - -#### 1. Becca (Backend Cache) - -Located at: `apps/server/src/becca/` - -```typescript -// Becca caches all entities in memory -class Becca { - notes: Record - branches: Record - attributes: Record - attachments: Record - // ... other entity collections -} -``` - -**Responsibilities:** -- Server-side entity cache -- Maintains complete note tree in memory -- Handles entity relationships and integrity -- Provides fast lookups without database queries -- Manages entity lifecycle (create, update, delete) - -**Key Files:** -- `becca.ts` - Main cache instance -- `becca_loader.ts` - Loads entities from database -- `becca_service.ts` - Cache management operations -- `entities/` - Entity classes (BNote, BBranch, etc.) - -#### 2. Froca (Frontend Cache) - -Located at: `apps/client/src/services/froca.ts` - -```typescript -// Froca is a read-only mirror of backend data -class Froca { - notes: Record - branches: Record - attributes: Record - // ... other entity collections -} -``` - -**Responsibilities:** -- Frontend read-only cache -- Lazy loading of note tree -- Minimizes API calls -- Enables fast UI rendering -- Synchronizes with backend via WebSocket - -**Loading Strategy:** -- Initial load: root notes and immediate children -- Lazy load: notes loaded when accessed -- When note is loaded, all parent and child branches load -- Deleted entities tracked via missing branches - -#### 3. Shaca (Share Cache) - -Located at: `apps/server/src/share/` - -**Responsibilities:** -- Optimized cache for shared/published notes -- Handles public note access without authentication -- Performance-optimized for high-traffic scenarios -- Separate from main Becca to isolate concerns - -### Entity System - -Trilium's data model is based on five core entities: - -```mermaid -graph TD - Note[Note
        BNote] - Branch[Branch
        BBranch] - Attribute[Attribute
        BAttribute] - Revision[Revision
        BRevision] - Attachment[Attachment
        BAttachment] - - Note -->|linked by| Branch - Note -.->|metadata| Attribute - Branch -->|creates| Revision - Note -->|has| Attachment - - style Note fill:#e1f5ff - style Branch fill:#fff4e1 - style Attribute fill:#ffe1f5 - style Revision fill:#f5ffe1 - style Attachment fill:#ffe1e1 -``` - -#### Entity Definitions - -**1. BNote** (`apps/server/src/becca/entities/bnote.ts`) -- Represents a note with title, content, and metadata -- Type can be: text, code, file, image, canvas, mermaid, etc. -- Contains content via blob reference -- Can be protected (encrypted) -- Has creation and modification timestamps - -**2. BBranch** (`apps/server/src/becca/entities/bbranch.ts`) -- Represents parent-child relationship between notes -- Enables note cloning (multiple parents) -- Contains positioning information -- Has optional prefix for customization -- Tracks expansion state in tree - -**3. BAttribute** (`apps/server/src/becca/entities/battribute.ts`) -- Key-value metadata attached to notes -- Two types: labels (tags) and relations (links) -- Can be inheritable to child notes -- Used for search, organization, and scripting -- Supports promoted attributes (displayed prominently) - -**4. BRevision** (`apps/server/src/becca/entities/brevision.ts`) -- Stores historical versions of note content -- Automatic versioning on edits -- Retains title, type, and content -- Enables note history browsing and restoration - -**5. BAttachment** (`apps/server/src/becca/entities/battachment.ts`) -- File attachments linked to notes -- Has owner (note), role, and mime type -- Content stored in blobs -- Can be protected (encrypted) - -**6. BBlob** (`apps/server/src/becca/entities/bblob.ts`) -- Binary large object storage -- Stores actual note content and attachments -- Referenced by notes, revisions, and attachments -- Supports encryption for protected content - -### Widget-Based UI - -The frontend uses a **widget system** for modular, reusable UI components. - -Located at: `apps/client/src/widgets/` - -```typescript -// Widget Hierarchy -BasicWidget -├── NoteContextAwareWidget (responds to note changes) -│ ├── RightPanelWidget (displayed in right sidebar) -│ └── Type-specific widgets -├── Container widgets (tabs, ribbons, etc.) -└── Specialized widgets (search, calendar, etc.) -``` - -**Base Classes:** - -1. **BasicWidget** (`basic_widget.ts`) - - Base class for all UI components - - Lifecycle: construction → rendering → events → destruction - - Handles DOM manipulation - - Event subscription management - - Child widget management - -2. **NoteContextAwareWidget** (`note_context_aware_widget.ts`) - - Extends BasicWidget - - Automatically updates when active note changes - - Accesses current note context - - Used for note-dependent UI - -3. **RightPanelWidget** - - Widgets displayed in right sidebar - - Collapsible sections - - Context-specific tools and information - -**Type-Specific Widgets:** - -Located at: `apps/client/src/widgets/type_widgets/` - -Each note type has a dedicated widget: -- `text_type_widget.ts` - CKEditor integration -- `code_type_widget.ts` - CodeMirror integration -- `file_type_widget.ts` - File preview and download -- `image_type_widget.ts` - Image display and editing -- `canvas_type_widget.ts` - Excalidraw integration -- `mermaid_type_widget.ts` - Diagram rendering -- And more... - ---- - -## Data Layer - -### Database Schema - -Trilium uses **SQLite** as its database engine, managed via `better-sqlite3`. - -Schema location: `apps/server/src/assets/db/schema.sql` - -**Core Tables:** - -```sql --- Notes: Core content storage -notes ( - noteId, title, isProtected, type, mime, - blobId, isDeleted, dateCreated, dateModified -) - --- Branches: Tree relationships -branches ( - branchId, noteId, parentNoteId, notePosition, - prefix, isExpanded, isDeleted -) - --- Attributes: Metadata -attributes ( - attributeId, noteId, type, name, value, - position, isInheritable, isDeleted -) - --- Revisions: Version history -revisions ( - revisionId, noteId, type, mime, title, - blobId, utcDateLastEdited -) - --- Attachments: File attachments -attachments ( - attachmentId, ownerId, role, mime, title, - blobId, isProtected, isDeleted -) - --- Blobs: Binary content -blobs ( - blobId, content, dateModified -) - --- Options: Application settings -options ( - name, value, isSynced -) - --- Entity Changes: Sync tracking -entity_changes ( - entityName, entityId, hash, changeId, - isSynced, utcDateChanged -) -``` - -### Data Access Patterns - -**Direct SQL:** -```typescript -// apps/server/src/services/sql.ts -sql.getRows("SELECT * FROM notes WHERE type = ?", ['text']) -sql.execute("UPDATE notes SET title = ? WHERE noteId = ?", [title, noteId]) -``` - -**Through Becca:** -```typescript -// Recommended approach - uses cache -const note = becca.getNote('noteId') -note.title = 'New Title' -note.save() -``` - -**Through Froca (Frontend):** -```typescript -// Read-only access -const note = froca.getNote('noteId') -console.log(note.title) -``` - -### Database Migrations - -Migration system: `apps/server/src/migrations/` - -- Sequential numbered files (e.g., `XXXX_migration_name.sql`) -- Automatic execution on version upgrade -- Schema version tracked in options table -- Both SQL and JavaScript migrations supported - ---- - -## Caching System - -### Cache Initialization - -**Backend (Becca):** -```typescript -// On server startup -await becca_loader.load() // Loads all entities into memory -becca.loaded = true -``` - -**Frontend (Froca):** -```typescript -// On app initialization -await froca.loadInitialTree() // Loads root and visible notes -// Lazy load on demand -const note = await froca.getNote(noteId) // Triggers load if not cached -``` - -### Cache Invalidation - -**Server-Side:** -- Entities automatically update cache on save -- WebSocket broadcasts changes to all clients -- Synchronization updates trigger cache refresh - -**Client-Side:** -- WebSocket listeners update Froca -- Manual reload via `froca.loadSubTree(noteId)` -- Full reload on protected session changes - -### Cache Consistency - -**Entity Change Tracking:** -```typescript -// Every entity modification tracked -entity_changes ( - entityName: 'notes', - entityId: 'note123', - hash: 'abc...', - changeId: 'change456', - utcDateChanged: '2025-11-02...' -) -``` - -**Sync Protocol:** -1. Client requests changes since last sync -2. Server returns entity_changes records -3. Client applies changes to Froca -4. Client sends local changes to server -5. Server updates Becca and database - ---- - -## Frontend Architecture - -### Application Entry Point - -**Desktop:** `apps/client/src/desktop.ts` -**Web:** `apps/client/src/index.ts` - -### Service Layer - -Located at: `apps/client/src/services/` - -Key services: -- `froca.ts` - Frontend cache -- `server.ts` - API communication -- `ws.ts` - WebSocket connection -- `tree_service.ts` - Note tree management -- `note_context.ts` - Active note tracking -- `protected_session.ts` - Encryption key management -- `link.ts` - Note linking and navigation -- `export.ts` - Note export functionality - -### UI Components - -**Main Layout:** - -```mermaid -graph TD - subgraph TriliumUI[" "] - TitleBar[Title Bar] - - subgraph MainArea[" "] - NoteTree[Note Tree] - NoteDetail[Note Detail
        Editor] - RightPanel[Right Panel
        Info, Links] - end - - StatusBar[Status Bar] - end - - TitleBar -.-> MainArea - MainArea -.-> StatusBar - - style TitleBar fill:#e1f5ff - style NoteTree fill:#fff4e1 - style NoteDetail fill:#f5ffe1 - style RightPanel fill:#ffe1f5 - style StatusBar fill:#e1f5ff -``` - -**Component Locations:** -- `widgets/containers/` - Layout containers -- `widgets/buttons/` - Toolbar buttons -- `widgets/dialogs/` - Modal dialogs -- `widgets/ribbon_widgets/` - Tab widgets -- `widgets/type_widgets/` - Note type editors - -### Event System - -**Application Events:** -```typescript -// Subscribe to events -appContext.addBeforeUnloadListener(() => { - // Cleanup before page unload -}) - -// Trigger events -appContext.trigger('noteTreeLoaded') -``` - -**Note Context Events:** -```typescript -// NoteContextAwareWidget automatically receives: -- noteSwitched() -- noteChanged() -- refresh() -``` - -### State Management - -Trilium uses **custom state management** rather than Redux/MobX: - -- `note_context.ts` - Active note and context -- `froca.ts` - Entity cache -- Component local state -- URL parameters for shareable state - ---- - -## Backend Architecture - -### Application Entry Point - -Location: `apps/server/src/main.ts` - -**Startup Sequence:** -1. Load configuration -2. Initialize database -3. Run migrations -4. Load Becca cache -5. Start Express server -6. Initialize WebSocket -7. Start scheduled tasks - -### Service Layer - -Located at: `apps/server/src/services/` - -**Core Services:** - -- **Notes Management** - - `notes.ts` - CRUD operations - - `note_contents.ts` - Content handling - - `note_types.ts` - Type-specific logic - - `cloning.ts` - Note cloning/multi-parent - -- **Tree Operations** - - `tree.ts` - Tree structure management - - `branches.ts` - Branch operations - - `consistency_checks.ts` - Tree integrity - -- **Search** - - `search/search.ts` - Main search engine - - `search/expressions/` - Search expression parsing - - `search/services/` - Search utilities - -- **Sync** - - `sync.ts` - Synchronization protocol - - `sync_update.ts` - Update handling - - `sync_mutex.ts` - Concurrency control - -- **Scripting** - - `backend_script_api.ts` - Backend script API - - `script_context.ts` - Script execution context - -- **Import/Export** - - `import/` - Various import formats - - `export/` - Export to different formats - - `zip.ts` - Archive handling - -- **Security** - - `encryption.ts` - Note encryption - - `protected_session.ts` - Session management - - `password.ts` - Password handling - -### Route Structure - -Located at: `apps/server/src/routes/` - -``` -routes/ -├── index.ts # Route registration -├── api/ # REST API endpoints -│ ├── notes.ts -│ ├── branches.ts -│ ├── attributes.ts -│ ├── search.ts -│ ├── login.ts -│ └── ... -└── custom/ # Special endpoints - ├── setup.ts - ├── share.ts - └── ... -``` - -**API Endpoint Pattern:** -```typescript -router.get('/api/notes/:noteId', (req, res) => { - const noteId = req.params.noteId - const note = becca.getNote(noteId) - res.json(note.getPojoWithContent()) -}) -``` - -### Middleware - -Key middleware components: -- `auth.ts` - Authentication -- `csrf.ts` - CSRF protection -- `request_context.ts` - Request-scoped data -- `error_handling.ts` - Error responses - ---- - ## API Architecture -### Internal API - -**REST Endpoints** (`/api/*`) - -Used by the frontend for all operations: - -**Note Operations:** -- `GET /api/notes/:noteId` - Get note -- `POST /api/notes/:noteId/content` - Update content -- `PUT /api/notes/:noteId` - Update metadata -- `DELETE /api/notes/:noteId` - Delete note - -**Tree Operations:** -- `GET /api/tree` - Get note tree -- `POST /api/branches` - Create branch -- `PUT /api/branches/:branchId` - Update branch -- `DELETE /api/branches/:branchId` - Delete branch - -**Search:** -- `GET /api/search?query=...` - Search notes -- `GET /api/search-note/:noteId` - Execute search note - -### ETAPI (External API) - -Located at: `apps/server/src/etapi/` - -**Purpose:** Third-party integrations and automation - -**Authentication:** Token-based (ETAPI tokens) - -**OpenAPI Spec:** Auto-generated - -**Key Endpoints:** -- `/etapi/notes` - Note CRUD -- `/etapi/branches` - Branch management -- `/etapi/attributes` - Attribute operations -- `/etapi/attachments` - Attachment handling - -**Example:** -```bash -curl -H "Authorization: YOUR_TOKEN" \ - https://trilium.example.com/etapi/notes/noteId -``` - -### WebSocket API - -Located at: `apps/server/src/services/ws.ts` - -**Purpose:** Real-time updates and synchronization - -**Protocol:** WebSocket (Socket.IO-like custom protocol) - -**Message Types:** -- `sync` - Synchronization request -- `entity-change` - Entity update notification -- `refresh-tree` - Tree structure changed -- `open-note` - Open note in UI - -**Client Subscribe:** -```typescript -ws.subscribe('entity-change', (data) => { - froca.processEntityChange(data) -}) -``` - ---- - ## Build System ### Package Manager: pnpm @@ -1013,9 +277,3 @@ For historical context on major architectural decisions, see: - Adoption of pnpm workspaces - CKEditor 5 upgrade - Entity change tracking system - ---- - -**Document Maintainer:** TriliumNext Team -**Last Review:** November 2025 -**Next Review:** When major architectural changes occur diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index e75df02a9..a871c66f5 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -124,18 +124,687 @@ }, { "isClone": false, - "noteId": "zdQzavvHDl1k", + "noteId": "MhwWMgxwDTZL", "notePath": [ "jdjRLhLV3TtI", - "zdQzavvHDl1k" + "MhwWMgxwDTZL" ], - "title": "Documentation", + "title": "Architecture", "notePosition": 280, "prefix": null, "isExpanded": false, "type": "text", "mime": "text/html", "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "architecture", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-arch", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Architecture.md", + "attachments": [], + "dirFileName": "Architecture", + "children": [ + { + "isClone": false, + "noteId": "2DJZgzpTJ078", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "2DJZgzpTJ078" + ], + "title": "Client-server architecture", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Client-server architecture", + "children": [ + { + "isClone": false, + "noteId": "dsMq2EIOMOBU", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "2DJZgzpTJ078", + "dsMq2EIOMOBU" + ], + "title": "Frontend", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Frontend.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "tsswRlmHEnYW", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "2DJZgzpTJ078", + "tsswRlmHEnYW" + ], + "title": "Backend", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Backend.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "pRZhrVIGCbMu", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu" + ], + "title": "Database", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "database", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Database.md", + "attachments": [], + "dirFileName": "Database", + "children": [ + { + "isClone": false, + "noteId": "vNMojjUN76jc", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc" + ], + "title": "Database structure", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "tables", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "Database structure", + "children": [ + { + "isClone": false, + "noteId": "e6GnYOXeIWjg", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "e6GnYOXeIWjg" + ], + "title": "attachments", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "DSkl8C325tEC", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "UvXpeSqfYc6d", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "VIcWnKGs0sMh", + "isInheritable": false, + "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "tM3rIZQzlum4", + "isInheritable": false, + "position": 40 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "attachments", + "isInheritable": false, + "position": 50 + } + ], + "format": "markdown", + "dataFileName": "attachments.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "ciL84vNBNi9y", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "ciL84vNBNi9y" + ], + "title": "attributes", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "DSkl8C325tEC", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "tM3rIZQzlum4", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "attributes", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "dataFileName": "attributes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "VIcWnKGs0sMh", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "VIcWnKGs0sMh" + ], + "title": "blobs", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "blobs", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "blobs.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "GskLPkgY5n6E", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "GskLPkgY5n6E" + ], + "title": "branches", + "notePosition": 50, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "h8AsuFjSD4fB", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "DSkl8C325tEC", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "tM3rIZQzlum4", + "isInheritable": false, + "position": 30 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "branches", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "dataFileName": "branches.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "ohhExR078MPU", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "ohhExR078MPU" + ], + "title": "entity_changes", + "notePosition": 51, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "entity-changes", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "entity_changes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "bRqbIg633nCs", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "bRqbIg633nCs" + ], + "title": "etapi_tokens", + "notePosition": 52, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "tM3rIZQzlum4", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "etapi-tokens", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "etapi_tokens.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "DSkl8C325tEC", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "DSkl8C325tEC" + ], + "title": "notes", + "notePosition": 53, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "VIcWnKGs0sMh", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "UvXpeSqfYc6d", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "tM3rIZQzlum4", + "isInheritable": false, + "position": 30 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "notes", + "isInheritable": false, + "position": 40 + } + ], + "format": "markdown", + "dataFileName": "notes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "4oeftEmy77Bt", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "4oeftEmy77Bt" + ], + "title": "options", + "notePosition": 54, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "options", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "options.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "VyFirdgAOoh5", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "VyFirdgAOoh5" + ], + "title": "recent_notes", + "notePosition": 55, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "DSkl8C325tEC", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "recent-notes", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "recent_notes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "s7ZBiaJVNumK", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "s7ZBiaJVNumK" + ], + "title": "revisions", + "notePosition": 56, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "DSkl8C325tEC", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "VIcWnKGs0sMh", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "UvXpeSqfYc6d", + "isInheritable": false, + "position": 30 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "shareAlias", + "value": "revisions", + "isInheritable": false, + "position": 50 + } + ], + "format": "markdown", + "dataFileName": "revisions.md", + "attachments": [] + } + ] + } + ] + }, + { + "isClone": false, + "noteId": "Wxn82Em8B7U5", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "Wxn82Em8B7U5" + ], + "title": "API", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "API.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "zdQzavvHDl1k", + "notePath": [ + "jdjRLhLV3TtI", + "zdQzavvHDl1k" + ], + "title": "Documentation", + "notePosition": 290, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "T2W7WCZrYZBU", + "isInheritable": false, + "position": 10 + }, { "type": "label", "name": "shareAlias", @@ -149,13 +818,6 @@ "value": "bx bx-book-open", "isInheritable": false, "position": 30 - }, - { - "type": "relation", - "name": "internalLink", - "value": "T2W7WCZrYZBU", - "isInheritable": false, - "position": 40 } ], "format": "markdown", @@ -200,7 +862,7 @@ "a0mkxxB4Uvbf" ], "title": "Building", - "notePosition": 290, + "notePosition": 300, "prefix": null, "isExpanded": false, "type": "text", @@ -415,7 +1077,7 @@ "name": "internalLink", "value": "zdQzavvHDl1k", "isInheritable": false, - "position": 20 + "position": 10 }, { "type": "label", @@ -439,7 +1101,7 @@ "qalhAaJoQ7AN" ], "title": "Dependencies", - "notePosition": 310, + "notePosition": 320, "prefix": null, "isExpanded": false, "type": "text", @@ -682,8 +1344,8 @@ "jdjRLhLV3TtI", "yeqU0zo0ZQ83" ], - "title": "Architecture", - "notePosition": 320, + "title": "Concepts", + "notePosition": 330, "prefix": null, "isExpanded": false, "type": "text", @@ -692,14 +1354,14 @@ { "type": "label", "name": "shareAlias", - "value": "architecture", + "value": "concepts", "isInheritable": false, "position": 10 }, { "type": "label", "name": "iconClass", - "value": "bx bx-arch", + "value": "bx bx-sitemap", "isInheritable": false, "position": 20 }, @@ -713,7 +1375,7 @@ ], "format": "markdown", "attachments": [], - "dirFileName": "Architecture", + "dirFileName": "Concepts", "children": [ { "isClone": false, @@ -776,6 +1438,33 @@ "dataFileName": "Branch prefixes.md", "attachments": [] }, + { + "isClone": false, + "noteId": "6Yms5izbd0GF", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "6Yms5izbd0GF" + ], + "title": "Cache", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-microchip", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Cache.md", + "attachments": [] + }, { "isClone": false, "noteId": "oqg9OpK8xfcm", @@ -785,7 +1474,7 @@ "oqg9OpK8xfcm" ], "title": "CI", - "notePosition": 30, + "notePosition": 40, "prefix": null, "isExpanded": false, "type": "text", @@ -857,511 +1546,6 @@ } ] }, - { - "isClone": false, - "noteId": "vNMojjUN76jc", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc" - ], - "title": "Database structure", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "shareAlias", - "value": "database", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-data", - "isInheritable": false, - "position": 30 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Database structure", - "children": [ - { - "isClone": false, - "noteId": "e6GnYOXeIWjg", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "e6GnYOXeIWjg" - ], - "title": "attachments", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "UvXpeSqfYc6d", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "VIcWnKGs0sMh", - "isInheritable": false, - "position": 30 - }, - { - "type": "relation", - "name": "internalLink", - "value": "tM3rIZQzlum4", - "isInheritable": false, - "position": 40 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "attachments", - "isInheritable": false, - "position": 50 - } - ], - "format": "markdown", - "dataFileName": "attachments.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "ciL84vNBNi9y", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "ciL84vNBNi9y" - ], - "title": "attributes", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "tM3rIZQzlum4", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "attributes", - "isInheritable": false, - "position": 40 - } - ], - "format": "markdown", - "dataFileName": "attributes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "VIcWnKGs0sMh", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "VIcWnKGs0sMh" - ], - "title": "blobs", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "blobs", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "blobs.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "GskLPkgY5n6E", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "GskLPkgY5n6E" - ], - "title": "branches", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "h8AsuFjSD4fB", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "tM3rIZQzlum4", - "isInheritable": false, - "position": 30 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "branches", - "isInheritable": false, - "position": 40 - } - ], - "format": "markdown", - "dataFileName": "branches.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "ohhExR078MPU", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "ohhExR078MPU" - ], - "title": "entity_changes", - "notePosition": 51, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "entity-changes", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "entity_changes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "bRqbIg633nCs", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "bRqbIg633nCs" - ], - "title": "etapi_tokens", - "notePosition": 52, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "tM3rIZQzlum4", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "etapi-tokens", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "etapi_tokens.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "DSkl8C325tEC", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "DSkl8C325tEC" - ], - "title": "notes", - "notePosition": 53, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "VIcWnKGs0sMh", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "UvXpeSqfYc6d", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "tM3rIZQzlum4", - "isInheritable": false, - "position": 30 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "notes", - "isInheritable": false, - "position": 40 - } - ], - "format": "markdown", - "dataFileName": "notes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "4oeftEmy77Bt", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "4oeftEmy77Bt" - ], - "title": "options", - "notePosition": 54, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "options", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "options.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "VyFirdgAOoh5", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "VyFirdgAOoh5" - ], - "title": "recent_notes", - "notePosition": 55, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "recent-notes", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "recent_notes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "s7ZBiaJVNumK", - "notePath": [ - "jdjRLhLV3TtI", - "yeqU0zo0ZQ83", - "vNMojjUN76jc", - "s7ZBiaJVNumK" - ], - "title": "revisions", - "notePosition": 56, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "VIcWnKGs0sMh", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "internalLink", - "value": "UvXpeSqfYc6d", - "isInheritable": false, - "position": 30 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "shareAlias", - "value": "revisions", - "isInheritable": false, - "position": 50 - } - ], - "format": "markdown", - "dataFileName": "revisions.md", - "attachments": [] - } - ] - }, { "isClone": false, "noteId": "tM3rIZQzlum4", @@ -1371,7 +1555,7 @@ "tM3rIZQzlum4" ], "title": "Deleted notes", - "notePosition": 50, + "notePosition": 70, "prefix": null, "isExpanded": false, "type": "text", @@ -1405,7 +1589,7 @@ "oLhKpfi2kGON" ], "title": "Demo document", - "notePosition": 60, + "notePosition": 80, "prefix": null, "isExpanded": false, "type": "text", @@ -1430,6 +1614,40 @@ "dataFileName": "Demo document.md", "attachments": [] }, + { + "isClone": false, + "noteId": "TiUll0Osoaz6", + "notePath": [ + "jdjRLhLV3TtI", + "yeqU0zo0ZQ83", + "TiUll0Osoaz6" + ], + "title": "Entities", + "notePosition": 90, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "entities", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bxs-note", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "Entities.md", + "attachments": [] + }, { "isClone": false, "noteId": "UzRirf46Xi46", @@ -1439,7 +1657,7 @@ "UzRirf46Xi46" ], "title": "Hidden notes", - "notePosition": 80, + "notePosition": 100, "prefix": null, "isExpanded": false, "type": "text", @@ -1473,7 +1691,7 @@ "m2W35hwSDUeh" ], "title": "Icons", - "notePosition": 90, + "notePosition": 110, "prefix": null, "isExpanded": false, "type": "text", @@ -1514,7 +1732,7 @@ "TLXJwBDo8Rdv" ], "title": "Internationalisation / Translations", - "notePosition": 100, + "notePosition": 120, "prefix": null, "isExpanded": false, "type": "text", @@ -1649,7 +1867,7 @@ "Usiyzn9C4WFv" ], "title": "Launchers", - "notePosition": 110, + "notePosition": 130, "prefix": null, "isExpanded": false, "type": "text", @@ -1676,7 +1894,7 @@ "qjQNyaYXSNWu" ], "title": "Note Revisions", - "notePosition": 120, + "notePosition": 140, "prefix": null, "isExpanded": false, "type": "text", @@ -1710,7 +1928,7 @@ "7RBJMqVz2EsJ" ], "title": "Note Types", - "notePosition": 130, + "notePosition": 150, "prefix": null, "isExpanded": false, "type": "text", @@ -2044,7 +2262,7 @@ "6dC7ha5vjqqS" ], "title": "Options", - "notePosition": 140, + "notePosition": 160, "prefix": null, "isExpanded": false, "type": "text", @@ -2109,7 +2327,7 @@ "W0msUwLxm40d" ], "title": "Printing and exporting to PDF", - "notePosition": 150, + "notePosition": 170, "prefix": null, "isExpanded": false, "type": "text", @@ -2150,7 +2368,7 @@ "UvXpeSqfYc6d" ], "title": "Protected entities", - "notePosition": 160, + "notePosition": 180, "prefix": null, "isExpanded": false, "type": "text", @@ -2205,7 +2423,7 @@ "vphziLmQeQHY" ], "title": "Share", - "notePosition": 170, + "notePosition": 190, "prefix": null, "isExpanded": false, "type": "text", @@ -2239,7 +2457,7 @@ "n9wYW9nUTynV" ], "title": "Synchronisation", - "notePosition": 180, + "notePosition": 200, "prefix": null, "isExpanded": false, "type": "text", @@ -2303,7 +2521,7 @@ "k7RavjuXQt8z" ], "title": "Syntax highlighting", - "notePosition": 190, + "notePosition": 210, "prefix": null, "isExpanded": false, "type": "text", @@ -2337,7 +2555,7 @@ "7BCukQTCm7fv" ], "title": "Themes", - "notePosition": 200, + "notePosition": 220, "prefix": null, "isExpanded": false, "type": "text", @@ -2372,7 +2590,7 @@ "YjerxU7Aii8X" ], "title": "Troubleshooting", - "notePosition": 360, + "notePosition": 370, "prefix": null, "isExpanded": false, "type": "text", @@ -2461,12 +2679,19 @@ "dtKC3FmoWOrv" ], "title": "Testing", - "notePosition": 380, + "notePosition": 390, "prefix": null, "isExpanded": false, "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "w6gMvKh0UAVT", + "isInheritable": false, + "position": 10 + }, { "type": "label", "name": "shareAlias", @@ -2480,13 +2705,6 @@ "value": "bx bxs-eyedropper", "isInheritable": false, "position": 30 - }, - { - "type": "relation", - "name": "internalLink", - "value": "w6gMvKh0UAVT", - "isInheritable": false, - "position": 40 } ], "format": "markdown", diff --git a/docs/Developer Guide/Developer Guide/Architecture.md b/docs/Developer Guide/Developer Guide/Architecture.md new file mode 100644 index 000000000..a11d27274 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture.md @@ -0,0 +1,118 @@ +# Architecture +Trilium Notes is a hierarchical note-taking application built as a TypeScript monorepo. It supports multiple deployment modes (desktop, server, mobile web) and features advanced capabilities including synchronization, scripting, encryption, and rich content editing. + +### Key Characteristics + +* **Monorepo Architecture**: Uses pnpm workspaces for dependency management +* **Multi-Platform**: Desktop (Electron), Server (Node.js/Express), and Mobile Web +* **TypeScript-First**: Strong typing throughout the codebase +* **Plugin-Based**: Extensible architecture for note types and UI components +* **Offline-First**: Full functionality without network connectivity +* **Synchronization-Ready**: Built-in sync protocol for multi-device usage + +### Technology Stack + +* **Runtime**: Node.js (backend), Browser/Electron (frontend) +* **Language**: TypeScript, JavaScript +* **Database**: SQLite (better-sqlite3) +* **Build Tools**: Vite, ESBuild, pnpm +* **UI Framework**: Custom widget-based system (vanilla HTML, CSS & JavaScript + jQuery), in the process of converting to React/Preact. +* **Rich Text**: CKEditor 5 (customized) +* **Code Editing**: CodeMirror 6 +* **Desktop**: Electron +* **Server**: Express.js + +## Main architecture + +Trilium follows a **client-server architecture** even in desktop mode, where Electron runs both the backend server and frontend client within the same process. + +```mermaid +graph TB + subgraph Frontend + Widgets[Widgets
        System] + Froca[Froca
        Cache] + UIServices[UI
        Services] + end + + subgraph Backend["Backend Server"] + Express[Express
        Routes] + Becca[Becca
        Cache] + ScriptEngine[Script
        Engine] + Database[(SQLite
        Database)] + end + + Widgets -.-> API[WebSocket & REST API] + Froca -.-> API + UIServices -.-> API + API -.-> Express + API -.-> Becca + API -.-> ScriptEngine + Becca --> Database + Express --> Database + ScriptEngine --> Database +``` + +### Deployment Modes + +1. **Desktop Application** + * Electron wrapper running both frontend and backend + * Local SQLite database + * Full offline functionality + * Cross-platform (Windows, macOS, Linux) +2. **Server Installation** + * Node.js server exposing web interface + * Multi-user capable + * Can sync with desktop clients + * Docker deployment supported +3. **Mobile Web** + * Optimized responsive interface + * Accessed via browser + * Requires server installation + +## Monorepo Structure + +Trilium uses **pnpm workspaces** to manage its monorepo structure, with apps and packages clearly separated. + +``` +trilium/ +├── apps/ # Runnable applications +│ ├── client/ # Frontend application (shared by server & desktop) +│ ├── server/ # Node.js server with web interface +│ ├── desktop/ # Electron desktop application +│ ├── web-clipper/ # Browser extension for web content capture +│ ├── db-compare/ # Database comparison tool +│ ├── dump-db/ # Database export tool +│ ├── edit-docs/ # Documentation editing tool +│ ├── build-docs/ # Documentation build tool +│ └── website/ # Marketing website +│ +├── packages/ # Shared libraries +│ ├── commons/ # Shared interfaces and utilities +│ ├── ckeditor5/ # Custom rich text editor +│ ├── codemirror/ # Code editor customizations +│ ├── highlightjs/ # Syntax highlighting +│ ├── ckeditor5-admonition/ # CKEditor plugin: admonitions +│ ├── ckeditor5-footnotes/ # CKEditor plugin: footnotes +│ ├── ckeditor5-keyboard-marker/# CKEditor plugin: keyboard shortcuts +│ ├── ckeditor5-math/ # CKEditor plugin: math equations +│ ├── ckeditor5-mermaid/ # CKEditor plugin: diagrams +│ ├── express-partial-content/ # HTTP partial content middleware +│ ├── share-theme/ # Shared note theme +│ ├── splitjs/ # Split pane library +│ └── turndown-plugin-gfm/ # Markdown conversion +│ +├── docs/ # Documentation +├── scripts/ # Build and utility scripts +└── patches/ # Package patches (via pnpm) +``` + +### Package Dependencies + +The monorepo uses workspace protocol (`workspace:*`) for internal dependencies: + +``` +desktop → client → commons +server → client → commons +client → ckeditor5, codemirror, highlightjs +ckeditor5 → ckeditor5-* plugins +``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/API.md b/docs/Developer Guide/Developer Guide/Architecture/API.md new file mode 100644 index 000000000..57fc8c164 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/API.md @@ -0,0 +1,72 @@ +# API +### Internal API + +**REST Endpoints** (`/api/*`) + +Used by the frontend for all operations: + +**Note Operations:** + +* `GET /api/notes/:noteId` - Get note +* `POST /api/notes/:noteId/content` - Update content +* `PUT /api/notes/:noteId` - Update metadata +* `DELETE /api/notes/:noteId` - Delete note + +**Tree Operations:** + +* `GET /api/tree` - Get note tree +* `POST /api/branches` - Create branch +* `PUT /api/branches/:branchId` - Update branch +* `DELETE /api/branches/:branchId` - Delete branch + +**Search:** + +* `GET /api/search?query=...` - Search notes +* `GET /api/search-note/:noteId` - Execute search note + +### ETAPI (External API) + +Located at: `apps/server/src/etapi/` + +**Purpose:** Third-party integrations and automation + +**Authentication:** Token-based (ETAPI tokens) + +**OpenAPI Spec:** Auto-generated + +**Key Endpoints:** + +* `/etapi/notes` - Note CRUD +* `/etapi/branches` - Branch management +* `/etapi/attributes` - Attribute operations +* `/etapi/attachments` - Attachment handling + +**Example:** + +```sh +curl -H "Authorization: YOUR_TOKEN" \ + https://trilium.example.com/etapi/notes/noteId +``` + +### WebSocket API + +Located at: `apps/server/src/services/ws.ts` + +**Purpose:** Real-time updates and synchronization + +**Protocol:** WebSocket (Socket.IO-like custom protocol) + +**Message Types:** + +* `sync` - Synchronization request +* `entity-change` - Entity update notification +* `refresh-tree` - Tree structure changed +* `open-note` - Open note in UI + +**Client Subscribe:** + +```typescript +ws.subscribe('entity-change', (data) => { + froca.processEntityChange(data) +}) +``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Backend.md b/docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Backend.md new file mode 100644 index 000000000..df0ddf21d --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Backend.md @@ -0,0 +1,88 @@ +# Backend +### Application Entry Point + +Location: `apps/server/src/main.ts` + +**Startup Sequence:** + +1. Load configuration +2. Initialize database +3. Run migrations +4. Load Becca cache +5. Start Express server +6. Initialize WebSocket +7. Start scheduled tasks + +### Service Layer + +Located at: `apps/server/src/services/` + +**Core Services:** + +* **Notes Management** + * `notes.ts` - CRUD operations + * `note_contents.ts` - Content handling + * `note_types.ts` - Type-specific logic + * `cloning.ts` - Note cloning/multi-parent +* **Tree Operations** + * `tree.ts` - Tree structure management + * `branches.ts` - Branch operations + * `consistency_checks.ts` - Tree integrity +* **Search** + * `search/search.ts` - Main search engine + * `search/expressions/` - Search expression parsing + * `search/services/` - Search utilities +* **Sync** + * `sync.ts` - Synchronization protocol + * `sync_update.ts` - Update handling + * `sync_mutex.ts` - Concurrency control +* **Scripting** + * `backend_script_api.ts` - Backend script API + * `script_context.ts` - Script execution context +* **Import/Export** + * `import/` - Various import formats + * `export/` - Export to different formats + * `zip.ts` - Archive handling +* **Security** + * `encryption.ts` - Note encryption + * `protected_session.ts` - Session management + * `password.ts` - Password handling + +### Route Structure + +Located at: `apps/server/src/routes/` + +``` +routes/ +├── index.ts # Route registration +├── api/ # REST API endpoints +│ ├── notes.ts +│ ├── branches.ts +│ ├── attributes.ts +│ ├── search.ts +│ ├── login.ts +│ └── ... +└── custom/ # Special endpoints + ├── setup.ts + ├── share.ts + └── ... +``` + +**API Endpoint Pattern:** + +```typescript +router.get('/api/notes/:noteId', (req, res) => { + const noteId = req.params.noteId + const note = becca.getNote(noteId) + res.json(note.getPojoWithContent()) +}) +``` + +### Middleware + +Key middleware components: + +* `auth.ts` - Authentication +* `csrf.ts` - CSRF protection +* `request_context.ts` - Request-scoped data +* `error_handling.ts` - Error responses \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Frontend.md b/docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Frontend.md new file mode 100644 index 000000000..9ef0acbdf --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Frontend.md @@ -0,0 +1,61 @@ +# Frontend +### Application Entry Point + +**Desktop:** `apps/client/src/desktop.ts` **Web:** `apps/client/src/index.ts` + +### Service Layer + +Located at: `apps/client/src/services/` + +Key services: + +* `froca.ts` - Frontend cache +* `server.ts` - API communication +* `ws.ts` - WebSocket connection +* `tree_service.ts` - Note tree management +* `note_context.ts` - Active note tracking +* `protected_session.ts` - Encryption key management +* `link.ts` - Note linking and navigation +* `export.ts` - Note export functionality + +### UI Components + +**Component Locations:** + +* `widgets/containers/` - Layout containers +* `widgets/buttons/` - Toolbar buttons +* `widgets/dialogs/` - Modal dialogs +* `widgets/ribbon_widgets/` - Tab widgets +* `widgets/type_widgets/` - Note type editors + +### Event System + +**Application Events:** + +```typescript +// Subscribe to events +appContext.addBeforeUnloadListener(() => { + // Cleanup before page unload +}) + +// Trigger events +appContext.trigger('noteTreeLoaded') +``` + +**Note Context Events:** + +```typescript +// NoteContextAwareWidget automatically receives: +- noteSwitched() +- noteChanged() +- refresh() +``` + +### State Management + +Trilium uses **custom state management** rather than Redux/MobX: + +* `note_context.ts` - Active note and context +* `froca.ts` - Entity cache +* Component local state +* URL parameters for shareable state \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database.md b/docs/Developer Guide/Developer Guide/Architecture/Database.md new file mode 100644 index 000000000..bb80ccdb1 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Database.md @@ -0,0 +1,40 @@ +# Database +Trilium uses **SQLite** as its database engine, managed via `better-sqlite3`. + +Schema location: `apps/server/src/assets/db/schema.sql` + +### Data Access Patterns + +**Direct SQL:** + +```typescript +// apps/server/src/services/sql.ts +sql.getRows("SELECT * FROM notes WHERE type = ?", ['text']) +sql.execute("UPDATE notes SET title = ? WHERE noteId = ?", [title, noteId]) +``` + +**Through Becca:** + +```typescript +// Recommended approach - uses cache +const note = becca.getNote('noteId') +note.title = 'New Title' +note.save() +``` + +**Through Froca (Frontend):** + +```typescript +// Read-only access +const note = froca.getNote('noteId') +console.log(note.title) +``` + +### Database Migrations + +* The migration system is in `server/src/migrations/migrations.ts` (actual definitions) and `src/services/migration.ts`. +* Both SQLite and TypeScript migrations are supported. + * Small migrations are contained directly in `src/migrations/migrations.ts`. + * Bigger TypeScript migrations are sequentially numbered (e.g., `XXXX_migration_name.ts`) and dynamically imported by `migrations.ts`. +* Automatic execution on version upgrade. +* Schema version tracked in options table. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/attachments.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/attachments.md similarity index 90% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/attachments.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/attachments.md index 4312832dd..09ae80d4b 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database structure/attachments.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/attachments.md @@ -6,11 +6,11 @@ | `role` | Text | Non-null | | The role of the attachment: `image` for images that are attached to a note, `file` for uploaded files. | | `mime` | Text | Non-null | | The MIME type of the attachment (e.g. `image/png`) | | `title` | Text | Non-null | | The title of the attachment. | -| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../Protected%20entities.md), `0` otherwise. | +| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../../../Concepts/Protected%20entities.md), `0` otherwise. | | `position` | Integer | Non-null | 0 | Not sure where the position is relevant for attachments (saw it with values of 10 and 0). | | `blobId` | Text | Nullable | `null` | The corresponding `blobId` from the blobs table. | | `dateModified` | Text | Non-null | | Localized modification date (e.g. `2023-11-08 18:43:44.204+0200`) | | `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) | | `utcDateScheduledForErasure` | Text | Nullable | `null` | | -| `isDeleted` | Integer | Non-null | | `1` if the entity is [deleted](../Deleted%20notes.md), `0` otherwise. | +| `isDeleted` | Integer | Non-null | | `1` if the entity is [deleted](../../../Concepts/Deleted%20notes.md), `0` otherwise. | | `deleteId` | Text | Nullable | `null` | | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/attributes.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/attributes.md similarity index 84% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/attributes.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/attributes.md index 959073ec8..f1cbb99c4 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database structure/attributes.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/attributes.md @@ -1,2 +1,2 @@ # attributes -

      Column NameData TypeNullityDefault valueDescription
      attributeIdTextNon-null Unique Id of the attribute (e.g. qhC1vzU4nwSE), can also have a special unique ID for Special notes (e.g. _lbToday_liconClass).
      noteIdTextNon-null The ID of the note this atttribute belongs to
      typeTextNon-null The type of attribute (label or relation).
      nameTextNon-null The name/key of the attribute.
      valueTextNon-null""
      • For label attributes, a free-form value of the attribute.
      • For relation attributes, the ID of the note the relation is pointing to.
      positionIntegerNon-null0The position of the attribute compared to the other attributes. Some predefined attributes such as originalFileName have a value of 1000.
      utcDateModifiedTextNon-null Modification date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
      isDeletedIntegerNon-null 1 if the entity is deleted, 0 otherwise.
      deleteIdTextNullablenull 
      isInheritableIntegerNullable0 
      \ No newline at end of file +
      Column NameData TypeNullityDefault valueDescription
      attributeIdTextNon-null Unique Id of the attribute (e.g. qhC1vzU4nwSE), can also have a special unique ID for Special notes (e.g. _lbToday_liconClass).
      noteIdTextNon-null The ID of the note this atttribute belongs to
      typeTextNon-null The type of attribute (label or relation).
      nameTextNon-null The name/key of the attribute.
      valueTextNon-null""
      • For label attributes, a free-form value of the attribute.
      • For relation attributes, the ID of the note the relation is pointing to.
      positionIntegerNon-null0The position of the attribute compared to the other attributes. Some predefined attributes such as originalFileName have a value of 1000.
      utcDateModifiedTextNon-null Modification date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
      isDeletedIntegerNon-null 1 if the entity is deleted, 0 otherwise.
      deleteIdTextNullablenull 
      isInheritableIntegerNullable0 
      \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/blobs.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/blobs.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/blobs.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/blobs.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/branches.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/branches.md similarity index 82% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/branches.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/branches.md index d9b12dea5..18cf29090 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database structure/branches.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/branches.md @@ -5,8 +5,8 @@ | `noteId` | Text | Non-null | | The ID of the [note](notes.md). | | `parentNoteId` | Text | Non-null | | The ID of the parent [note](notes.md) the note belongs to. | | `notePosition` | Integer | Non-null | | The position of the branch within the same level of hierarchy, the value is usually a multiple of 10. | -| `prefix` | Text | Nullable | | The [branch prefix](../Branch%20prefixes.md) if any, or `NULL` otherwise. | +| `prefix` | Text | Nullable | | The [branch prefix](../../../Concepts/Branch%20prefixes.md) if any, or `NULL` otherwise. | | `isExpanded` | Integer | Non-null | 0 | Whether the branch should appear expanded (its children shown) to the user. | -| `isDeleted` | Integer | Non-null | 0 | `1` if the entity is [deleted](../Deleted%20notes.md), `0` otherwise. | +| `isDeleted` | Integer | Non-null | 0 | `1` if the entity is [deleted](../../../Concepts/Deleted%20notes.md), `0` otherwise. | | `deleteId` | Text | Nullable | `null` | | | `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/entity_changes.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/entity_changes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/entity_changes.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/entity_changes.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/etapi_tokens.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/etapi_tokens.md similarity index 90% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/etapi_tokens.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/etapi_tokens.md index 25fe4e5da..3f11dffa9 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database structure/etapi_tokens.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/etapi_tokens.md @@ -6,4 +6,4 @@ | `tokenHash` | Text | Non-null | | The token itself. | | `utcDateCreated` | Text | Non-null | | Creation date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) | | `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) | -| `isDeleted` | Integer | Non-null | 0 | `1` if the entity is [deleted](../Deleted%20notes.md), `0` otherwise. | \ No newline at end of file +| `isDeleted` | Integer | Non-null | 0 | `1` if the entity is [deleted](../../../Concepts/Deleted%20notes.md), `0` otherwise. | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/notes.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/notes.md similarity index 90% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/notes.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/notes.md index 572c7f6db..19cb4a322 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database structure/notes.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/notes.md @@ -3,10 +3,10 @@ | --- | --- | --- | --- | --- | | `noteId` | Text | Non-null | | The unique ID of the note (e.g. `2LJrKqIhr0Pe`). | | `title` | Text | Non-null | `"note"` | The title of the note, as defined by the user. | -| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../Protected%20entities.md), `0` otherwise. | +| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../../../Concepts/Protected%20entities.md), `0` otherwise. | | `type` | Text | Non-null | `"text"` | The type of note (i.e. `text`, `file`, `code`, `relationMap`, `mermaid`, `canvas`). | | `mime` | Text | Non-null | `"text/html"` | The MIME type of the note (e.g. `text/html`).. Note that it can be an empty string in some circumstances, but not null. | -| `isDeleted` | Integer | Nullable | 0 | `1` if the entity is [deleted](../Deleted%20notes.md), `0` otherwise. | +| `isDeleted` | Integer | Nullable | 0 | `1` if the entity is [deleted](../../../Concepts/Deleted%20notes.md), `0` otherwise. | | `deleteId` | Text | Non-null | `null` | | | `dateCreated` | Text | Non-null | | Localized creation date (e.g. `2023-11-08 18:43:44.204+0200`) | | `dateModified` | Text | Non-null | | Localized modification date (e.g. `2023-11-08 18:43:44.204+0200`) | diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/options.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/options.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/options.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/options.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/recent_notes.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/recent_notes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/recent_notes.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/recent_notes.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database structure/revisions.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/revisions.md similarity index 94% rename from docs/Developer Guide/Developer Guide/Architecture/Database structure/revisions.md rename to docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/revisions.md index 210e05356..fef9ed1ed 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database structure/revisions.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/revisions.md @@ -6,7 +6,7 @@ | `type` | Text | Non-null | `""` | The type of note (i.e. `text`, `file`, `code`, `relationMap`, `mermaid`, `canvas`). | | `mime` | Text | Non-null | `""` | The MIME type of the note (e.g. `text/html`). | | `title` | Text | Non-null | | The title of the note, as defined by the user. | -| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../Protected%20entities.md), `0` otherwise. | +| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../../../Concepts/Protected%20entities.md), `0` otherwise. | | `blobId` | Text | Nullable | `null` | The corresponding ID from blobs. Although it can theoretically be `NULL`, haven't found any such note yet. | | `utcDateLastEdited` | Text | Non-null | | **Not sure how it differs from modification date.** | | `utcDateCreated` | Text | Non-null | | Creation date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) | diff --git a/docs/Developer Guide/Developer Guide/Architecture/Protected entities.md b/docs/Developer Guide/Developer Guide/Architecture/Protected entities.md deleted file mode 100644 index f7d4e5b2e..000000000 --- a/docs/Developer Guide/Developer Guide/Architecture/Protected entities.md +++ /dev/null @@ -1,6 +0,0 @@ -# Protected entities -The following entities can be made protected, via their `isProtected` flag: - -* attachments -* notes -* revisions \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Backlinks.md b/docs/Developer Guide/Developer Guide/Concepts/Backlinks.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Backlinks.md rename to docs/Developer Guide/Developer Guide/Concepts/Backlinks.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Branch prefixes.md b/docs/Developer Guide/Developer Guide/Concepts/Branch prefixes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Branch prefixes.md rename to docs/Developer Guide/Developer Guide/Concepts/Branch prefixes.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/CI/1_Main_image.png b/docs/Developer Guide/Developer Guide/Concepts/CI/1_Main_image.png similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/CI/1_Main_image.png rename to docs/Developer Guide/Developer Guide/Concepts/CI/1_Main_image.png diff --git a/docs/Developer Guide/Developer Guide/Architecture/CI/Main.md b/docs/Developer Guide/Developer Guide/Concepts/CI/Main.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/CI/Main.md rename to docs/Developer Guide/Developer Guide/Concepts/CI/Main.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/CI/Main_image.png b/docs/Developer Guide/Developer Guide/Concepts/CI/Main_image.png similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/CI/Main_image.png rename to docs/Developer Guide/Developer Guide/Concepts/CI/Main_image.png diff --git a/docs/Developer Guide/Developer Guide/Concepts/Cache.md b/docs/Developer Guide/Developer Guide/Concepts/Cache.md new file mode 100644 index 000000000..91a6f8b6d --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Concepts/Cache.md @@ -0,0 +1,111 @@ +# Cache +### Three-Layer Cache System + +Trilium implements a sophisticated **three-tier caching system** to optimize performance and enable offline functionality: + +#### 1\. Becca (Backend Cache) + +Located at: `apps/server/src/becca/` + +```typescript +// Becca caches all entities in memory +class Becca { + notes: Record + branches: Record + attributes: Record + attachments: Record + // ... other entity collections +} +``` + +**Responsibilities:** + +* Server-side entity cache +* Maintains complete note tree in memory +* Handles entity relationships and integrity +* Provides fast lookups without database queries +* Manages entity lifecycle (create, update, delete) + +**Key Files:** + +* `becca.ts` - Main cache instance +* `becca_loader.ts` - Loads entities from database +* `becca_service.ts` - Cache management operations +* `entities/` - Entity classes (BNote, BBranch, etc.) + +#### 2\. Froca (Frontend Cache) + +Located at: `apps/client/src/services/froca.ts` + +```typescript +// Froca is a read-only mirror of backend data +class Froca { + notes: Record + branches: Record + attributes: Record + // ... other entity collections +} +``` + +**Responsibilities:** + +* Frontend read-only cache +* Lazy loading of note tree +* Minimizes API calls +* Enables fast UI rendering +* Synchronizes with backend via WebSocket + +**Loading Strategy:** + +* Initial load: root notes and immediate children +* Lazy load: notes loaded when accessed +* When note is loaded, all parent and child branches load +* Deleted entities tracked via missing branches + +#### 3\. Shaca (Share Cache) + +Located at: `apps/server/src/share/` + +**Responsibilities:** + +* Optimized cache for shared/published notes +* Handles public note access without authentication +* Performance-optimized for high-traffic scenarios +* Separate from main Becca to isolate concerns + +### Cache Invalidation + +**Server-Side:** + +* Entities automatically update cache on save +* WebSocket broadcasts changes to all clients +* Synchronization updates trigger cache refresh + +**Client-Side:** + +* WebSocket listeners update Froca +* Manual reload via `froca.loadSubTree(noteId)` +* Full reload on protected session changes + +### Cache Consistency + +**Entity Change Tracking:** + +```typescript +// Every entity modification tracked +entity_changes ( + entityName: 'notes', + entityId: 'note123', + hash: 'abc...', + changeId: 'change456', + utcDateChanged: '2025-11-02...' +) +``` + +**Sync Protocol:** + +1. Client requests changes since last sync +2. Server returns entity\_changes records +3. Client applies changes to Froca +4. Client sends local changes to server +5. Server updates Becca and database \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Deleted notes.md b/docs/Developer Guide/Developer Guide/Concepts/Deleted notes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Deleted notes.md rename to docs/Developer Guide/Developer Guide/Concepts/Deleted notes.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Demo document.md b/docs/Developer Guide/Developer Guide/Concepts/Demo document.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Demo document.md rename to docs/Developer Guide/Developer Guide/Concepts/Demo document.md diff --git a/docs/Developer Guide/Developer Guide/Concepts/Entities.md b/docs/Developer Guide/Developer Guide/Concepts/Entities.md new file mode 100644 index 000000000..56d954c94 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Concepts/Entities.md @@ -0,0 +1,109 @@ +# Entities +### Entity System + +Trilium's data model is based on five core entities: + +```mermaid +graph TD + Note[Note
      BNote] + Branch[Branch
      BBranch] + Attribute[Attribute
      BAttribute] + Revision[Revision
      BRevision] + Attachment[Attachment
      BAttachment] + + Note -->|linked by| Branch + Note -.->|metadata| Attribute + Branch -->|creates| Revision + Note -->|has| Attachment + + style Note fill:#e1f5ff + style Branch fill:#fff4e1 + style Attribute fill:#ffe1f5 + style Revision fill:#f5ffe1 + style Attachment fill:#ffe1e1 +``` + +#### Entity Definitions + +**1\. BNote** (`apps/server/src/becca/entities/bnote.ts`) + +* Represents a note with title, content, and metadata +* Type can be: text, code, file, image, canvas, mermaid, etc. +* Contains content via blob reference +* Can be protected (encrypted) +* Has creation and modification timestamps + +**2\. BBranch** (`apps/server/src/becca/entities/bbranch.ts`) + +* Represents parent-child relationship between notes +* Enables note cloning (multiple parents) +* Contains positioning information +* Has optional prefix for customization +* Tracks expansion state in tree + +**3\. BAttribute** (`apps/server/src/becca/entities/battribute.ts`) + +* Key-value metadata attached to notes +* Two types: labels (tags) and relations (links) +* Can be inheritable to child notes +* Used for search, organization, and scripting +* Supports promoted attributes (displayed prominently) + +**4\. BRevision** (`apps/server/src/becca/entities/brevision.ts`) + +* Stores historical versions of note content +* Automatic versioning on edits +* Retains title, type, and content +* Enables note history browsing and restoration + +**5\. BAttachment** (`apps/server/src/becca/entities/battachment.ts`) + +* File attachments linked to notes +* Has owner (note), role, and mime type +* Content stored in blobs +* Can be protected (encrypted) + +**6\. BBlob** (`apps/server/src/becca/entities/bblob.ts`) + +* Binary large object storage +* Stores actual note content and attachments +* Referenced by notes, revisions, and attachments +* Supports encryption for protected content + +### Widget-Based UI + +The frontend uses a **widget system** for modular, reusable UI components. + +Located at: `apps/client/src/widgets/` + +```typescript +// Widget Hierarchy +BasicWidget +├── NoteContextAwareWidget (responds to note changes) +│ ├── RightPanelWidget (displayed in right sidebar) +│ └── Type-specific widgets +├── Container widgets (tabs, ribbons, etc.) +└── Specialized widgets (search, calendar, etc.) +``` + +**Base Classes:** + +1. **BasicWidget** (`basic_widget.ts`) + * Base class for all UI components + * Lifecycle: construction → rendering → events → destruction + * Handles DOM manipulation + * Event subscription management + * Child widget management +2. **NoteContextAwareWidget** (`note_context_aware_widget.ts`) + * Extends BasicWidget + * Automatically updates when active note changes + * Accesses current note context + * Used for note-dependent UI +3. **RightPanelWidget** + * Widgets displayed in right sidebar + * Collapsible sections + * Context-specific tools and information + +**Type-Specific Widgets:** + +Each note type has a dedicated widget, which are located in `apps/client/src/widgets/type_widgets`. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Hidden notes.md b/docs/Developer Guide/Developer Guide/Concepts/Hidden notes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Hidden notes.md rename to docs/Developer Guide/Developer Guide/Concepts/Hidden notes.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Icons.md b/docs/Developer Guide/Developer Guide/Concepts/Icons.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Icons.md rename to docs/Developer Guide/Developer Guide/Concepts/Icons.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translat.md b/docs/Developer Guide/Developer Guide/Concepts/Internationalisation Translat.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translat.md rename to docs/Developer Guide/Developer Guide/Concepts/Internationalisation Translat.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/Guidelines.md b/docs/Developer Guide/Developer Guide/Concepts/Internationalisation Translations/Guidelines.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/Guidelines.md rename to docs/Developer Guide/Developer Guide/Concepts/Internationalisation Translations/Guidelines.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/Server translations.md b/docs/Developer Guide/Developer Guide/Concepts/Internationalisation Translations/Server translations.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/Server translations.md rename to docs/Developer Guide/Developer Guide/Concepts/Internationalisation Translations/Server translations.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/i18n-ally.md b/docs/Developer Guide/Developer Guide/Concepts/Internationalisation Translations/i18n-ally.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Internationalisation Translations/i18n-ally.md rename to docs/Developer Guide/Developer Guide/Concepts/Internationalisation Translations/i18n-ally.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Launchers.md b/docs/Developer Guide/Developer Guide/Concepts/Launchers.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Launchers.md rename to docs/Developer Guide/Developer Guide/Concepts/Launchers.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Revisions.md b/docs/Developer Guide/Developer Guide/Concepts/Note Revisions.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Revisions.md rename to docs/Developer Guide/Developer Guide/Concepts/Note Revisions.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Copy image reference to the cl.md b/docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Copy image reference to the cl.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Copy image reference to the cl.md rename to docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Copy image reference to the cl.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Export diagram as SVG.md b/docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Export diagram as SVG.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Export diagram as SVG.md rename to docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Export diagram as SVG.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps.md b/docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/First steps.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps.md rename to docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/First steps.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps/mind_map.js b/docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/First steps/mind_map.js similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/First steps/mind_map.js rename to docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/First steps/mind_map.js diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Loading data.md b/docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Loading data.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Loading data.md rename to docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Loading data.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Note type checklist.md b/docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Note type checklist.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Note type checklist.md rename to docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Note type checklist.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/SVG rendering.md b/docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/SVG rendering.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/SVG rendering.md rename to docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/SVG rendering.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Saving data via spaced update.md b/docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Saving data via spaced update.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Note Types/Adding a new note type/Saving data via spaced update.md rename to docs/Developer Guide/Developer Guide/Concepts/Note Types/Adding a new note type/Saving data via spaced update.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Options.md b/docs/Developer Guide/Developer Guide/Concepts/Options.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Options.md rename to docs/Developer Guide/Developer Guide/Concepts/Options.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Options/Creating a new option.md b/docs/Developer Guide/Developer Guide/Concepts/Options/Creating a new option.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Options/Creating a new option.md rename to docs/Developer Guide/Developer Guide/Concepts/Options/Creating a new option.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Printing and exporting to PDF.md b/docs/Developer Guide/Developer Guide/Concepts/Printing and exporting to PDF.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Printing and exporting to PDF.md rename to docs/Developer Guide/Developer Guide/Concepts/Printing and exporting to PDF.md diff --git a/docs/Developer Guide/Developer Guide/Concepts/Protected entities.md b/docs/Developer Guide/Developer Guide/Concepts/Protected entities.md new file mode 100644 index 000000000..31d5250c0 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Concepts/Protected entities.md @@ -0,0 +1,6 @@ +# Protected entities +The following entities can be made protected, via their `isProtected` flag: + +* attachments +* notes +* revisions \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Share.md b/docs/Developer Guide/Developer Guide/Concepts/Share.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Share.md rename to docs/Developer Guide/Developer Guide/Concepts/Share.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Synchronisation/Content hashing.md b/docs/Developer Guide/Developer Guide/Concepts/Synchronisation/Content hashing.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Synchronisation/Content hashing.md rename to docs/Developer Guide/Developer Guide/Concepts/Synchronisation/Content hashing.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Syntax highlighting.md b/docs/Developer Guide/Developer Guide/Concepts/Syntax highlighting.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Syntax highlighting.md rename to docs/Developer Guide/Developer Guide/Concepts/Syntax highlighting.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Themes.md b/docs/Developer Guide/Developer Guide/Concepts/Themes.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Themes.md rename to docs/Developer Guide/Developer Guide/Concepts/Themes.md diff --git a/docs/Developer Guide/Developer Guide/Documentation.md b/docs/Developer Guide/Developer Guide/Documentation.md index 4874aaa1d..611bdd69a 100644 --- a/docs/Developer Guide/Developer Guide/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Documentation.md @@ -1,5 +1,5 @@ # Documentation -There are multiple types of documentation for Trilium: +There are multiple types of documentation for Trilium: * The _User Guide_ represents the user-facing documentation. This documentation can be browsed by users directly from within Trilium, by pressing F1. * The _Developer's Guide_ represents a set of Markdown documents that present the internals of Trilium, for developers. diff --git a/docs/Developer Guide/Developer Guide/Environment Setup.md b/docs/Developer Guide/Developer Guide/Environment Setup.md index 95d14cd50..bf7f44adb 100644 --- a/docs/Developer Guide/Developer Guide/Environment Setup.md +++ b/docs/Developer Guide/Developer Guide/Environment Setup.md @@ -33,4 +33,4 @@ Run `pnpm i` at the top of the `Notes` repository to install the dependencies. Our recommended IDE for working on Trilium is Visual Studio Code (or VSCodium if you are looking for a fully open-source alternative). -By default we include a number of suggested extensions which should appear when opening the repository in VS Code. Most of the extensions are for integrating various technologies we are using such as Playwright and Vitest for testing or for Internationalisation / Translations. \ No newline at end of file +By default we include a number of suggested extensions which should appear when opening the repository in VS Code. Most of the extensions are for integrating various technologies we are using such as Playwright and Vitest for testing or for Internationalisation / Translations. \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index a38998354..0a573e808 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -14616,21 +14616,21 @@ { "type": "relation", "name": "internalLink", - "value": "zEY4DaJG4YT5", + "value": "GLks18SNjxmC", "isInheritable": false, "position": 10 }, { "type": "relation", "name": "internalLink", - "value": "SynTBQiBsdYJ", + "value": "zEY4DaJG4YT5", "isInheritable": false, "position": 20 }, { "type": "relation", "name": "internalLink", - "value": "GLks18SNjxmC", + "value": "SynTBQiBsdYJ", "isInheritable": false, "position": 30 }, @@ -14787,19 +14787,19 @@ "isInheritable": false, "position": 30 }, - { - "type": "label", - "name": "shareAlias", - "value": "widget-basics", - "isInheritable": false, - "position": 20 - }, { "type": "relation", "name": "internalLink", "value": "s8alTXmpFR61", "isInheritable": false, "position": 40 + }, + { + "type": "label", + "name": "shareAlias", + "value": "widget-basics", + "isInheritable": false, + "position": 20 } ], "format": "markdown", @@ -14949,21 +14949,21 @@ { "type": "relation", "name": "internalLink", - "value": "m1lbrzyKDaRB", + "value": "yIhgI5H7A2Sm", "isInheritable": false, "position": 50 }, { "type": "relation", "name": "internalLink", - "value": "s8alTXmpFR61", + "value": "m1lbrzyKDaRB", "isInheritable": false, "position": 60 }, { "type": "relation", "name": "internalLink", - "value": "yIhgI5H7A2Sm", + "value": "s8alTXmpFR61", "isInheritable": false, "position": 70 }, From 7369f9d532de998e7f3c836c2537193278dced60 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 17:24:38 +0200 Subject: [PATCH 118/136] docs(dev): integrate architecture guide --- docs/ARCHITECTURE.md | 279 ------------------ docs/Developer Guide/!!!meta.json | 133 +++++++-- docs/Developer Guide/Developer Guide.md | 13 +- .../Developer Guide/Architecture.md | 7 +- .../Developer Guide/Architecture/API.md | 2 +- .../Arhitecture Decision Records.md | 62 ++++ .../Architecture/Security Architecture.md | 79 +++++ .../Developer Guide/Concepts/Entities.md | 2 +- .../Developer Guide/Documentation.md | 2 +- .../Developer Guide/Testing.md | 46 ++- .../Testing/End-to-end tests.md | 13 +- .../Developer Guide/Testing/Unit tests.md | 7 + docs/User Guide/!!!meta.json | 42 +++ docs/User Guide/User Guide.md | 20 +- 14 files changed, 392 insertions(+), 315 deletions(-) delete mode 100644 docs/ARCHITECTURE.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Arhitecture Decision Records.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Security Architecture.md create mode 100644 docs/Developer Guide/Developer Guide/Testing/Unit tests.md diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md deleted file mode 100644 index 1c1d6638b..000000000 --- a/docs/ARCHITECTURE.md +++ /dev/null @@ -1,279 +0,0 @@ -## API Architecture - -## Build System - -### Package Manager: pnpm - -**Why pnpm:** -- Fast, disk-efficient -- Strict dependency isolation -- Native monorepo support via workspaces -- Patch package support - -**Workspace Configuration:** -```yaml -# pnpm-workspace.yaml -packages: - - 'apps/*' - - 'packages/*' -``` - -### Build Tools - -**Vite** (Development & Production) -- Fast HMR for development -- Optimized production builds -- Asset handling -- Plugin ecosystem - -**ESBuild** (TypeScript compilation) -- Fast TypeScript transpilation -- Bundling support -- Minification - -**TypeScript** -- Project references for monorepo -- Strict type checking -- Shared `tsconfig.base.json` - -### Build Scripts - -**Root `package.json` scripts:** -```json -{ - "server:start": "pnpm run --filter server dev", - "server:build": "pnpm run --filter server build", - "client:build": "pnpm run --filter client build", - "desktop:build": "pnpm run --filter desktop build", - "test:all": "pnpm test:parallel && pnpm test:sequential" -} -``` - -### Build Process - -**Development:** -```bash -pnpm install # Install dependencies -pnpm server:start # Start dev server (port 8080) -# or -pnpm desktop:start # Start Electron dev -``` - -**Production (Server):** -```bash -pnpm server:build # Build server + client -node apps/server/dist/main.js -``` - -**Production (Desktop):** -```bash -pnpm desktop:build # Build Electron app -# Creates distributable in apps/desktop/out/make/ -``` - -**Docker:** -```bash -docker build -t trilium . -docker run -p 8080:8080 trilium -``` - -### Asset Pipeline - -**Client Assets:** -- Entry: `apps/client/src/index.html` -- Bundled by Vite -- Output: `apps/client/dist/` - -**Server Static:** -- Serves client assets in production -- Public directory: `apps/server/public/` - -**Desktop:** -- Packages client assets -- Electron main process: `apps/desktop/src/main.ts` -- Electron renderer: loads client app - ---- - -## Testing Strategy - -### Test Organization - -**Parallel Tests** (can run simultaneously): -- Client tests -- Package tests -- E2E tests (isolated databases) - -**Sequential Tests** (shared resources): -- Server tests (shared database) -- CKEditor plugin tests - -### Test Frameworks - -- **Vitest** - Unit and integration tests -- **Playwright** - E2E tests -- **Happy-DOM** - DOM testing environment - -### Running Tests - -```bash -pnpm test:all # All tests -pnpm test:parallel # Fast parallel tests -pnpm test:sequential # Sequential tests only -pnpm coverage # With coverage reports -``` - -### Test Locations - -``` -apps/ -├── server/ -│ └── src/**/*.spec.ts # Server tests -├── client/ -│ └── src/**/*.spec.ts # Client tests -└── server-e2e/ - └── tests/**/*.spec.ts # E2E tests -``` - -### E2E Testing - -**Server E2E:** -- Tests full REST API -- Tests WebSocket functionality -- Tests sync protocol - -**Desktop E2E:** -- Playwright with Electron -- Tests full desktop app -- Screenshot comparison - ---- - -## Security Architecture - -### Encryption System - -**Per-Note Encryption:** -- Notes can be individually protected -- AES-256 encryption -- Password-derived encryption key (PBKDF2) -- Separate protected session management - -**Protected Session:** -- Time-limited access to protected notes -- Automatic timeout -- Re-authentication required -- Frontend: `protected_session.ts` -- Backend: `protected_session.ts` - -### Authentication - -**Password Auth:** -- PBKDF2 key derivation -- Salt per installation -- Hash verification - -**OpenID Connect:** -- External identity provider support -- OAuth 2.0 flow -- Configurable providers - -**TOTP (2FA):** -- Time-based one-time passwords -- QR code setup -- Backup codes - -### Authorization - -**Single-User Model:** -- Desktop: single user (owner) -- Server: single user per installation - -**Share Notes:** -- Public access without authentication -- Separate Shaca cache -- Read-only access - -### CSRF Protection - -**CSRF Tokens:** -- Required for state-changing operations -- Token in header or cookie -- Validation middleware - -### Input Sanitization - -**XSS Prevention:** -- DOMPurify for HTML sanitization -- CKEditor content filtering -- CSP headers - -**SQL Injection:** -- Parameterized queries only -- Better-sqlite3 prepared statements -- No string concatenation in SQL - -### Dependency Security - -**Vulnerability Scanning:** -- Renovate bot for updates -- npm audit integration -- Override vulnerable sub-dependencies - ---- - -## Related Documentation - -### User Documentation -- [User Guide](User%20Guide/User%20Guide/) - End-user features and usage -- [Installation Guide](User%20Guide/User%20Guide/Installation%20&%20Setup/) -- [Basic Concepts](User%20Guide/User%20Guide/Basic%20Concepts%20and%20Features/) - -### Developer Documentation -- [Developer Guide](Developer%20Guide/Developer%20Guide/) - Development setup -- [Environment Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) -- [Project Structure](Developer%20Guide/Developer%20Guide/Project%20Structure.md) -- [Adding Note Types](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Adding%20a%20new%20note%20type/) -- [Database Schema](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Database/) - -### API Documentation -- [Script API](Script%20API/) - User scripting API -- [ETAPI Documentation](https://triliumnext.github.io/Docs/Wiki/etapi) - External API - -### Additional Resources -- [CLAUDE.md](../CLAUDE.md) - AI assistant guidance -- [README.md](../README.md) - Project overview -- [SECURITY.md](../SECURITY.md) - Security policy - ---- - -## Appendices - -### Glossary - -- **Becca**: Backend Cache - server-side entity cache -- **Froca**: Frontend Cache - client-side entity mirror -- **Shaca**: Share Cache - cache for public shared notes -- **ETAPI**: External API for third-party integrations -- **Protected Note**: Encrypted note requiring password -- **Clone**: Note with multiple parent branches -- **Branch**: Parent-child relationship between notes -- **Attribute**: Metadata (label or relation) attached to note -- **Blob**: Binary large object containing note content - -### File Naming Conventions - -- `BEntity` - Backend entity (e.g., BNote, BBranch) -- `FEntity` - Frontend entity (e.g., FNote, FBranch) -- `*_widget.ts` - Widget classes -- `*_service.ts` - Service modules -- `*.spec.ts` - Test files -- `XXXX_*.sql` - Migration files - -### Architecture Decision Records - -For historical context on major architectural decisions, see: -- Migration to TypeScript monorepo -- Adoption of pnpm workspaces -- CKEditor 5 upgrade -- Entity change tracking system diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index a871c66f5..f19dbc16a 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -35,6 +35,20 @@ "value": "developer-guide", "isInheritable": false, "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "T2W7WCZrYZBU", + "isInheritable": false, + "position": 40 + }, + { + "type": "relation", + "name": "internalLink", + "value": "cxfTSHIUQtt2", + "isInheritable": false, + "position": 50 } ], "format": "markdown", @@ -450,14 +464,14 @@ { "type": "relation", "name": "internalLink", - "value": "h8AsuFjSD4fB", + "value": "DSkl8C325tEC", "isInheritable": false, "position": 10 }, { "type": "relation", "name": "internalLink", - "value": "DSkl8C325tEC", + "value": "h8AsuFjSD4fB", "isInheritable": false, "position": 20 }, @@ -781,6 +795,60 @@ "format": "markdown", "dataFileName": "API.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "Vk4zD1Iirarg", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "Vk4zD1Iirarg" + ], + "title": "Arhitecture Decision Records", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "Jg7clqogFOyD", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Arhitecture Decision Records.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "QW1MB7RZB5Gf", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "QW1MB7RZB5Gf" + ], + "title": "Security Architecture", + "notePosition": 50, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "security-architecture", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Security Architecture.md", + "attachments": [] } ] }, @@ -1555,7 +1623,7 @@ "tM3rIZQzlum4" ], "title": "Deleted notes", - "notePosition": 70, + "notePosition": 50, "prefix": null, "isExpanded": false, "type": "text", @@ -1589,7 +1657,7 @@ "oLhKpfi2kGON" ], "title": "Demo document", - "notePosition": 80, + "notePosition": 60, "prefix": null, "isExpanded": false, "type": "text", @@ -1623,7 +1691,7 @@ "TiUll0Osoaz6" ], "title": "Entities", - "notePosition": 90, + "notePosition": 70, "prefix": null, "isExpanded": false, "type": "text", @@ -1657,7 +1725,7 @@ "UzRirf46Xi46" ], "title": "Hidden notes", - "notePosition": 100, + "notePosition": 80, "prefix": null, "isExpanded": false, "type": "text", @@ -1691,7 +1759,7 @@ "m2W35hwSDUeh" ], "title": "Icons", - "notePosition": 110, + "notePosition": 90, "prefix": null, "isExpanded": false, "type": "text", @@ -1700,14 +1768,14 @@ { "type": "relation", "name": "internalLink", - "value": "oLhKpfi2kGON", + "value": "PXzm2t3sCdsP", "isInheritable": false, "position": 10 }, { "type": "relation", "name": "internalLink", - "value": "PXzm2t3sCdsP", + "value": "oLhKpfi2kGON", "isInheritable": false, "position": 20 }, @@ -1732,7 +1800,7 @@ "TLXJwBDo8Rdv" ], "title": "Internationalisation / Translations", - "notePosition": 120, + "notePosition": 100, "prefix": null, "isExpanded": false, "type": "text", @@ -1867,7 +1935,7 @@ "Usiyzn9C4WFv" ], "title": "Launchers", - "notePosition": 130, + "notePosition": 110, "prefix": null, "isExpanded": false, "type": "text", @@ -1894,7 +1962,7 @@ "qjQNyaYXSNWu" ], "title": "Note Revisions", - "notePosition": 140, + "notePosition": 120, "prefix": null, "isExpanded": false, "type": "text", @@ -1928,7 +1996,7 @@ "7RBJMqVz2EsJ" ], "title": "Note Types", - "notePosition": 150, + "notePosition": 130, "prefix": null, "isExpanded": false, "type": "text", @@ -2262,7 +2330,7 @@ "6dC7ha5vjqqS" ], "title": "Options", - "notePosition": 160, + "notePosition": 140, "prefix": null, "isExpanded": false, "type": "text", @@ -2327,7 +2395,7 @@ "W0msUwLxm40d" ], "title": "Printing and exporting to PDF", - "notePosition": 170, + "notePosition": 150, "prefix": null, "isExpanded": false, "type": "text", @@ -2368,7 +2436,7 @@ "UvXpeSqfYc6d" ], "title": "Protected entities", - "notePosition": 180, + "notePosition": 160, "prefix": null, "isExpanded": false, "type": "text", @@ -2423,7 +2491,7 @@ "vphziLmQeQHY" ], "title": "Share", - "notePosition": 190, + "notePosition": 170, "prefix": null, "isExpanded": false, "type": "text", @@ -2457,7 +2525,7 @@ "n9wYW9nUTynV" ], "title": "Synchronisation", - "notePosition": 200, + "notePosition": 180, "prefix": null, "isExpanded": false, "type": "text", @@ -2521,7 +2589,7 @@ "k7RavjuXQt8z" ], "title": "Syntax highlighting", - "notePosition": 210, + "notePosition": 190, "prefix": null, "isExpanded": false, "type": "text", @@ -2555,7 +2623,7 @@ "7BCukQTCm7fv" ], "title": "Themes", - "notePosition": 220, + "notePosition": 200, "prefix": null, "isExpanded": false, "type": "text", @@ -2712,6 +2780,25 @@ "attachments": [], "dirFileName": "Testing", "children": [ + { + "isClone": false, + "noteId": "ETeT5YO61DAW", + "notePath": [ + "jdjRLhLV3TtI", + "dtKC3FmoWOrv", + "ETeT5YO61DAW" + ], + "title": "Unit tests", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Unit tests.md", + "attachments": [] + }, { "isClone": false, "noteId": "C5MUQczZ5R9N", @@ -2721,7 +2808,7 @@ "C5MUQczZ5R9N" ], "title": "Integration testing", - "notePosition": 10, + "notePosition": 20, "prefix": null, "isExpanded": false, "type": "text", @@ -2748,7 +2835,7 @@ "bIfKwfCnqpeI" ], "title": "Test database", - "notePosition": 20, + "notePosition": 30, "prefix": null, "isExpanded": false, "type": "text", @@ -2775,7 +2862,7 @@ "w6gMvKh0UAVT" ], "title": "End-to-end tests", - "notePosition": 30, + "notePosition": 40, "prefix": null, "isExpanded": false, "type": "text", diff --git a/docs/Developer Guide/Developer Guide.md b/docs/Developer Guide/Developer Guide.md index 2dd9f42de..8f5721b30 100644 --- a/docs/Developer Guide/Developer Guide.md +++ b/docs/Developer Guide/Developer Guide.md @@ -1,4 +1,15 @@ # Developer Guide This documentation is intended for developers planning to implement new features or maintain the Trilium Notes application, as it describes the architecture of the application. -For the user-facing documentation, including how to write scripts and the various APIs, consult the [user guide](https://docs.triliumnotes.org/user-guide/) instead. \ No newline at end of file +For the user-facing documentation, including how to write scripts and the various APIs, consult the [user guide](https://docs.triliumnotes.org/user-guide/) instead. + +### Quick links + +* Environment Setup +* Project Structure + +### External links + +* The [Trilium Notes website](https://triliumnotes.org/), for a quick presentation of the application. +* [User Guide](https://docs.triliumnotes.org/user-guide/), to understand the concepts of the application itself. +* [GitHub Repository (TriliumNext/Trilium)](https://github.com/TriliumNext/Trilium/) \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture.md b/docs/Developer Guide/Developer Guide/Architecture.md index a11d27274..48a91fcde 100644 --- a/docs/Developer Guide/Developer Guide/Architecture.md +++ b/docs/Developer Guide/Developer Guide/Architecture.md @@ -15,7 +15,10 @@ Trilium Notes is a hierarchical note-taking application built as a TypeScript mo * **Runtime**: Node.js (backend), Browser/Electron (frontend) * **Language**: TypeScript, JavaScript * **Database**: SQLite (better-sqlite3) -* **Build Tools**: Vite, ESBuild, pnpm +* **Build Tools**: + * Client: Vite, + * Server: ESBuild (bundling) + * Package manager: pnpm * **UI Framework**: Custom widget-based system (vanilla HTML, CSS & JavaScript + jQuery), in the process of converting to React/Preact. * **Rich Text**: CKEditor 5 (customized) * **Code Editing**: CodeMirror 6 @@ -26,7 +29,7 @@ Trilium Notes is a hierarchical note-taking application built as a TypeScript mo Trilium follows a **client-server architecture** even in desktop mode, where Electron runs both the backend server and frontend client within the same process. -```mermaid +``` graph TB subgraph Frontend Widgets[Widgets
      System] diff --git a/docs/Developer Guide/Developer Guide/Architecture/API.md b/docs/Developer Guide/Developer Guide/Architecture/API.md index 57fc8c164..92f6fb813 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/API.md +++ b/docs/Developer Guide/Developer Guide/Architecture/API.md @@ -43,7 +43,7 @@ Located at: `apps/server/src/etapi/` **Example:** -```sh +``` curl -H "Authorization: YOUR_TOKEN" \ https://trilium.example.com/etapi/notes/noteId ``` diff --git a/docs/Developer Guide/Developer Guide/Architecture/Arhitecture Decision Records.md b/docs/Developer Guide/Developer Guide/Architecture/Arhitecture Decision Records.md new file mode 100644 index 000000000..c524642cd --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Arhitecture Decision Records.md @@ -0,0 +1,62 @@ +# Arhitecture Decision Records +## 🚀 Future milestones + +* [Mobile](https://github.com/TriliumNext/Trilium/issues/7447) +* [Multi-user](https://github.com/TriliumNext/Trilium/issues/4956) + +## Aug 2025 - present: Port the client to React + +- [x] [Type widgets](https://github.com/TriliumNext/Trilium/pull/7044) +- [x] [Collections](https://github.com/TriliumNext/Trilium/pull/6837) +- [x] [Various widgets](https://github.com/TriliumNext/Trilium/pull/6830) +- [x] [Floating buttons](https://github.com/TriliumNext/Trilium/pull/6811) +- [x] [Settings](https://github.com/TriliumNext/Trilium/pull/6660) + +## Aug 2025 - Move away from NX + +We took the decision of moving away from the NX monorepo tool, due to: + +* Various issues with the cache, especially after an update of the NX dependencies which required periodical `nx reset` to get rid of. +* Various issues with memory and CPU consumption along the way, due to the NX daemon (including it remaining as a background process after closing the IDE). +* On Windows, almost always there was a freeze on every second build. +* Various hacks that were needed to achieve what we needed (especially for artifacts since NX would not copy assets if they were in `.gitignore` for some arbitrary reason and requiring a patch that made it difficult to maintain across updates). + +As a result, we decided to switch to… nothing. Why? + +* `pnpm` (which we were already using) covers the basic needs of a monorepo via workspaces on its own. +* Our client-side solution, Vite already supports navigating through projects without requiring built artifacts. This makes the build process slightly faster (especially cold starts) at a slighter bigger RAM consumption. +* ESBuild, on the server-side, also seems happy to go across projects without an issue. + +Apart from this: + +* In dev mode, the server now runs directly using `tsx` and not built and then run. This means that it'll run much faster. +* We're back to an architecture where the `server` and the `desktop` host their own Vite instance as a middleware. What this means that there is no `client:dev` and no separate port to handle. + * This makes it possible to easily test on mobile in dev mode, since there's a single port to access. + * The downside is that the initial start up time is longer while Vite is spinning up. Nevertheless, it's still slightly faster than it used to be anyway. +* No more asset copying, which should also improve performance. +* No more messing around with the native dependency of `better-sqlite3` that caused those dreaded mismatches when running between server and desktop. We have (hopefully) found a permanent solution for it that involves no user input. +* A decent solution was put in place to allow easier development on NixOS for the desktop application. +* The desktop version has also gained back the ability to automatically refresh the client when a change is made, including live changes for React components. + +Migration steps, as a developer: + +1. In VS Code, uninstall the NX Console unless you plan to use it for other projects. +2. Remove `.nx` at project level. +3. It's ideal to clean up all your `node_modules` in the project (do note that it's not just the top-level one, but also in `apps/client`, `apps/server`, `apps/desktop`, etc.). +4. Run a `pnpm i` to set up the new dependencies and the installation +5. Instead of `nx run server:serve`, now you can simply run `pnpm dev` while in `apps/server`, or `pnpm server:start` while in the root. +6. When first starting the server, it will take slightly longer than usual to see something on the screen since the dependencies are being rebuilt. Those are later cached so subsequent runs should work better. If you end up with a white screen, simply refresh the page a few times until it shows up correctly. + +## Apr 2025: NX-based monorepo + +* Goal: Restructure the application from a mix where the client was a subfolder within the server and other dependencies such as CKEditor were scattered in various repositories to a monorepo powered by NX. +* [Initial discussion](https://github.com/TriliumNext/Trilium/issues/4941) +* [Relevant PR](https://github.com/TriliumNext/Notes/pull/1773) + +## Dec 2024: Front-end conversion to TypeScript + +* [Relevant PRs on GitHub](https://github.com/TriliumNext/Notes/pulls?q=is%3Apr+is%3Aclosed+%22Port+frontend+to+TypeScript%22) + +## Apr 2024: Back-end conversion to TypeScript + +* [Relevant PRs on GitHub](https://github.com/TriliumNext/Notes/pulls?q=is%3Apr+%22convert+backend+to+typescript%22) \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Security Architecture.md b/docs/Developer Guide/Developer Guide/Architecture/Security Architecture.md new file mode 100644 index 000000000..ab0c88c06 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Security Architecture.md @@ -0,0 +1,79 @@ +# Security Architecture +### Encryption System + +**Per-Note Encryption:** + +* Notes can be individually protected +* AES-128-CBC encryption for encrypted notes. +* Separate protected session management + +**Protected Session:** + +* Time-limited access to protected notes +* Automatic timeout +* Re-authentication required +* Frontend: `protected_session.ts` +* Backend: `protected_session.ts` + +### Authentication + +**Password Auth:** + +* PBKDF2 key derivation +* Salt per installation +* Hash verification + +**OpenID Connect:** + +* External identity provider support +* OAuth 2.0 flow +* Configurable providers + +**TOTP (2FA):** + +* Time-based one-time passwords +* QR code setup +* Backup codes + +### Authorization + +**Single-User Model:** + +* Desktop: single user (owner) +* Server: single user per installation + +**Share Notes:** + +* Public access without authentication +* Separate Shaca cache +* Read-only access + +### CSRF Protection + +**CSRF Tokens:** + +* Required for state-changing operations +* Token in header or cookie +* Validation middleware + +### Input Sanitization + +**XSS Prevention:** + +* DOMPurify for HTML sanitization +* CKEditor content filtering +* CSP headers + +**SQL Injection:** + +* Parameterized queries only +* Better-sqlite3 prepared statements +* No string concatenation in SQL + +### Dependency Security + +**Vulnerability Scanning:** + +* Renovate bot for updates +* npm audit integration +* Override vulnerable sub-dependencies \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Concepts/Entities.md b/docs/Developer Guide/Developer Guide/Concepts/Entities.md index 56d954c94..faac90af7 100644 --- a/docs/Developer Guide/Developer Guide/Concepts/Entities.md +++ b/docs/Developer Guide/Developer Guide/Concepts/Entities.md @@ -3,7 +3,7 @@ Trilium's data model is based on five core entities: -```mermaid +``` graph TD Note[Note
      BNote] Branch[Branch
      BBranch] diff --git a/docs/Developer Guide/Developer Guide/Documentation.md b/docs/Developer Guide/Developer Guide/Documentation.md index 611bdd69a..4da87601a 100644 --- a/docs/Developer Guide/Developer Guide/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Documentation.md @@ -1,5 +1,5 @@ # Documentation -There are multiple types of documentation for Trilium: +There are multiple types of documentation for Trilium: * The _User Guide_ represents the user-facing documentation. This documentation can be browsed by users directly from within Trilium, by pressing F1. * The _Developer's Guide_ represents a set of Markdown documents that present the internals of Trilium, for developers. diff --git a/docs/Developer Guide/Developer Guide/Testing.md b/docs/Developer Guide/Developer Guide/Testing.md index a1f8a1983..570f52ded 100644 --- a/docs/Developer Guide/Developer Guide/Testing.md +++ b/docs/Developer Guide/Developer Guide/Testing.md @@ -1,4 +1,48 @@ # Testing +### Test Organization + +**Parallel Tests** (can run simultaneously): + +* Client tests +* Package tests +* E2E tests (isolated databases) + +**Sequential Tests** (shared resources): + +* Server tests (shared database) +* CKEditor plugin tests + +### Test Frameworks + +* **Vitest** - Unit and integration tests +* **Playwright** - E2E tests +* **Happy-DOM** - DOM testing environment + +## Test locations + +``` +apps/ +├── server/ +│ └── src/**/*.spec.ts # Server tests +├── client/ +│ └── src/**/*.spec.ts # Client tests +└── server-e2e/ +│ └── tests/**/*.spec.ts # E2E tests +└── desktop/ + └── e2e + └── tests/**/*.spec.ts # E2E tests +``` + +## Running tests + +At project root: + +``` +pnpm test:all # All tests +pnpm test:parallel # Fast parallel tests +pnpm test:sequential # Sequential tests only +``` + ## Unit testing and integration testing Using `vitest`, there are some unit and integration tests done for both the client and the server. @@ -27,4 +71,4 @@ These integration tests are run alongside unit tests. ## End-to-end testing -See e2e tests. \ No newline at end of file +See End-to-end tests. \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Testing/End-to-end tests.md b/docs/Developer Guide/Developer Guide/Testing/End-to-end tests.md index 387940158..60060adae 100644 --- a/docs/Developer Guide/Developer Guide/Testing/End-to-end tests.md +++ b/docs/Developer Guide/Developer Guide/Testing/End-to-end tests.md @@ -1,6 +1,15 @@ # End-to-end tests -* This tests both the client and the server, by running the server and then using Playwright to query the state of the page. -* These can be found in `apps/server-e2e` and `apps/desktop/e2e`. +**Server E2E:** + +* Tests the entire ETAPI. +* Tests WebSocket functionality + +**Desktop E2E:** + +* Playwright with Electron +* Tests some basic functionality such as creating a new document. + +These can be found in `apps/server-e2e` and `apps/desktop/e2e`. ## First-time run diff --git a/docs/Developer Guide/Developer Guide/Testing/Unit tests.md b/docs/Developer Guide/Developer Guide/Testing/Unit tests.md new file mode 100644 index 000000000..a009b8d92 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Testing/Unit tests.md @@ -0,0 +1,7 @@ +# Unit tests +At project level: + +* `pnpm server:test` +* `pnpm client:test` + +Unit tests are stored in the same directory as the source code being tested, with the `.spec.ts` suffix. \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index 0a573e808..86ddd9589 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -56,6 +56,48 @@ "value": "bx bx-help-circle", "isInheritable": false, "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "poXkQfguuA0U", + "isInheritable": false, + "position": 40 + }, + { + "type": "relation", + "name": "internalLink", + "value": "WOcw2SLH6tbX", + "isInheritable": false, + "position": 50 + }, + { + "type": "relation", + "name": "internalLink", + "value": "gh7bpGYxajRS", + "isInheritable": false, + "position": 60 + }, + { + "type": "relation", + "name": "internalLink", + "value": "Q2z6av6JZVWm", + "isInheritable": false, + "position": 70 + }, + { + "type": "relation", + "name": "internalLink", + "value": "MEtfsqa5VwNi", + "isInheritable": false, + "position": 80 + }, + { + "type": "relation", + "name": "internalLink", + "value": "9qPsTWBorUhQ", + "isInheritable": false, + "position": 90 } ], "format": "markdown", diff --git a/docs/User Guide/User Guide.md b/docs/User Guide/User Guide.md index 0225eeccc..3e5537135 100644 --- a/docs/User Guide/User Guide.md +++ b/docs/User Guide/User Guide.md @@ -1,13 +1,25 @@ # User Guide Trilium is an open-source solution for note-taking and organizing a personal knowledge base. Use it locally on your desktop, or sync it with your self-hosted server to keep your notes everywhere you go. -For a quick overview of the application, visit our website at [triliumnotes.org](https://triliumnotes.org/). - > [!TIP] > The same documentation can be accessed locally from within the Trilium Notes application by pressing F1. ## Getting started 1. See Quick Start. -2. Understand Notes. -3. Browse through Collections. \ No newline at end of file +2. Go through Basic Concepts and Features. +3. Understand Notes. +4. Browse through Collections. + +## Quick links + +* Desktop Installation +* Server Installation +* Frontend API or Backend API +* [ETAPI reference](User%20Guide/Advanced%20Usage/ETAPI%20\(REST%20API\)/API%20Reference.dat) + +## External links + +* The [Trilium Notes website](https://triliumnotes.org/), for a quick presentation of the application. +* [Developer Guide](https://docs.triliumnotes.org/developer-guide/), to understand the architecture and processes behind the development of Trilium Notes. +* [GitHub Repository (TriliumNext/Trilium)](https://github.com/TriliumNext/Trilium/) \ No newline at end of file From 7131d44d03b45d43df8becbd0bc0232aa673b72f Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 18:16:20 +0200 Subject: [PATCH 119/136] docs(dev): integrate rest of the documentation --- docs/DATABASE.md | 736 ---------------- docs/Developer Guide/!!!meta.json | 168 ++-- .../Developer Guide/Architecture.md | 83 +- .../Architecture/{API.md => APIs.md} | 2 +- .../Backend.md | 0 .../Developer Guide/Architecture/Database.md | 2 +- .../Frontend.md | 0 .../Architecture/Security Architecture.md | 79 -- .../Developer Guide/Architecture/Security.md | 464 ++++++++++ .../Concepts/Synchronisation.md} | 323 +++---- docs/QUICK_REFERENCE.md | 155 ---- docs/SCRIPTING.md | 734 --------------- docs/SECURITY_ARCHITECTURE.md | 834 ------------------ docs/TECHNICAL_DOCUMENTATION.md | 423 --------- 14 files changed, 772 insertions(+), 3231 deletions(-) delete mode 100644 docs/DATABASE.md rename docs/Developer Guide/Developer Guide/Architecture/{API.md => APIs.md} (99%) rename docs/Developer Guide/Developer Guide/Architecture/{Client-server architecture => }/Backend.md (100%) rename docs/Developer Guide/Developer Guide/Architecture/{Client-server architecture => }/Frontend.md (100%) delete mode 100644 docs/Developer Guide/Developer Guide/Architecture/Security Architecture.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Security.md rename docs/{SYNCHRONIZATION.md => Developer Guide/Developer Guide/Concepts/Synchronisation.md} (52%) delete mode 100644 docs/QUICK_REFERENCE.md delete mode 100644 docs/SCRIPTING.md delete mode 100644 docs/SECURITY_ARCHITECTURE.md delete mode 100644 docs/TECHNICAL_DOCUMENTATION.md diff --git a/docs/DATABASE.md b/docs/DATABASE.md deleted file mode 100644 index 52df42e0b..000000000 --- a/docs/DATABASE.md +++ /dev/null @@ -1,736 +0,0 @@ -# Trilium Database Architecture - -> **Related:** [ARCHITECTURE.md](ARCHITECTURE.md) | [Database Schema](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Database/) - -## Overview - -Trilium uses **SQLite** as its embedded database engine, providing a reliable, file-based storage system that requires no separate database server. The database stores all notes, their relationships, metadata, and configuration. - -## Database File - -**Location:** -- Desktop: `~/.local/share/trilium-data/document.db` (Linux/Mac) or `%APPDATA%/trilium-data/document.db` (Windows) -- Server: Configured via `TRILIUM_DATA_DIR` environment variable -- Docker: Mounted volume at `/home/node/trilium-data/` - -**Characteristics:** -- Single-file database -- Embedded (no server required) -- ACID compliant -- Cross-platform -- Supports up to 281 TB database size -- Efficient for 100k+ notes - -## Database Driver - -**Library:** `better-sqlite3` - -**Why better-sqlite3:** -- Native performance (C++ bindings) -- Synchronous API (simpler code) -- Prepared statements -- Transaction support -- Type safety - -**Usage:** -```typescript -// apps/server/src/services/sql.ts -import Database from 'better-sqlite3' - -const db = new Database('document.db') -const stmt = db.prepare('SELECT * FROM notes WHERE noteId = ?') -const note = stmt.get(noteId) -``` - -## Schema Overview - -Schema location: `apps/server/src/assets/db/schema.sql` - -**Entity Tables:** -- `notes` - Core note data -- `branches` - Tree relationships -- `attributes` - Metadata (labels/relations) -- `revisions` - Version history -- `attachments` - File attachments -- `blobs` - Binary content storage - -**System Tables:** -- `options` - Application configuration -- `entity_changes` - Change tracking for sync -- `recent_notes` - Recently accessed notes -- `etapi_tokens` - API authentication tokens -- `user_data` - User credentials -- `sessions` - Web session storage - -## Entity Tables - -### Notes Table - -```sql -CREATE TABLE notes ( - noteId TEXT NOT NULL PRIMARY KEY, - title TEXT NOT NULL DEFAULT "note", - isProtected INT NOT NULL DEFAULT 0, - type TEXT NOT NULL DEFAULT 'text', - mime TEXT NOT NULL DEFAULT 'text/html', - blobId TEXT DEFAULT NULL, - isDeleted INT NOT NULL DEFAULT 0, - deleteId TEXT DEFAULT NULL, - dateCreated TEXT NOT NULL, - dateModified TEXT NOT NULL, - utcDateCreated TEXT NOT NULL, - utcDateModified TEXT NOT NULL -); - --- Indexes for performance -CREATE INDEX IDX_notes_title ON notes (title); -CREATE INDEX IDX_notes_type ON notes (type); -CREATE INDEX IDX_notes_dateCreated ON notes (dateCreated); -CREATE INDEX IDX_notes_dateModified ON notes (dateModified); -CREATE INDEX IDX_notes_utcDateModified ON notes (utcDateModified); -CREATE INDEX IDX_notes_blobId ON notes (blobId); -``` - -**Field Descriptions:** - -| Field | Type | Description | -|-------|------|-------------| -| `noteId` | TEXT | Unique identifier (UUID or custom) | -| `title` | TEXT | Note title (displayed in tree) | -| `isProtected` | INT | 1 if encrypted, 0 if not | -| `type` | TEXT | Note type: text, code, file, image, etc. | -| `mime` | TEXT | MIME type: text/html, application/json, etc. | -| `blobId` | TEXT | Reference to content in blobs table | -| `isDeleted` | INT | Soft delete flag | -| `deleteId` | TEXT | Unique delete operation ID | -| `dateCreated` | TEXT | Creation date (local timezone) | -| `dateModified` | TEXT | Last modified (local timezone) | -| `utcDateCreated` | TEXT | Creation date (UTC) | -| `utcDateModified` | TEXT | Last modified (UTC) | - -**Note Types:** -- `text` - Rich text with HTML -- `code` - Source code -- `file` - Binary file -- `image` - Image file -- `search` - Saved search -- `render` - Custom HTML rendering -- `relation-map` - Relationship diagram -- `canvas` - Excalidraw drawing -- `mermaid` - Mermaid diagram -- `book` - Container for documentation -- `web-view` - Embedded web page -- `mindmap` - Mind map -- `geomap` - Geographical map - -### Branches Table - -```sql -CREATE TABLE branches ( - branchId TEXT NOT NULL PRIMARY KEY, - noteId TEXT NOT NULL, - parentNoteId TEXT NOT NULL, - notePosition INTEGER NOT NULL, - prefix TEXT, - isExpanded INTEGER NOT NULL DEFAULT 0, - isDeleted INTEGER NOT NULL DEFAULT 0, - deleteId TEXT DEFAULT NULL, - utcDateModified TEXT NOT NULL -); - --- Indexes -CREATE INDEX IDX_branches_noteId_parentNoteId ON branches (noteId, parentNoteId); -CREATE INDEX IDX_branches_parentNoteId ON branches (parentNoteId); -``` - -**Field Descriptions:** - -| Field | Type | Description | -|-------|------|-------------| -| `branchId` | TEXT | Unique identifier for this branch | -| `noteId` | TEXT | Child note ID | -| `parentNoteId` | TEXT | Parent note ID | -| `notePosition` | INT | Sort order among siblings | -| `prefix` | TEXT | Optional prefix text (e.g., "Chapter 1:") | -| `isExpanded` | INT | Tree expansion state | -| `isDeleted` | INT | Soft delete flag | -| `deleteId` | TEXT | Delete operation ID | -| `utcDateModified` | TEXT | Last modified (UTC) | - -**Key Concepts:** -- **Cloning:** A note can have multiple branches (multiple parents) -- **Position:** Siblings ordered by `notePosition` -- **Prefix:** Display text before note title in tree -- **Soft Delete:** Allows sync before permanent deletion - -### Attributes Table - -```sql -CREATE TABLE attributes ( - attributeId TEXT NOT NULL PRIMARY KEY, - noteId TEXT NOT NULL, - type TEXT NOT NULL, - name TEXT NOT NULL, - value TEXT DEFAULT '' NOT NULL, - position INT DEFAULT 0 NOT NULL, - utcDateModified TEXT NOT NULL, - isDeleted INT NOT NULL, - deleteId TEXT DEFAULT NULL, - isInheritable INT DEFAULT 0 NULL -); - --- Indexes -CREATE INDEX IDX_attributes_name_value ON attributes (name, value); -CREATE INDEX IDX_attributes_noteId ON attributes (noteId); -CREATE INDEX IDX_attributes_value ON attributes (value); -``` - -**Field Descriptions:** - -| Field | Type | Description | -|-------|------|-------------| -| `attributeId` | TEXT | Unique identifier | -| `noteId` | TEXT | Note this attribute belongs to | -| `type` | TEXT | 'label' or 'relation' | -| `name` | TEXT | Attribute name | -| `value` | TEXT | Attribute value (text for labels, noteId for relations) | -| `position` | INT | Display order | -| `utcDateModified` | TEXT | Last modified (UTC) | -| `isDeleted` | INT | Soft delete flag | -| `deleteId` | TEXT | Delete operation ID | -| `isInheritable` | INT | Inherited by child notes | - -**Attribute Types:** - -**Labels** (key-value pairs): -```sql --- Example: #priority=high -INSERT INTO attributes (attributeId, noteId, type, name, value) -VALUES ('attr1', 'note123', 'label', 'priority', 'high') -``` - -**Relations** (links to other notes): -```sql --- Example: ~author=[[noteId]] -INSERT INTO attributes (attributeId, noteId, type, name, value) -VALUES ('attr2', 'note123', 'relation', 'author', 'author-note-id') -``` - -**Special Attributes:** -- `#run=frontendStartup` - Execute script on frontend load -- `#run=backendStartup` - Execute script on backend load -- `#customWidget` - Custom widget implementation -- `#iconClass` - Custom tree icon -- `#cssClass` - CSS class for note -- `#sorted` - Auto-sort children -- `#hideChildrenOverview` - Don't show child list - -### Revisions Table - -```sql -CREATE TABLE revisions ( - revisionId TEXT NOT NULL PRIMARY KEY, - noteId TEXT NOT NULL, - type TEXT DEFAULT '' NOT NULL, - mime TEXT DEFAULT '' NOT NULL, - title TEXT NOT NULL, - isProtected INT NOT NULL DEFAULT 0, - blobId TEXT DEFAULT NULL, - utcDateLastEdited TEXT NOT NULL, - utcDateCreated TEXT NOT NULL, - utcDateModified TEXT NOT NULL, - dateLastEdited TEXT NOT NULL, - dateCreated TEXT NOT NULL -); - --- Indexes -CREATE INDEX IDX_revisions_noteId ON revisions (noteId); -CREATE INDEX IDX_revisions_utcDateCreated ON revisions (utcDateCreated); -CREATE INDEX IDX_revisions_utcDateLastEdited ON revisions (utcDateLastEdited); -CREATE INDEX IDX_revisions_blobId ON revisions (blobId); -``` - -**Revision Strategy:** -- Automatic revision created on note modification -- Configurable interval (default: daily max) -- Stores complete note snapshot -- Allows reverting to previous versions -- Can be disabled with `#disableVersioning` - -### Attachments Table - -```sql -CREATE TABLE attachments ( - attachmentId TEXT NOT NULL PRIMARY KEY, - ownerId TEXT NOT NULL, - role TEXT NOT NULL, - mime TEXT NOT NULL, - title TEXT NOT NULL, - isProtected INT NOT NULL DEFAULT 0, - position INT DEFAULT 0 NOT NULL, - blobId TEXT DEFAULT NULL, - dateModified TEXT NOT NULL, - utcDateModified TEXT NOT NULL, - utcDateScheduledForErasureSince TEXT DEFAULT NULL, - isDeleted INT NOT NULL, - deleteId TEXT DEFAULT NULL -); - --- Indexes -CREATE INDEX IDX_attachments_ownerId_role ON attachments (ownerId, role); -CREATE INDEX IDX_attachments_blobId ON attachments (blobId); -``` - -**Attachment Roles:** -- `file` - Regular file attachment -- `image` - Image file -- `cover-image` - Note cover image -- Custom roles for specific purposes - -### Blobs Table - -```sql -CREATE TABLE blobs ( - blobId TEXT NOT NULL PRIMARY KEY, - content TEXT NULL DEFAULT NULL, - dateModified TEXT NOT NULL, - utcDateModified TEXT NOT NULL -); -``` - -**Blob Usage:** -- Stores actual content (text or binary) -- Referenced by notes, revisions, attachments -- Deduplication via hash-based blobId -- TEXT type stores both text and binary (base64) - -**Content Types:** -- **Text notes:** HTML content -- **Code notes:** Plain text source code -- **Binary notes:** Base64 encoded data -- **Protected notes:** Encrypted content - -## System Tables - -### Options Table - -```sql -CREATE TABLE options ( - name TEXT NOT NULL PRIMARY KEY, - value TEXT NOT NULL, - isSynced INTEGER DEFAULT 0 NOT NULL, - utcDateModified TEXT NOT NULL -); -``` - -**Key Options:** -- `documentId` - Unique installation ID -- `dbVersion` - Schema version -- `syncVersion` - Sync protocol version -- `passwordVerificationHash` - Password verification -- `encryptedDataKey` - Encryption key (encrypted) -- `theme` - UI theme -- Various feature flags and settings - -**Synced Options:** -- `isSynced = 1` - Synced across devices -- `isSynced = 0` - Local to this installation - -### Entity Changes Table - -```sql -CREATE TABLE entity_changes ( - id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, - entityName TEXT NOT NULL, - entityId TEXT NOT NULL, - hash TEXT NOT NULL, - isErased INT NOT NULL, - changeId TEXT NOT NULL, - componentId TEXT NOT NULL, - instanceId TEXT NOT NULL, - isSynced INTEGER NOT NULL, - utcDateChanged TEXT NOT NULL -); - --- Indexes -CREATE UNIQUE INDEX IDX_entityChanges_entityName_entityId - ON entity_changes (entityName, entityId); -CREATE INDEX IDX_entity_changes_changeId ON entity_changes (changeId); -``` - -**Purpose:** Track all entity modifications for synchronization - -**Entity Types:** -- `notes` -- `branches` -- `attributes` -- `revisions` -- `attachments` -- `options` -- `etapi_tokens` - -### Recent Notes Table - -```sql -CREATE TABLE recent_notes ( - noteId TEXT NOT NULL PRIMARY KEY, - notePath TEXT NOT NULL, - utcDateCreated TEXT NOT NULL -); -``` - -**Purpose:** Track recently accessed notes for quick access - -### Sessions Table - -```sql -CREATE TABLE sessions ( - sid TEXT PRIMARY KEY, - sess TEXT NOT NULL, - expired TEXT NOT NULL -); -``` - -**Purpose:** HTTP session storage for web interface - -### User Data Table - -```sql -CREATE TABLE user_data ( - tmpID INT PRIMARY KEY, - username TEXT, - email TEXT, - userIDEncryptedDataKey TEXT, - userIDVerificationHash TEXT, - salt TEXT, - derivedKey TEXT, - isSetup TEXT DEFAULT "false" -); -``` - -**Purpose:** Store user authentication credentials - -### ETAPI Tokens Table - -```sql -CREATE TABLE etapi_tokens ( - etapiTokenId TEXT PRIMARY KEY NOT NULL, - name TEXT NOT NULL, - tokenHash TEXT NOT NULL, - utcDateCreated TEXT NOT NULL, - utcDateModified TEXT NOT NULL, - isDeleted INT NOT NULL DEFAULT 0 -); -``` - -**Purpose:** API token authentication for external access - -## Data Relationships - -```mermaid -graph TB - Notes[Notes] - Branches[Branches] - Attributes[Attributes] - Attachments[Attachments] - Blobs[(Blobs)] - Revisions[Revisions] - - Notes --> Branches - Notes --> Attributes - Notes --> Attachments - Notes --> Blobs - Notes --> Revisions - - Branches --> Blobs - Attachments --> Blobs - Revisions --> Blobs - - style Notes fill:#e1f5ff - style Blobs fill:#ffe1e1 -``` - -**Relationships:** -- Notes ↔ Branches (many-to-many via noteId) -- Notes → Attributes (one-to-many) -- Notes → Blobs (one-to-one) -- Notes → Revisions (one-to-many) -- Notes → Attachments (one-to-many) -- Attachments → Blobs (one-to-one) -- Revisions → Blobs (one-to-one) - -## Database Access Patterns - -### Direct SQL Access - -**Location:** `apps/server/src/services/sql.ts` - -```typescript -// Execute query (returns rows) -const notes = sql.getRows('SELECT * FROM notes WHERE type = ?', ['text']) - -// Execute query (returns single row) -const note = sql.getRow('SELECT * FROM notes WHERE noteId = ?', [noteId]) - -// Execute statement (no return) -sql.execute('UPDATE notes SET title = ? WHERE noteId = ?', [title, noteId]) - -// Insert -sql.insert('notes', { - noteId: 'new-note-id', - title: 'New Note', - type: 'text', - // ... -}) - -// Transactions -sql.transactional(() => { - sql.execute('UPDATE ...') - sql.execute('INSERT ...') -}) -``` - -### Entity-Based Access (Recommended) - -**Via Becca Cache:** - -```typescript -// Get entity from cache -const note = becca.getNote(noteId) - -// Modify and save -note.title = 'Updated Title' -note.save() // Writes to database - -// Create new -const newNote = becca.createNote({ - parentNoteId: 'root', - title: 'New Note', - type: 'text', - content: 'Hello World' -}) - -// Delete -note.markAsDeleted() -``` - -## Database Migrations - -**Location:** `apps/server/src/migrations/` - -**Migration Files:** -- Format: `XXXX_migration_name.sql` or `XXXX_migration_name.js` -- Executed in numerical order -- Version tracked in `options.dbVersion` - -**SQL Migration Example:** -```sql --- 0280_add_new_column.sql -ALTER TABLE notes ADD COLUMN newField TEXT DEFAULT NULL; - -UPDATE options SET value = '280' WHERE name = 'dbVersion'; -``` - -**JavaScript Migration Example:** -```javascript -// 0285_complex_migration.js -module.exports = () => { - const notes = sql.getRows('SELECT * FROM notes WHERE type = ?', ['old-type']) - - for (const note of notes) { - sql.execute('UPDATE notes SET type = ? WHERE noteId = ?', - ['new-type', note.noteId]) - } -} -``` - -**Migration Process:** -1. Server checks `dbVersion` on startup -2. Compares with latest migration number -3. Executes pending migrations in order -4. Updates `dbVersion` after each -5. Restarts if migrations ran - -## Database Maintenance - -### Backup - -**Full Backup:** -```bash -# Copy database file -cp document.db document.db.backup - -# Or use Trilium's backup feature -# Settings → Backup -``` - -**Automatic Backups:** -- Daily backup (configurable) -- Stored in `backup/` directory -- Retention policy (keep last N backups) - -### Vacuum - -**Purpose:** Reclaim unused space, defragment - -```sql -VACUUM; -``` - -**When to vacuum:** -- After deleting many notes -- Database file size larger than expected -- Performance degradation - -### Integrity Check - -```sql -PRAGMA integrity_check; -``` - -**Result:** "ok" or list of errors - -### Consistency Checks - -**Built-in Consistency Checks:** - -Location: `apps/server/src/services/consistency_checks.ts` - -- Orphaned branches -- Missing parent notes -- Circular dependencies -- Invalid entity references -- Blob reference integrity - -**Run Checks:** -```typescript -// Via API -POST /api/consistency-check - -// Or from backend script -api.runConsistencyChecks() -``` - -## Performance Optimization - -### Indexes - -**Existing Indexes:** -- `notes.title` - Fast title searches -- `notes.type` - Filter by type -- `notes.dateCreated/Modified` - Time-based queries -- `branches.noteId_parentNoteId` - Tree navigation -- `attributes.name_value` - Attribute searches - -**Query Optimization:** -```sql --- Use indexed columns in WHERE clause -SELECT * FROM notes WHERE type = 'text' -- Uses index - --- Avoid functions on indexed columns -SELECT * FROM notes WHERE LOWER(title) = 'test' -- No index - --- Better -SELECT * FROM notes WHERE title = 'Test' -- Uses index -``` - -### Connection Settings - -```typescript -// apps/server/src/services/sql.ts -const db = new Database('document.db', { - // Enable WAL mode for better concurrency - verbose: console.log -}) - -db.pragma('journal_mode = WAL') -db.pragma('synchronous = NORMAL') -db.pragma('cache_size = -64000') // 64MB cache -db.pragma('temp_store = MEMORY') -``` - -**WAL Mode Benefits:** -- Better concurrency (readers don't block writers) -- Faster commits -- More robust - -### Query Performance - -**Use EXPLAIN QUERY PLAN:** -```sql -EXPLAIN QUERY PLAN -SELECT * FROM notes -WHERE type = 'text' - AND dateCreated > '2025-01-01' -``` - -**Analyze slow queries:** -- Check index usage -- Avoid SELECT * -- Use prepared statements -- Batch operations in transactions - -## Database Size Management - -**Typical Sizes:** -- 1,000 notes: ~5-10 MB -- 10,000 notes: ~50-100 MB -- 100,000 notes: ~500 MB - 1 GB - -**Size Reduction Strategies:** - -1. **Delete old revisions** -2. **Remove large attachments** -3. **Vacuum database** -4. **Compact blobs** -5. **Archive old notes** - -**Blob Deduplication:** -- Blobs identified by content hash -- Identical content shares one blob -- Automatic deduplication on insert - -## Security Considerations - -### Protected Notes Encryption - -**Encryption Process:** -```typescript -// Encrypt blob content -const encryptedContent = encrypt(content, dataKey) -blob.content = encryptedContent - -// Store encrypted -sql.insert('blobs', { blobId, content: encryptedContent }) -``` - -**Encryption Details:** -- Algorithm: AES-256-CBC -- Key derivation: PBKDF2 (10,000 iterations) -- Per-note encryption -- Master key encrypted with user password - -### SQL Injection Prevention - -**Always use parameterized queries:** -```typescript -// GOOD - Safe from SQL injection -sql.execute('SELECT * FROM notes WHERE title = ?', [userInput]) - -// BAD - Vulnerable to SQL injection -sql.execute(`SELECT * FROM notes WHERE title = '${userInput}'`) -``` - -### Database File Protection - -**File Permissions:** -- Owner read/write only -- No group/other access -- Located in user-specific directory - ---- - -**See Also:** -- [ARCHITECTURE.md](ARCHITECTURE.md) - Overall architecture -- [Database Schema Files](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Database/) -- [Migration Scripts](../apps/server/src/migrations/) diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index f19dbc16a..397bdcab4 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -172,64 +172,57 @@ "children": [ { "isClone": false, - "noteId": "2DJZgzpTJ078", + "noteId": "dsMq2EIOMOBU", "notePath": [ "jdjRLhLV3TtI", "MhwWMgxwDTZL", - "2DJZgzpTJ078" + "dsMq2EIOMOBU" ], - "title": "Client-server architecture", + "title": "Frontend", "notePosition": 10, "prefix": null, "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Client-server architecture", - "children": [ + "attributes": [ { - "isClone": false, - "noteId": "dsMq2EIOMOBU", - "notePath": [ - "jdjRLhLV3TtI", - "MhwWMgxwDTZL", - "2DJZgzpTJ078", - "dsMq2EIOMOBU" - ], - "title": "Frontend", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Frontend.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "tsswRlmHEnYW", - "notePath": [ - "jdjRLhLV3TtI", - "MhwWMgxwDTZL", - "2DJZgzpTJ078", - "tsswRlmHEnYW" - ], - "title": "Backend", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Backend.md", - "attachments": [] + "type": "label", + "name": "shareAlias", + "value": "frontend", + "isInheritable": false, + "position": 20 } - ] + ], + "format": "markdown", + "dataFileName": "Frontend.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "tsswRlmHEnYW", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "tsswRlmHEnYW" + ], + "title": "Backend", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "backend", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "Backend.md", + "attachments": [] }, { "isClone": false, @@ -240,7 +233,7 @@ "pRZhrVIGCbMu" ], "title": "Database", - "notePosition": 20, + "notePosition": 40, "prefix": null, "isExpanded": false, "type": "text", @@ -785,15 +778,23 @@ "MhwWMgxwDTZL", "Wxn82Em8B7U5" ], - "title": "API", - "notePosition": 30, + "title": "APIs", + "notePosition": 50, "prefix": null, "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "api", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", - "dataFileName": "API.md", + "dataFileName": "APIs.md", "attachments": [] }, { @@ -805,7 +806,7 @@ "Vk4zD1Iirarg" ], "title": "Arhitecture Decision Records", - "notePosition": 40, + "notePosition": 60, "prefix": null, "isExpanded": false, "type": "text", @@ -817,6 +818,13 @@ "value": "Jg7clqogFOyD", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "adr", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -825,14 +833,14 @@ }, { "isClone": false, - "noteId": "QW1MB7RZB5Gf", + "noteId": "RHbKw3xiwk3S", "notePath": [ "jdjRLhLV3TtI", "MhwWMgxwDTZL", - "QW1MB7RZB5Gf" + "RHbKw3xiwk3S" ], - "title": "Security Architecture", - "notePosition": 50, + "title": "Security", + "notePosition": 80, "prefix": null, "isExpanded": false, "type": "text", @@ -841,13 +849,13 @@ { "type": "label", "name": "shareAlias", - "value": "security-architecture", + "value": "security", "isInheritable": false, "position": 20 } ], "format": "markdown", - "dataFileName": "Security Architecture.md", + "dataFileName": "Security.md", "attachments": [] } ] @@ -1153,6 +1161,13 @@ "value": "bx bx-rocket", "isInheritable": false, "position": 30 + }, + { + "type": "label", + "name": "shareAlias", + "value": "releasing", + "isInheritable": false, + "position": 40 } ], "format": "markdown", @@ -1181,6 +1196,13 @@ "value": "bx bxs-component", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "dependencies", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -1527,6 +1549,13 @@ "value": "bx bx-microchip", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "cache", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -2001,7 +2030,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "note-types", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "attachments": [], "dirFileName": "Note Types", @@ -2547,6 +2584,7 @@ } ], "format": "markdown", + "dataFileName": "Synchronisation.md", "attachments": [], "dirFileName": "Synchronisation", "children": [ @@ -2794,7 +2832,15 @@ "isExpanded": false, "type": "text", "mime": "text/html", - "attributes": [], + "attributes": [ + { + "type": "label", + "name": "shareAlias", + "value": "unit-tests", + "isInheritable": false, + "position": 20 + } + ], "format": "markdown", "dataFileName": "Unit tests.md", "attachments": [] diff --git a/docs/Developer Guide/Developer Guide/Architecture.md b/docs/Developer Guide/Developer Guide/Architecture.md index 48a91fcde..66cb82eea 100644 --- a/docs/Developer Guide/Developer Guide/Architecture.md +++ b/docs/Developer Guide/Developer Guide/Architecture.md @@ -118,4 +118,85 @@ desktop → client → commons server → client → commons client → ckeditor5, codemirror, highlightjs ckeditor5 → ckeditor5-* plugins -``` \ No newline at end of file +``` + +## Security summary + +### Encryption System + +**Per-Note Encryption:** + +* Notes can be individually protected +* AES-128-CBC encryption for encrypted notes. +* Separate protected session management + +**Protected Session:** + +* Time-limited access to protected notes +* Automatic timeout +* Re-authentication required +* Frontend: `protected_session.ts` +* Backend: `protected_session.ts` + +### Authentication + +**Password Auth:** + +* PBKDF2 key derivation +* Salt per installation +* Hash verification + +**OpenID Connect:** + +* External identity provider support +* OAuth 2.0 flow +* Configurable providers + +**TOTP (2FA):** + +* Time-based one-time passwords +* QR code setup +* Backup codes + +### Authorization + +**Single-User Model:** + +* Desktop: single user (owner) +* Server: single user per installation + +**Share Notes:** + +* Public access without authentication +* Separate Shaca cache +* Read-only access + +### CSRF Protection + +**CSRF Tokens:** + +* Required for state-changing operations +* Token in header or cookie +* Validation middleware + +### Input Sanitization + +**XSS Prevention:** + +* DOMPurify for HTML sanitization +* CKEditor content filtering +* CSP headers + +**SQL Injection:** + +* Parameterized queries only +* Better-sqlite3 prepared statements +* No string concatenation in SQL + +### Dependency Security + +**Vulnerability Scanning:** + +* Renovate bot for updates +* npm audit integration +* Override vulnerable sub-dependencies \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/API.md b/docs/Developer Guide/Developer Guide/Architecture/APIs.md similarity index 99% rename from docs/Developer Guide/Developer Guide/Architecture/API.md rename to docs/Developer Guide/Developer Guide/Architecture/APIs.md index 92f6fb813..cdd954a61 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/API.md +++ b/docs/Developer Guide/Developer Guide/Architecture/APIs.md @@ -1,4 +1,4 @@ -# API +# APIs ### Internal API **REST Endpoints** (`/api/*`) diff --git a/docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Backend.md b/docs/Developer Guide/Developer Guide/Architecture/Backend.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Backend.md rename to docs/Developer Guide/Developer Guide/Architecture/Backend.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database.md b/docs/Developer Guide/Developer Guide/Architecture/Database.md index bb80ccdb1..b8836b56d 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database.md @@ -1,5 +1,5 @@ # Database -Trilium uses **SQLite** as its database engine, managed via `better-sqlite3`. +Trilium uses **SQLite** (via `better-sqlite3`) as its embedded database engine, providing a reliable, file-based storage system that requires no separate database server. The database stores all notes, their relationships, metadata, and configuration. Schema location: `apps/server/src/assets/db/schema.sql` diff --git a/docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Frontend.md b/docs/Developer Guide/Developer Guide/Architecture/Frontend.md similarity index 100% rename from docs/Developer Guide/Developer Guide/Architecture/Client-server architecture/Frontend.md rename to docs/Developer Guide/Developer Guide/Architecture/Frontend.md diff --git a/docs/Developer Guide/Developer Guide/Architecture/Security Architecture.md b/docs/Developer Guide/Developer Guide/Architecture/Security Architecture.md deleted file mode 100644 index ab0c88c06..000000000 --- a/docs/Developer Guide/Developer Guide/Architecture/Security Architecture.md +++ /dev/null @@ -1,79 +0,0 @@ -# Security Architecture -### Encryption System - -**Per-Note Encryption:** - -* Notes can be individually protected -* AES-128-CBC encryption for encrypted notes. -* Separate protected session management - -**Protected Session:** - -* Time-limited access to protected notes -* Automatic timeout -* Re-authentication required -* Frontend: `protected_session.ts` -* Backend: `protected_session.ts` - -### Authentication - -**Password Auth:** - -* PBKDF2 key derivation -* Salt per installation -* Hash verification - -**OpenID Connect:** - -* External identity provider support -* OAuth 2.0 flow -* Configurable providers - -**TOTP (2FA):** - -* Time-based one-time passwords -* QR code setup -* Backup codes - -### Authorization - -**Single-User Model:** - -* Desktop: single user (owner) -* Server: single user per installation - -**Share Notes:** - -* Public access without authentication -* Separate Shaca cache -* Read-only access - -### CSRF Protection - -**CSRF Tokens:** - -* Required for state-changing operations -* Token in header or cookie -* Validation middleware - -### Input Sanitization - -**XSS Prevention:** - -* DOMPurify for HTML sanitization -* CKEditor content filtering -* CSP headers - -**SQL Injection:** - -* Parameterized queries only -* Better-sqlite3 prepared statements -* No string concatenation in SQL - -### Dependency Security - -**Vulnerability Scanning:** - -* Renovate bot for updates -* npm audit integration -* Override vulnerable sub-dependencies \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Security.md b/docs/Developer Guide/Developer Guide/Architecture/Security.md new file mode 100644 index 000000000..61fdc7377 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Security.md @@ -0,0 +1,464 @@ +# Security +Trilium implements a **defense-in-depth security model** with multiple layers of protection for user data. The security architecture covers authentication, authorization, encryption, input sanitization, and secure communication. + +## Security Principles + +1. **Data Privacy**: User data is protected at rest and in transit +2. **Encryption**: Per-note encryption for sensitive content +3. **Authentication**: Multiple authentication methods supported +4. **Authorization**: Single-user model with granular protected sessions +5. **Input Validation**: All user input sanitized +6. **Secure Defaults**: Security features enabled by default +7. **Transparency**: Open source allows security audits + +## Threat Model + +### Threats Considered + +1. **Unauthorized Access** + * Physical access to device + * Network eavesdropping + * Stolen credentials + * Session hijacking +2. **Data Exfiltration** + * Malicious scripts + * XSS attacks + * SQL injection + * CSRF attacks +3. **Data Corruption** + * Malicious modifications + * Database tampering + * Sync conflicts +4. **Privacy Leaks** + * Unencrypted backups + * Search indexing + * Temporary files + * Memory dumps + +### Out of Scope + +* Nation-state attackers +* Zero-day vulnerabilities in dependencies +* Hardware vulnerabilities (Spectre, Meltdown) +* Physical access with unlimited time +* Quantum computing attacks + +## Authentication + +### Password Authentication + +**Implementation:** `apps/server/src/services/password.ts` + +### TOTP (Two-Factor Authentication) + +**Implementation:** `apps/server/src/routes/api/login.ts` + +### OpenID Connect + +**Implementation:** `apps/server/src/routes/api/login.ts` + +**Supported Providers:** + +* Any OpenID Connect compatible provider +* Google, GitHub, Auth0, etc. + +**Flow:** + +```typescript +// 1. Redirect to provider +GET /api/login/openid + +// 2. Provider redirects back with code +GET /api/login/openid/callback?code=... + +// 3. Exchange code for tokens +const tokens = await openidClient.callback(redirectUri, req.query) + +// 4. Verify ID token +const claims = tokens.claims() + +// 5. Create session +req.session.loggedIn = true +``` + +### Session Management + +**Session Storage:** SQLite database (sessions table) + +**Session Configuration:** + +```typescript +app.use(session({ + secret: sessionSecret, + resave: false, + saveUninitialized: false, + rolling: true, + cookie: { + maxAge: 7 * 24 * 60 * 60 * 1000, // 7 days + httpOnly: true, + secure: isHttps, + sameSite: 'lax' + }, + store: new SqliteStore({ + db: db, + table: 'sessions' + }) +})) +``` + +**Session Invalidation:** + +* Automatic timeout after inactivity +* Manual logout clears session +* Server restart invalidates all sessions (optional) + +## Authorization + +### Single-User Model + +**Desktop:** + +* Single user (owner of device) +* No multi-user support +* Full access to all notes + +**Server:** + +* Single user per installation +* Authentication required for all operations +* No user roles or permissions + +### Protected Sessions + +**Purpose:** Temporary access to encrypted (protected) notes + +**Implementation:** `apps/server/src/services/protected_session.ts` + +**Workflow:** + +```typescript +// 1. User enters password for protected notes +POST /api/protected-session/enter +Body: { password: "protected-password" } + +// 2. Derive encryption key +const protectedDataKey = deriveKey(password) + +// 3. Verify password (decrypt known encrypted value) +const decrypted = decrypt(testValue, protectedDataKey) +if (decrypted === expectedValue) { + // 4. Store in memory (not in session) + protectedSessionHolder.setProtectedDataKey(protectedDataKey) + + // 5. Set timeout + setTimeout(() => { + protectedSessionHolder.clearProtectedDataKey() + }, timeout) +} +``` + +**Protected Session Timeout:** + +* Default: 10 minutes (configurable) +* Extends on activity +* Cleared on browser close +* Separate from main session + +### API Authorization + +**Internal API:** + +* Requires authenticated session +* CSRF token validation +* Same-origin policy + +**ETAPI (External API):** + +* Token-based authentication +* No session required +* Rate limiting + +## Encryption + +### Note Encryption + +**Encryption Algorithm:** AES-256-CBC + +**Key Hierarchy:** + +``` +User Password + ↓ (scrypt) +Data Key (for protected notes) + ↓ (AES-128) +Protected Note Content +``` + +**Protected Note Metadata:** + +* Content IS encrypted +* Type and MIME are NOT encrypted +* Attributes are NOT encrypted + +### Data Key Management + +**Key Rotation:** + +* Not currently supported +* Requires re-encrypting all protected notes + +### Transport Encryption + +**HTTPS:** + +* Recommended for server installations +* TLS 1.2+ only +* Strong cipher suites preferred +* Certificate validation enabled + +**Desktop:** + +* Local communication (no network) +* No HTTPS required + +### Backup Encryption + +**Database Backups:** + +* Protected notes remain encrypted in backup +* Backup file should be protected separately +* Consider encrypting backup storage location + +## Input Sanitization + +### XSS Prevention + +* **HTML Sanitization** +* **CKEditor Configuration:** + + ``` + // apps/client/src/widgets/type_widgets/text_type_widget.ts + ClassicEditor.create(element, { + // Restrict allowed content + htmlSupport: { + allow: [ + { name: /./, attributes: true, classes: true, styles: true } + ], + disallow: [ + { name: 'script' }, + { name: 'iframe', attributes: /^(?!src$).*/ } + ] + } + }) + ``` +* Content Security Policy + +### SQL Injection Prevention + +**Parameterized Queries:** + +```typescript +const notes = sql.getRows( + 'SELECT * FROM notes WHERE title = ?', + [userInput] +) +``` + +**ORM Usage:** + +```typescript +// Entity-based access prevents SQL injection +const note = becca.getNote(noteId) +note.title = userInput // Sanitized by entity +note.save() // Parameterized query +``` + +### CSRF Prevention + +**CSRF Token Validation:** + +Location: `apps/server/src/routes/csrf_protection.ts` + +Stateless CSRF using [Double Submit Cookie Pattern](https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html#double-submit-cookie) via [`csrf-csrf`](https://github.com/Psifi-Solutions/csrf-csrf). + +### File Upload Validation + +**Validation:** + +```typescript +// Validate file size +const maxSize = 100 * 1024 * 1024 // 100 MB +if (file.size > maxSize) { + throw new Error('File too large') +} +``` + +## Network Security + +### HTTPS Configuration + +**Certificate Validation:** + +* Require valid certificates in production +* Self-signed certificates allowed for development +* Certificate pinning not implemented + +### Rate Limiting + +**Login Rate Limiting:** + +```typescript +const loginLimiter = rateLimit({ + windowMs: 15 * 60 * 1000, + max: 10, // 10 failed attempts + skipSuccessfulRequests: true +}) + +app.post('/api/login/password', loginLimiter, loginHandler) +``` + +## Data Security + +### Secure Data Deletion + +**Soft Delete:** + +```typescript +// Mark as deleted (sync first) +note.isDeleted = 1 +note.deleteId = generateUUID() +note.save() + +// Entity change tracked for sync +addEntityChange('notes', noteId, note) +``` + +**Hard Delete (Erase):** + +```typescript +// After sync completed +sql.execute('DELETE FROM notes WHERE noteId = ?', [noteId]) +sql.execute('DELETE FROM branches WHERE noteId = ?', [noteId]) +sql.execute('DELETE FROM attributes WHERE noteId = ?', [noteId]) + +// Mark entity change as erased +sql.execute('UPDATE entity_changes SET isErased = 1 WHERE entityId = ?', [noteId]) +``` + +**Blob Cleanup:** + +```typescript +// Find orphaned blobs (not referenced by any note/revision/attachment) +const orphanedBlobs = sql.getRows(` + SELECT blobId FROM blobs + WHERE blobId NOT IN (SELECT blobId FROM notes WHERE blobId IS NOT NULL) + AND blobId NOT IN (SELECT blobId FROM revisions WHERE blobId IS NOT NULL) + AND blobId NOT IN (SELECT blobId FROM attachments WHERE blobId IS NOT NULL) +`) + +// Delete orphaned blobs +for (const blob of orphanedBlobs) { + sql.execute('DELETE FROM blobs WHERE blobId = ?', [blob.blobId]) +} +``` + +### Memory Security + +**Protected Data in Memory:** + +* Protected data keys stored in memory only +* Cleared on timeout +* Not written to disk +* Not in session storage + +## Dependency Security + +### Vulnerability Scanning + +**Tools:** + +* Renovate bot - Automatic dependency updates +* `pnpm audit` - Check for known vulnerabilities +* GitHub Dependabot alerts + +**Process:** + +```sh +# Check for vulnerabilities +npm audit + +# Fix automatically +npm audit fix + +# Manual review for breaking changes +npm audit fix --force +``` + +### Dependency Pinning + +**package.json:** + +``` +{ + "dependencies": { + "express": "4.18.2", // Exact version + "better-sqlite3": "^9.2.2" // Compatible versions + } +} +``` + +**pnpm Overrides:** + +``` +{ + "pnpm": { + "overrides": { + "lodash@<4.17.21": ">=4.17.21", // Force minimum version + "axios@<0.21.2": ">=0.21.2" + } + } +} +``` + +### Patch Management + +**pnpm Patches:** + +```sh +# Create patch +pnpm patch @ckeditor/ckeditor5 + +# Edit files in temporary directory +# ... + +# Generate patch file +pnpm patch-commit /tmp/ckeditor5-patch + +# Patch applied automatically on install +``` + +## Security Auditing + +### Logs + +**Security Events Logged:** + +* Login attempts (success/failure) +* Protected session access +* Password changes +* ETAPI token usage +* Failed CSRF validations + +**Log Location:** + +* Desktop: Console output +* Server: Log files or stdout + +### Monitoring + +**Metrics to Monitor:** + +* Failed login attempts +* API error rates +* Unusual database changes +* Large exports/imports \ No newline at end of file diff --git a/docs/SYNCHRONIZATION.md b/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md similarity index 52% rename from docs/SYNCHRONIZATION.md rename to docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md index 0945e533a..f97bd3c4e 100644 --- a/docs/SYNCHRONIZATION.md +++ b/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md @@ -1,16 +1,11 @@ -# Trilium Synchronization Architecture +# Synchronisation +Trilium implements a **bidirectional synchronization system** that allows users to sync their note databases across multiple devices (desktop clients and server instances). The sync protocol is designed to handle: -> **Related:** [ARCHITECTURE.md](ARCHITECTURE.md) | [User Guide: Synchronization](https://triliumnext.github.io/Docs/Wiki/synchronization) - -## Overview - -Trilium implements a sophisticated **bidirectional synchronization system** that allows users to sync their note databases across multiple devices (desktop clients and server instances). The sync protocol is designed to handle: - -- Concurrent modifications across devices -- Conflict resolution -- Partial sync (only changed entities) -- Protected note synchronization -- Efficient bandwidth usage +* Concurrent modifications across devices +* Simple conflict resolution (without “merge conflict” indication). +* Partial sync (only changed entities) +* Protected note synchronization +* Efficient bandwidth usage ## Sync Architecture @@ -35,7 +30,7 @@ graph TB Every modification to any entity (note, branch, attribute, etc.) creates an **entity change** record: -```sql +``` entity_changes ( id, -- Auto-increment ID entityName, -- 'notes', 'branches', 'attributes', etc. @@ -43,7 +38,7 @@ entity_changes ( hash, -- Content hash for integrity isErased, -- If entity was erased (deleted permanently) changeId, -- Unique change identifier - componentId, -- Installation identifier + componentId, -- Unique component/widget identifier instanceId, -- Process instance identifier isSynced, -- Whether synced to server utcDateChanged -- When change occurred @@ -51,17 +46,19 @@ entity_changes ( ``` **Key Properties:** -- **changeId**: Globally unique identifier (UUID) for the change -- **componentId**: Unique per Trilium installation (persists across restarts) -- **instanceId**: Unique per process (changes on restart) -- **hash**: SHA-256 hash of entity data for integrity verification + +* **changeId**: Globally unique identifier (UUID) for the change +* **componentId**: Unique identifier of the component/widget that generated to change (can be used to avoid refreshing the widget being edited). +* **instanceId**: Unique per process (changes on restart) +* **hash**: SHA-256 hash of entity data for integrity verification ### Sync Versions Each Trilium installation tracks: -- **Local sync version**: Highest change ID seen locally -- **Server sync version**: Highest change ID on server -- **Entity versions**: Last sync version for each entity type + +* **Local sync version**: Highest change ID seen locally +* **Server sync version**: Highest change ID on server +* **Entity versions**: Last sync version for each entity type ### Change Tracking @@ -87,11 +84,12 @@ function addEntityChange(entityName, entityId, entity) { ``` **Entity modification triggers:** -- Note content update -- Note metadata change -- Branch creation/deletion/reorder -- Attribute addition/removal -- Options modification + +* Note content update +* Note metadata change +* Branch creation/deletion/reorder +* Attribute addition/removal +* Options modification ## Sync Protocol @@ -122,9 +120,9 @@ Response: **Step 3: Decision** -- If `entityChanges > 0`: Pull changes from server -- If `outstandingPushCount > 0`: Push changes to server -- Both can happen in sequence +* If `entityChanges > 0`: Pull changes from server +* If `outstandingPushCount > 0`: Push changes to server +* Both can happen in sequence ### Pull Sync (Server → Client) @@ -159,10 +157,10 @@ Response: **Client Processing:** -1. Apply entity changes to local database -2. Update Froca cache -3. Update local sync version -4. Trigger UI refresh +1. Apply entity changes to local database +2. Update Froca cache +3. Update local sync version +4. Trigger UI refresh ### Push Sync (Client → Server) @@ -191,12 +189,12 @@ POST /api/sync/push **Server Processing:** -1. Validate changes -2. Check for conflicts -3. Apply changes to database -4. Update Becca cache -5. Mark as synced -6. Broadcast to other connected clients via WebSocket +1. Validate changes +2. Check for conflicts +3. Apply changes to database +4. Update Becca cache +5. Mark as synced +6. Broadcast to other connected clients via WebSocket **Conflict Detection:** @@ -215,21 +213,25 @@ if (serverLastModified > clientSyncVersion) { ### Conflict Types -**1. Content Conflict** -- Both client and server modified same note content -- **Resolution**: Last-write-wins based on `utcDateModified` +**1\. Content Conflict** -**2. Structure Conflict** -- Branch moved/deleted on one side, modified on other -- **Resolution**: Tombstone records, reconciliation +* Both client and server modified same note content +* **Resolution**: Last-write-wins based on `utcDateModified` -**3. Attribute Conflict** -- Same attribute modified differently -- **Resolution**: Last-write-wins +**2\. Structure Conflict** + +* Branch moved/deleted on one side, modified on other +* **Resolution**: Tombstone records, reconciliation + +**3\. Attribute Conflict** + +* Same attribute modified differently +* **Resolution**: Last-write-wins ### Conflict Resolution Strategy **Last-Write-Wins:** + ```typescript if (clientEntity.utcDateModified > serverEntity.utcDateModified) { // Client wins, apply client changes @@ -241,9 +243,10 @@ if (clientEntity.utcDateModified > serverEntity.utcDateModified) { ``` **Tombstone Records:** -- Deleted entities leave tombstone in `entity_changes` -- Prevents re-sync of deleted items -- `isErased = 1` for permanent deletions + +* Deleted entities leave tombstone in `entity_changes` +* Prevents re-sync of deleted items +* `isErased = 1` for permanent deletions ### Protected Notes Sync @@ -251,43 +254,26 @@ if (clientEntity.utcDateModified > serverEntity.utcDateModified) { **Solution:** -1. **Protected session required**: User must unlock protected notes -2. **Encrypted sync**: Content synced in encrypted form -3. **Hash verification**: Integrity checked without decryption -4. **Lazy decryption**: Only decrypt when accessed - -**Sync Flow:** - -```typescript -// Client side -if (note.isProtected && !protectedSessionHolder.isProtectedSessionAvailable()) { - // Skip protected notes if session not active - continue -} - -// Server side -if (note.isProtected) { - // Sync encrypted blob - // Don't decrypt for sync - syncEncryptedBlob(note.blobId) -} -``` +1. **Encrypted sync**: Content synced in encrypted form +2. **Hash verification**: Integrity checked without decryption +3. **Lazy decryption**: Only decrypt when accessed ## Sync States ### Connection States -- **Connected**: WebSocket connection active -- **Disconnected**: No connection to sync server -- **Syncing**: Actively transferring data -- **Conflict**: Sync paused due to conflict +* **Connected**: WebSocket connection active +* **Disconnected**: No connection to sync server +* **Syncing**: Actively transferring data +* **Conflict**: Sync paused due to conflict ### Entity Sync States Each entity can be in: -- **Synced**: In sync with server -- **Pending**: Local changes not yet pushed -- **Conflict**: Conflicting changes detected + +* **Synced**: In sync with server +* **Pending**: Local changes not yet pushed +* **Conflict**: Conflicting changes detected ### UI Indicators @@ -299,8 +285,6 @@ class SyncStatusWidget { showIcon('synced') } else if (isSyncing) { showIcon('syncing-spinner') - } else if (hasConflicts) { - showIcon('conflict-warning') } else { showIcon('not-synced') } @@ -314,7 +298,7 @@ class SyncStatusWidget { Only entities changed since last sync are transferred: -```sql +``` SELECT * FROM entity_changes WHERE id > :lastSyncedChangeId ORDER BY id ASC @@ -357,26 +341,12 @@ res.send(gzip(syncData)) ### Network Errors -**Retry Strategy:** -```typescript -const RETRY_DELAYS = [1000, 2000, 5000, 10000, 30000] - -async function syncWithRetry(attempt = 0) { - try { - await performSync() - } catch (error) { - if (attempt < RETRY_DELAYS.length) { - setTimeout(() => { - syncWithRetry(attempt + 1) - }, RETRY_DELAYS[attempt]) - } - } -} -``` +Reported to the user and the sync will be retried after the interval passes. ### Sync Integrity Checks **Hash Verification:** + ```typescript // Verify entity hash matches const calculatedHash = calculateHash(entity) @@ -388,16 +358,18 @@ if (calculatedHash !== receivedHash) { ``` **Consistency Checks:** -- Orphaned branches detection -- Missing parent notes -- Invalid entity references -- Circular dependencies + +* Orphaned branches detection +* Missing parent notes +* Invalid entity references +* Circular dependencies ## Sync Server Configuration ### Server Setup **Required Options:** + ```javascript { "syncServerHost": "https://sync.example.com", @@ -407,59 +379,26 @@ if (calculatedHash !== receivedHash) { ``` **Authentication:** -- Username/password or -- Sync token (generated on server) -### Client Setup - -**Desktop Client:** -```javascript -// Settings → Sync -{ - "syncServerHost": "https://sync.example.com", - "username": "user@example.com", - "password": "********" -} -``` - -**Test Connection:** -```typescript -POST /api/sync/test -Response: { "success": true } -``` +* Username/password or +* Sync token (generated on server) ## Sync API Endpoints Located at: `apps/server/src/routes/api/sync.ts` -**Endpoints:** - -- `POST /api/sync/check` - Check sync status -- `POST /api/sync/pull` - Pull changes from server -- `POST /api/sync/push` - Push changes to server -- `POST /api/sync/finished` - Mark sync complete -- `POST /api/sync/test` - Test connection -- `GET /api/sync/stats` - Sync statistics - ## WebSocket Sync Updates Real-time sync via WebSocket: ```typescript // Server broadcasts change to all connected clients -ws.broadcast('entity-change', { - entityName: 'notes', - entityId: 'abc123', - changeId: 'change-uuid', - sourceId: 'originating-component-id' +ws.broadcast('frontend-update', { + lastSyncedPush, + entityChanges }) -// Client receives and applies -ws.on('entity-change', (data) => { - if (data.sourceId !== myComponentId) { - froca.processEntityChange(data) - } -}) +// Client receives and processed the information. ``` ## Sync Scheduling @@ -467,107 +406,79 @@ ws.on('entity-change', (data) => { ### Automatic Sync **Desktop:** -- Sync on startup -- Periodic sync (configurable interval, default: 60s) -- Sync before shutdown + +* Sync on startup +* Periodic sync (configurable interval, default: 60s) **Server:** -- Sync on entity modification -- WebSocket push to connected clients + +* Sync on entity modification +* WebSocket push to connected clients ### Manual Sync User can trigger: -- Full sync -- Sync now -- Sync specific subtree + +* Full sync +* Sync now +* Sync specific subtree ## Troubleshooting ### Common Issues **Sync stuck:** -```sql + +``` -- Reset sync state UPDATE entity_changes SET isSynced = 0; DELETE FROM options WHERE name LIKE 'sync%'; ``` **Hash mismatch:** -- Data corruption detected -- Re-sync from backup -- Check database integrity + +* Data corruption detected +* Re-sync from backup +* Check database integrity **Conflict loop:** -- Manual intervention required -- Export conflicting notes -- Choose winning version -- Re-sync -### Sync Diagnostics - -**Check sync status:** -```typescript -GET /api/sync/stats -Response: { - "unsyncedChanges": 0, - "lastSyncDate": "2025-11-02T12:00:00Z", - "syncVersion": 12890 -} -``` - -**Entity change log:** -```sql -SELECT * FROM entity_changes -WHERE isSynced = 0 -ORDER BY id DESC; -``` +* Manual intervention required +* Export conflicting notes +* Choose winning version +* Re-sync ## Security Considerations ### Encrypted Sync -- Protected notes synced encrypted -- No plain text over network -- Server cannot read protected content +* Protected notes synced encrypted +* No plain text over network +* Server cannot read protected content ### Authentication -- Username/password over HTTPS only -- Sync tokens for token-based auth -- Session cookies with CSRF protection +* Username/password over HTTPS only +* Sync tokens for token-based auth +* Session cookies with CSRF protection ### Authorization -- Users can only sync their own data -- No cross-user sync support -- Sync server validates ownership +* Users can only sync their own data +* No cross-user sync support +* Sync server validates ownership ## Performance Metrics **Typical Sync Performance:** -- 1000 changes: ~2-5 seconds -- 10000 changes: ~20-50 seconds -- Initial full sync (100k notes): ~5-10 minutes + +* 1000 changes: ~2-5 seconds +* 10000 changes: ~20-50 seconds +* Initial full sync (100k notes): ~5-10 minutes **Factors:** -- Network latency -- Database size -- Number of protected notes -- Attachment sizes -## Future Improvements - -**Planned Enhancements:** -- Differential sync (binary diff) -- Peer-to-peer sync (no central server) -- Multi-server sync -- Partial sync (subtree only) -- Sync over Tor/I2P - ---- - -**See Also:** -- [ARCHITECTURE.md](ARCHITECTURE.md) - Overall architecture -- [Sync User Guide](https://triliumnext.github.io/Docs/Wiki/synchronization) -- [Sync API Source](../apps/server/src/routes/api/sync.ts) +* Network latency +* Database size +* Number of protected notes +* Attachment sizes \ No newline at end of file diff --git a/docs/QUICK_REFERENCE.md b/docs/QUICK_REFERENCE.md deleted file mode 100644 index 396cc0dd6..000000000 --- a/docs/QUICK_REFERENCE.md +++ /dev/null @@ -1,155 +0,0 @@ -# Trilium Technical Documentation - Quick Reference - -> **Start here:** [TECHNICAL_DOCUMENTATION.md](TECHNICAL_DOCUMENTATION.md) - Complete index of all documentation - -## 📖 Documentation Files - -| Document | Description | Size | Lines | -|----------|-------------|------|-------| -| [TECHNICAL_DOCUMENTATION.md](TECHNICAL_DOCUMENTATION.md) | Main index and navigation hub | 13KB | 423 | -| [ARCHITECTURE.md](ARCHITECTURE.md) | Complete system architecture | 30KB | 1,016 | -| [DATABASE.md](DATABASE.md) | Database schema and operations | 19KB | 736 | -| [SYNCHRONIZATION.md](SYNCHRONIZATION.md) | Sync protocol and implementation | 14KB | 583 | -| [SCRIPTING.md](SCRIPTING.md) | User scripting system guide | 17KB | 734 | -| [SECURITY_ARCHITECTURE.md](SECURITY_ARCHITECTURE.md) | Security implementation details | 19KB | 834 | - -**Total:** 112KB of comprehensive documentation across 4,326 lines! - -## 🎯 Quick Access by Role - -### 👤 End Users -- **Getting Started:** [User Guide](User%20Guide/User%20Guide/) -- **Scripting:** [SCRIPTING.md](SCRIPTING.md) -- **Sync Setup:** [SYNCHRONIZATION.md](SYNCHRONIZATION.md) - -### 💻 Developers -- **Architecture:** [ARCHITECTURE.md](ARCHITECTURE.md) -- **Development Setup:** [Developer Guide](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) -- **Database:** [DATABASE.md](DATABASE.md) - -### 🔒 Security Auditors -- **Security:** [SECURITY_ARCHITECTURE.md](SECURITY_ARCHITECTURE.md) -- **Encryption:** [SECURITY_ARCHITECTURE.md#encryption](SECURITY_ARCHITECTURE.md#encryption) -- **Auth:** [SECURITY_ARCHITECTURE.md#authentication](SECURITY_ARCHITECTURE.md#authentication) - -### 🏗️ System Architects -- **Overall Design:** [ARCHITECTURE.md](ARCHITECTURE.md) -- **Cache System:** [ARCHITECTURE.md#three-layer-cache-system](ARCHITECTURE.md#three-layer-cache-system) -- **Entity Model:** [ARCHITECTURE.md#entity-system](ARCHITECTURE.md#entity-system) - -### 🔧 DevOps Engineers -- **Server Installation:** [User Guide - Server Installation](User%20Guide/User%20Guide/Installation%20&%20Setup/Server%20Installation.md) -- **Docker:** [Developer Guide - Docker](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Docker.md) -- **Sync Server:** [SYNCHRONIZATION.md#sync-server-configuration](SYNCHRONIZATION.md#sync-server-configuration) - -### 📊 Database Administrators -- **Schema:** [DATABASE.md#database-schema](DATABASE.md#database-schema) -- **Maintenance:** [DATABASE.md#database-maintenance](DATABASE.md#database-maintenance) -- **Performance:** [DATABASE.md#performance-optimization](DATABASE.md#performance-optimization) - -## 🔍 Quick Topic Finder - -### Core Concepts -- **Becca Cache:** [ARCHITECTURE.md#1-becca-backend-cache](ARCHITECTURE.md#1-becca-backend-cache) -- **Froca Cache:** [ARCHITECTURE.md#2-froca-frontend-cache](ARCHITECTURE.md#2-froca-frontend-cache) -- **Entity System:** [ARCHITECTURE.md#entity-system](ARCHITECTURE.md#entity-system) -- **Widget System:** [ARCHITECTURE.md#widget-based-ui](ARCHITECTURE.md#widget-based-ui) - -### Database -- **Schema Overview:** [DATABASE.md#schema-overview](DATABASE.md#schema-overview) -- **Notes Table:** [DATABASE.md#notes-table](DATABASE.md#notes-table) -- **Branches Table:** [DATABASE.md#branches-table](DATABASE.md#branches-table) -- **Migrations:** [DATABASE.md#database-migrations](DATABASE.md#database-migrations) - -### Synchronization -- **Sync Protocol:** [SYNCHRONIZATION.md#sync-protocol](SYNCHRONIZATION.md#sync-protocol) -- **Conflict Resolution:** [SYNCHRONIZATION.md#conflict-resolution](SYNCHRONIZATION.md#conflict-resolution) -- **Entity Changes:** [SYNCHRONIZATION.md#entity-changes](SYNCHRONIZATION.md#entity-changes) - -### Scripting -- **Frontend Scripts:** [SCRIPTING.md#frontend-scripts](SCRIPTING.md#frontend-scripts) -- **Backend Scripts:** [SCRIPTING.md#backend-scripts](SCRIPTING.md#backend-scripts) -- **Script Examples:** [SCRIPTING.md#script-examples](SCRIPTING.md#script-examples) -- **API Reference:** [SCRIPTING.md#script-api](SCRIPTING.md#script-api) - -### Security -- **Authentication:** [SECURITY_ARCHITECTURE.md#authentication](SECURITY_ARCHITECTURE.md#authentication) -- **Encryption:** [SECURITY_ARCHITECTURE.md#encryption](SECURITY_ARCHITECTURE.md#encryption) -- **Input Sanitization:** [SECURITY_ARCHITECTURE.md#input-sanitization](SECURITY_ARCHITECTURE.md#input-sanitization) -- **Best Practices:** [SECURITY_ARCHITECTURE.md#security-best-practices](SECURITY_ARCHITECTURE.md#security-best-practices) - -## 📚 Learning Paths - -### New to Trilium Development -1. Read [ARCHITECTURE.md](ARCHITECTURE.md) - System overview -2. Setup environment: [Environment Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) -3. Explore [DATABASE.md](DATABASE.md) - Understand data model -4. Check [Developer Guide](Developer%20Guide/Developer%20Guide/) - -### Want to Create Scripts -1. Read [SCRIPTING.md](SCRIPTING.md) - Complete guide -2. Check [Script API](Script%20API/) - API reference -3. Review examples: [SCRIPTING.md#script-examples](SCRIPTING.md#script-examples) -4. Explore [Advanced Showcases](https://triliumnext.github.io/Docs/Wiki/advanced-showcases) - -### Setting Up Sync -1. Understand protocol: [SYNCHRONIZATION.md](SYNCHRONIZATION.md) -2. Configure server: [SYNCHRONIZATION.md#sync-server-configuration](SYNCHRONIZATION.md#sync-server-configuration) -3. Setup clients: [SYNCHRONIZATION.md#client-setup](SYNCHRONIZATION.md#client-setup) -4. Troubleshoot: [SYNCHRONIZATION.md#troubleshooting](SYNCHRONIZATION.md#troubleshooting) - -### Security Review -1. Read threat model: [SECURITY_ARCHITECTURE.md#threat-model](SECURITY_ARCHITECTURE.md#threat-model) -2. Review authentication: [SECURITY_ARCHITECTURE.md#authentication](SECURITY_ARCHITECTURE.md#authentication) -3. Check encryption: [SECURITY_ARCHITECTURE.md#encryption](SECURITY_ARCHITECTURE.md#encryption) -4. Verify best practices: [SECURITY_ARCHITECTURE.md#security-best-practices](SECURITY_ARCHITECTURE.md#security-best-practices) - -## 🗺️ Documentation Map - -``` -docs/ -├── TECHNICAL_DOCUMENTATION.md ← START HERE (Index) -│ -├── Core Technical Docs -│ ├── ARCHITECTURE.md (System design) -│ ├── DATABASE.md (Data layer) -│ ├── SYNCHRONIZATION.md (Sync system) -│ ├── SCRIPTING.md (User scripting) -│ └── SECURITY_ARCHITECTURE.md (Security) -│ -├── Developer Guide/ -│ └── Developer Guide/ (Development setup) -│ -├── User Guide/ -│ └── User Guide/ (End-user docs) -│ -└── Script API/ (API reference) -``` - -## 💡 Tips for Reading Documentation - -1. **Start with the index:** [TECHNICAL_DOCUMENTATION.md](TECHNICAL_DOCUMENTATION.md) provides an overview -2. **Use search:** Press Ctrl+F / Cmd+F to find specific topics -3. **Follow links:** Documents are cross-referenced for easy navigation -4. **Code examples:** Most docs include practical code examples -5. **See Also sections:** Check bottom of each doc for related resources - -## 🔗 External Resources - -- **Website:** https://triliumnotes.org -- **Online Docs:** https://docs.triliumnotes.org -- **GitHub:** https://github.com/TriliumNext/Trilium -- **Discussions:** https://github.com/TriliumNext/Trilium/discussions -- **Matrix Chat:** https://matrix.to/#/#triliumnext:matrix.org - -## 🤝 Contributing to Documentation - -Found an error or want to improve the docs? See: -- [Contributing Guide](../README.md#-contribute) -- [Documentation Standards](TECHNICAL_DOCUMENTATION.md#documentation-conventions) - ---- - -**Version:** 0.99.3 -**Last Updated:** November 2025 -**Maintained by:** TriliumNext Team diff --git a/docs/SCRIPTING.md b/docs/SCRIPTING.md deleted file mode 100644 index 49e548c50..000000000 --- a/docs/SCRIPTING.md +++ /dev/null @@ -1,734 +0,0 @@ -# Trilium Scripting System - -> **Related:** [ARCHITECTURE.md](ARCHITECTURE.md) | [Script API Documentation](Script%20API/) - -## Overview - -Trilium features a **powerful scripting system** that allows users to extend and customize the application without modifying source code. Scripts are written in JavaScript and can execute both in the **frontend (browser)** and **backend (Node.js)** contexts. - -## Script Types - -### Frontend Scripts - -**Location:** Attached to notes with `#run=frontendStartup` attribute - -**Execution Context:** Browser environment - -**Access:** -- Trilium Frontend API -- Browser APIs (DOM, localStorage, etc.) -- Froca (frontend cache) -- UI widgets -- No direct file system access - -**Lifecycle:** -- `frontendStartup` - Run once when Trilium loads -- `frontendReload` - Run on every note context change - -**Example:** -```javascript -// Attach to note with #run=frontendStartup -const api = window.api - -// Add custom button to toolbar -api.addButtonToToolbar({ - title: 'My Button', - icon: 'star', - action: () => { - api.showMessage('Hello from frontend!') - } -}) -``` - -### Backend Scripts - -**Location:** Attached to notes with `#run=backendStartup` attribute - -**Execution Context:** Node.js server environment - -**Access:** -- Trilium Backend API -- Node.js APIs (fs, http, etc.) -- Becca (backend cache) -- Database (SQL) -- External libraries (via require) - -**Lifecycle:** -- `backendStartup` - Run once when server starts -- Event handlers (custom events) - -**Example:** -```javascript -// Attach to note with #run=backendStartup -const api = require('@triliumnext/api') - -// Listen for note creation -api.dayjs // Example: access dayjs library - -api.onNoteCreated((note) => { - if (note.title.includes('TODO')) { - note.setLabel('priority', 'high') - } -}) -``` - -### Render Scripts - -**Location:** Attached to notes with `#customWidget` or similar attributes - -**Purpose:** Custom note rendering/widgets - -**Example:** -```javascript -// Custom widget for a note -class MyWidget extends api.NoteContextAwareWidget { - doRender() { - this.$widget = $('
      ') - .text('Custom widget content') - return this.$widget - } -} - -module.exports = MyWidget -``` - -## Script API - -### Frontend API - -**Location:** `apps/client/src/services/frontend_script_api.ts` - -**Global Access:** `window.api` - -**Key Methods:** - -```typescript -// Note Operations -api.getNote(noteId) // Get note object -api.getBranch(branchId) // Get branch object -api.getActiveNote() // Currently displayed note -api.openNote(noteId, activateNote) // Open note in UI - -// UI Operations -api.showMessage(message) // Show toast notification -api.showDialog() // Show modal dialog -api.confirm(message) // Show confirmation dialog -api.prompt(message, defaultValue) // Show input prompt - -// Tree Operations -api.getTree() // Get note tree structure -api.expandTree(noteId) // Expand tree branch -api.collapseTree(noteId) // Collapse tree branch - -// Search -api.searchForNotes(searchQuery) // Search notes -api.searchForNote(searchQuery) // Get single note - -// Navigation -api.openTabWithNote(noteId) // Open note in new tab -api.closeActiveTab() // Close current tab -api.activateNote(noteId) // Switch to note - -// Attributes -api.getAttribute(noteId, type, name) // Get attribute -api.getAttributes(noteId, type, name) // Get all matching attributes - -// Custom Widgets -api.addButtonToToolbar(def) // Add toolbar button -api.addCustomWidget(def) // Add custom widget - -// Events -api.runOnNoteOpened(callback) // Note opened event -api.runOnNoteContentChange(callback) // Content changed event - -// Utilities -api.dayjs // Date/time library -api.formatDate(date) // Format date -api.log(message) // Console log -``` - -### Backend API - -**Location:** `apps/server/src/services/backend_script_api.ts` - -**Access:** `require('@triliumnext/api')` or global `api` - -**Key Methods:** - -```typescript -// Note Operations -api.getNote(noteId) // Get note from Becca -api.getNoteWithContent(noteId) // Get note with content -api.createNote(parentNoteId, title) // Create new note -api.deleteNote(noteId) // Delete note - -// Branch Operations -api.getBranch(branchId) // Get branch -api.createBranch(noteId, parentNoteId) // Create branch (clone) - -// Attribute Operations -api.getAttribute(noteId, type, name) // Get attribute -api.createAttribute(noteId, type, name, value) // Create attribute - -// Database Access -api.sql.getRow(query, params) // Execute SQL query (single row) -api.sql.getRows(query, params) // Execute SQL query (multiple rows) -api.sql.execute(query, params) // Execute SQL statement - -// Events -api.onNoteCreated(callback) // Note created event -api.onNoteUpdated(callback) // Note updated event -api.onNoteDeleted(callback) // Note deleted event -api.onAttributeCreated(callback) // Attribute created event - -// Search -api.searchForNotes(searchQuery) // Search notes - -// Date/Time -api.dayjs // Date/time library -api.now() // Current date/time - -// Logging -api.log(message) // Log message -api.error(message) // Log error - -// External Communication -api.axios // HTTP client library - -// Utilities -api.backup.backupNow() // Trigger backup -api.export.exportSubtree(noteId) // Export notes -``` - -## Script Attributes - -### Execute Attributes - -- `#run=frontendStartup` - Execute on frontend startup -- `#run=backendStartup` - Execute on backend startup -- `#run=hourly` - Execute every hour -- `#run=daily` - Execute daily - -### Widget Attributes - -- `#customWidget` - Custom note widget -- `#widget` - Standard widget integration - -### Other Attributes - -- `#disableVersioning` - Disable automatic versioning for this note -- `#hideChildrenOverview` - Hide children in overview -- `#iconClass` - Custom icon for note - -## Entity Classes - -### Frontend Entities - -**FNote** (`apps/client/src/entities/fnote.ts`) - -```typescript -class FNote { - noteId: string - title: string - type: string - mime: string - - // Relationships - getParentNotes(): FNote[] - getChildNotes(): FNote[] - getBranches(): FBranch[] - - // Attributes - getAttribute(type, name): FAttribute - getAttributes(type?, name?): FAttribute[] - hasLabel(name): boolean - getLabelValue(name): string - - // Content - getContent(): Promise - - // Navigation - open(): void -} -``` - -**FBranch** - -```typescript -class FBranch { - branchId: string - noteId: string - parentNoteId: string - prefix: string - notePosition: number - - getNote(): FNote - getParentNote(): FNote -} -``` - -**FAttribute** - -```typescript -class FAttribute { - attributeId: string - noteId: string - type: 'label' | 'relation' - name: string - value: string - - getNote(): FNote - getTargetNote(): FNote // For relations -} -``` - -### Backend Entities - -**BNote** (`apps/server/src/becca/entities/bnote.ts`) - -```typescript -class BNote { - noteId: string - title: string - type: string - mime: string - isProtected: boolean - - // Content - getContent(): string | Buffer - setContent(content: string | Buffer): void - - // Relationships - getParentNotes(): BNote[] - getChildNotes(): BNote[] - getBranches(): BBranch[] - - // Attributes - getAttribute(type, name): BAttribute - getAttributes(type?, name?): BAttribute[] - setLabel(name, value): BAttribute - setRelation(name, targetNoteId): BAttribute - hasLabel(name): boolean - getLabelValue(name): string - - // Operations - save(): void - markAsDeleted(): void -} -``` - -**BBranch** - -```typescript -class BBranch { - branchId: string - noteId: string - parentNoteId: string - prefix: string - notePosition: number - - getNote(): BNote - getParentNote(): BNote - save(): void -} -``` - -**BAttribute** - -```typescript -class BAttribute { - attributeId: string - noteId: string - type: 'label' | 'relation' - name: string - value: string - - getNote(): BNote - getTargetNote(): BNote // For relations - save(): void -} -``` - -## Script Examples - -### Frontend Examples - -**1. Custom Toolbar Button** - -```javascript -// #run=frontendStartup -api.addButtonToToolbar({ - title: 'Export to PDF', - icon: 'file-export', - action: async () => { - const note = api.getActiveNote() - if (note) { - await api.runOnBackend('exportToPdf', [note.noteId]) - api.showMessage('Export started') - } - } -}) -``` - -**2. Auto-Save Reminder** - -```javascript -// #run=frontendStartup -let saveTimer -api.runOnNoteContentChange(() => { - clearTimeout(saveTimer) - saveTimer = setTimeout(() => { - api.showMessage('Remember to save your work!') - }, 300000) // 5 minutes -}) -``` - -**3. Note Statistics Widget** - -```javascript -// #customWidget -class StatsWidget extends api.NoteContextAwareWidget { - doRender() { - this.$widget = $('
      ') - return this.$widget - } - - async refreshWithNote(note) { - const content = await note.getContent() - const words = content.split(/\s+/).length - const chars = content.length - - this.$widget.html(` -
      Words: ${words}
      -
      Characters: ${chars}
      - `) - } -} - -module.exports = StatsWidget -``` - -### Backend Examples - -**1. Auto-Tagging on Note Creation** - -```javascript -// #run=backendStartup -api.onNoteCreated((note) => { - // Auto-tag TODO notes - if (note.title.includes('TODO')) { - note.setLabel('type', 'todo') - note.setLabel('priority', 'normal') - } - - // Auto-tag meeting notes by date - if (note.title.match(/Meeting \d{4}-\d{2}-\d{2}/)) { - note.setLabel('type', 'meeting') - const dateMatch = note.title.match(/(\d{4}-\d{2}-\d{2})/) - if (dateMatch) { - note.setLabel('date', dateMatch[1]) - } - } -}) -``` - -**2. Daily Backup Reminder** - -```javascript -// #run=daily -const todayNote = api.getTodayNote() -todayNote.setLabel('backupDone', 'false') - -// Create reminder note -api.createNote(todayNote.noteId, '🔔 Backup Reminder', { - content: 'Remember to verify today\'s backup!', - type: 'text' -}) -``` - -**3. External API Integration** - -```javascript -// #run=backendStartup -api.onNoteCreated(async (note) => { - // Sync new notes to external service - if (note.hasLabel('sync-external')) { - try { - await api.axios.post('https://external-api.com/sync', { - noteId: note.noteId, - title: note.title, - content: note.getContent() - }) - note.setLabel('lastSync', api.dayjs().format()) - } catch (error) { - api.log('Sync failed: ' + error.message) - } - } -}) -``` - -**4. Database Cleanup** - -```javascript -// #run=weekly -// Clean up old revisions -const cutoffDate = api.dayjs().subtract(90, 'days').format() - -const oldRevisions = api.sql.getRows(` - SELECT revisionId FROM revisions - WHERE utcDateCreated < ? -`, [cutoffDate]) - -api.log(`Deleting ${oldRevisions.length} old revisions`) - -for (const row of oldRevisions) { - api.sql.execute('DELETE FROM revisions WHERE revisionId = ?', [row.revisionId]) -} -``` - -## Script Storage - -**Storage Location:** Scripts are stored as regular notes - -**Identifying Scripts:** -- Have `#run` attribute or `#customWidget` attribute -- Type is typically `code` with MIME `application/javascript` - -**Script Note Structure:** -``` -📁 Scripts (folder note) -├── 📜 Frontend Scripts -│ ├── Custom Toolbar Button (#run=frontendStartup) -│ └── Statistics Widget (#customWidget) -└── 📜 Backend Scripts - ├── Auto-Tagger (#run=backendStartup) - └── Daily Backup (#run=daily) -``` - -## Script Execution - -### Frontend Execution - -**Timing:** -1. Trilium frontend loads -2. Froca cache initializes -3. Script notes with `#run=frontendStartup` are found -4. Scripts execute in dependency order - -**Isolation:** -- Each script runs in separate context -- Shared `window.api` object -- Can access global window object - -### Backend Execution - -**Timing:** -1. Server starts -2. Becca cache loads -3. Script notes with `#run=backendStartup` are found -4. Scripts execute in dependency order - -**Isolation:** -- Each script is a separate module -- Can require Node.js modules -- Shared `api` global - -### Error Handling - -**Frontend:** -```javascript -try { - // Script code -} catch (error) { - api.showError('Script error: ' + error.message) - console.error(error) -} -``` - -**Backend:** -```javascript -try { - // Script code -} catch (error) { - api.log('Script error: ' + error.message) - console.error(error) -} -``` - -## Security Considerations - -### Frontend Scripts - -**Risks:** -- Can access all notes via Froca -- Can manipulate DOM -- Can make API calls -- Limited by browser security model - -**Mitigations:** -- User must trust scripts they add -- Scripts run with user privileges -- No access to file system - -### Backend Scripts - -**Risks:** -- Full Node.js access -- Can execute system commands -- Can access file system -- Can make network requests - -**Mitigations:** -- Scripts are user-created (trusted) -- Single-user model (no privilege escalation) -- Review scripts before adding `#run` attribute - -### Best Practices - -1. **Review script code** before adding execution attributes -2. **Use specific attributes** rather than wildcard searches -3. **Avoid eval()** and dynamic code execution -4. **Validate inputs** in scripts -5. **Handle errors** gracefully -6. **Log important actions** for audit trail - -## Performance Considerations - -### Optimization Tips - -**1. Cache Results:** -```javascript -// Bad: Re-query on every call -function getConfig() { - return api.getNote('config').getContent() -} - -// Good: Cache the result -let cachedConfig -function getConfig() { - if (!cachedConfig) { - cachedConfig = api.getNote('config').getContent() - } - return cachedConfig -} -``` - -**2. Use Efficient Queries:** -```javascript -// Bad: Load all notes and filter -const todos = api.searchForNotes('#type=todo') - -// Good: Use specific search -const todos = api.searchForNotes('#type=todo #status=pending') -``` - -**3. Batch Operations:** -```javascript -// Bad: Save after each change -notes.forEach(note => { - note.title = 'Updated' - note.save() -}) - -// Good: Batch changes -notes.forEach(note => { - note.title = 'Updated' -}) -// Save happens in batch -``` - -**4. Debounce Event Handlers:** -```javascript -let timeout -api.runOnNoteContentChange(() => { - clearTimeout(timeout) - timeout = setTimeout(() => { - // Process change - }, 500) -}) -``` - -## Debugging Scripts - -### Frontend Debugging - -**Browser DevTools:** -```javascript -console.log('Debug info:', data) -debugger // Breakpoint -``` - -**Trilium Log:** -```javascript -api.log('Script executed') -``` - -### Backend Debugging - -**Console Output:** -```javascript -console.log('Backend debug:', data) -api.log('Script log message') -``` - -**Inspect Becca:** -```javascript -api.log('Note count:', Object.keys(api.becca.notes).length) -``` - -## Advanced Topics - -### Custom Note Types - -Scripts can implement custom note type handlers: - -```javascript -// Register custom type -api.registerNoteType({ - type: 'mytype', - mime: 'application/x-mytype', - renderNote: (note) => { - // Custom rendering - } -}) -``` - -### External Libraries - -**Frontend:** -```javascript -// Load external library -const myLib = await import('https://cdn.example.com/lib.js') -``` - -**Backend:** -```javascript -// Use Node.js require -const fs = require('fs') -const axios = require('axios') -``` - -### State Persistence - -**Frontend:** -```javascript -// Use localStorage -localStorage.setItem('myScript:data', JSON.stringify(data)) -const data = JSON.parse(localStorage.getItem('myScript:data')) -``` - -**Backend:** -```javascript -// Store in special note -const stateNote = api.getNote('script-state-note') -stateNote.setContent(JSON.stringify(data)) - -const data = JSON.parse(stateNote.getContent()) -``` - ---- - -**See Also:** -- [Script API Documentation](Script%20API/) - Complete API reference -- [Advanced Showcases](https://triliumnext.github.io/Docs/Wiki/advanced-showcases) - Example scripts -- [ARCHITECTURE.md](ARCHITECTURE.md) - Overall architecture diff --git a/docs/SECURITY_ARCHITECTURE.md b/docs/SECURITY_ARCHITECTURE.md deleted file mode 100644 index 27993deac..000000000 --- a/docs/SECURITY_ARCHITECTURE.md +++ /dev/null @@ -1,834 +0,0 @@ -# Trilium Security Architecture - -> **Related:** [ARCHITECTURE.md](ARCHITECTURE.md) | [SECURITY.md](../SECURITY.md) - -## Overview - -Trilium implements a **defense-in-depth security model** with multiple layers of protection for user data. The security architecture covers authentication, authorization, encryption, input sanitization, and secure communication. - -## Security Principles - -1. **Data Privacy**: User data is protected at rest and in transit -2. **Encryption**: Per-note encryption for sensitive content -3. **Authentication**: Multiple authentication methods supported -4. **Authorization**: Single-user model with granular protected sessions -5. **Input Validation**: All user input sanitized -6. **Secure Defaults**: Security features enabled by default -7. **Transparency**: Open source allows security audits - -## Threat Model - -### Threats Considered - -1. **Unauthorized Access** - - Physical access to device - - Network eavesdropping - - Stolen credentials - - Session hijacking - -2. **Data Exfiltration** - - Malicious scripts - - XSS attacks - - SQL injection - - CSRF attacks - -3. **Data Corruption** - - Malicious modifications - - Database tampering - - Sync conflicts - -4. **Privacy Leaks** - - Unencrypted backups - - Search indexing - - Temporary files - - Memory dumps - -### Out of Scope - -- Nation-state attackers -- Zero-day vulnerabilities in dependencies -- Hardware vulnerabilities (Spectre, Meltdown) -- Physical access with unlimited time -- Quantum computing attacks - -## Authentication - -### Password Authentication - -**Implementation:** `apps/server/src/services/password.ts` - -**Password Storage:** -```typescript -// Password is never stored directly -const salt = crypto.randomBytes(32) -const derivedKey = crypto.pbkdf2Sync(password, salt, 10000, 32, 'sha256') -const verificationHash = crypto.createHash('sha256') - .update(derivedKey) - .digest('hex') - -// Store only salt and verification hash -sql.insert('user_data', { - salt: salt.toString('hex'), - derivedKey: derivedKey.toString('hex') // Used for encryption -}) - -sql.insert('options', { - name: 'passwordVerificationHash', - value: verificationHash -}) -``` - -**Password Requirements:** -- Minimum length: 4 characters (configurable) -- No maximum length -- All characters allowed -- Can be changed by user - -**Login Process:** -```typescript -// 1. User submits password -POST /api/login/password -Body: { password: "user-password" } - -// 2. Server derives key -const derivedKey = crypto.pbkdf2Sync(password, salt, 10000, 32, 'sha256') - -// 3. Verify against stored hash -const verificationHash = crypto.createHash('sha256') - .update(derivedKey) - .digest('hex') - -if (verificationHash === storedHash) { - // 4. Create session - req.session.loggedIn = true - req.session.regenerate() -} -``` - -### TOTP (Two-Factor Authentication) - -**Implementation:** `apps/server/src/routes/api/login.ts` - -**Setup Process:** -```typescript -// 1. Generate secret -const secret = speakeasy.generateSecret({ - name: `Trilium (${username})`, - length: 32 -}) - -// 2. Store encrypted secret -const encryptedSecret = encrypt(secret.base32, dataKey) -sql.insert('options', { - name: 'totpSecret', - value: encryptedSecret -}) - -// 3. Generate QR code -const qrCodeUrl = secret.otpauth_url -``` - -**Verification:** -```typescript -// User submits TOTP token -POST /api/login/totp -Body: { token: "123456" } - -// Verify token -const secret = decrypt(encryptedSecret, dataKey) -const verified = speakeasy.totp.verify({ - secret: secret, - encoding: 'base32', - token: token, - window: 1 // Allow 1 time step tolerance -}) -``` - -### OpenID Connect - -**Implementation:** `apps/server/src/routes/api/login.ts` - -**Supported Providers:** -- Any OpenID Connect compatible provider -- Google, GitHub, Auth0, etc. - -**Flow:** -```typescript -// 1. Redirect to provider -GET /api/login/openid - -// 2. Provider redirects back with code -GET /api/login/openid/callback?code=... - -// 3. Exchange code for tokens -const tokens = await openidClient.callback(redirectUri, req.query) - -// 4. Verify ID token -const claims = tokens.claims() - -// 5. Create session -req.session.loggedIn = true -``` - -### Session Management - -**Session Storage:** SQLite database (sessions table) - -**Session Configuration:** -```typescript -app.use(session({ - secret: sessionSecret, - resave: false, - saveUninitialized: false, - rolling: true, - cookie: { - maxAge: 7 * 24 * 60 * 60 * 1000, // 7 days - httpOnly: true, - secure: isHttps, - sameSite: 'lax' - }, - store: new SqliteStore({ - db: db, - table: 'sessions' - }) -})) -``` - -**Session Invalidation:** -- Automatic timeout after inactivity -- Manual logout clears session -- Server restart invalidates all sessions (optional) - -## Authorization - -### Single-User Model - -**Desktop:** -- Single user (owner of device) -- No multi-user support -- Full access to all notes - -**Server:** -- Single user per installation -- Authentication required for all operations -- No user roles or permissions - -### Protected Sessions - -**Purpose:** Temporary access to encrypted (protected) notes - -**Implementation:** `apps/server/src/services/protected_session.ts` - -**Workflow:** -```typescript -// 1. User enters password for protected notes -POST /api/protected-session/enter -Body: { password: "protected-password" } - -// 2. Derive encryption key -const protectedDataKey = deriveKey(password) - -// 3. Verify password (decrypt known encrypted value) -const decrypted = decrypt(testValue, protectedDataKey) -if (decrypted === expectedValue) { - // 4. Store in memory (not in session) - protectedSessionHolder.setProtectedDataKey(protectedDataKey) - - // 5. Set timeout - setTimeout(() => { - protectedSessionHolder.clearProtectedDataKey() - }, timeout) -} -``` - -**Protected Session Timeout:** -- Default: 10 minutes (configurable) -- Extends on activity -- Cleared on browser close -- Separate from main session - -### API Authorization - -**Internal API:** -- Requires authenticated session -- CSRF token validation -- Same-origin policy - -**ETAPI (External API):** -- Token-based authentication -- No session required -- Rate limiting - -## Encryption - -### Note Encryption - -**Encryption Algorithm:** AES-256-CBC - -**Key Hierarchy:** -``` -User Password - ↓ (PBKDF2) -Data Key (for protected notes) - ↓ (AES-256) -Protected Note Content -``` - -**Encryption Process:** -```typescript -// 1. Generate IV (initialization vector) -const iv = crypto.randomBytes(16) - -// 2. Encrypt content -const cipher = crypto.createCipheriv('aes-256-cbc', dataKey, iv) -let encrypted = cipher.update(content, 'utf8', 'base64') -encrypted += cipher.final('base64') - -// 3. Prepend IV to encrypted content -const encryptedBlob = iv.toString('base64') + ':' + encrypted - -// 4. Store in database -sql.insert('blobs', { - blobId: blobId, - content: encryptedBlob -}) -``` - -**Decryption Process:** -```typescript -// 1. Split IV and encrypted content -const [ivBase64, encryptedData] = encryptedBlob.split(':') -const iv = Buffer.from(ivBase64, 'base64') - -// 2. Decrypt -const decipher = crypto.createDecipheriv('aes-256-cbc', dataKey, iv) -let decrypted = decipher.update(encryptedData, 'base64', 'utf8') -decrypted += decipher.final('utf8') - -return decrypted -``` - -**Protected Note Metadata:** -- Title is NOT encrypted (for tree display) -- Type and MIME are NOT encrypted -- Content IS encrypted -- Attributes CAN be encrypted (optional) - -### Data Key Management - -**Master Data Key:** -```typescript -// Generated once during setup -const dataKey = crypto.randomBytes(32) // 256 bits - -// Encrypted with derived key from user password -const derivedKey = crypto.pbkdf2Sync(password, salt, 10000, 32, 'sha256') -const encryptedDataKey = encrypt(dataKey, derivedKey) - -// Stored in database -sql.insert('options', { - name: 'encryptedDataKey', - value: encryptedDataKey.toString('hex') -}) -``` - -**Key Rotation:** -- Not currently supported -- Requires re-encrypting all protected notes -- Planned for future version - -### Transport Encryption - -**HTTPS:** -- Required for server installations (recommended) -- TLS 1.2+ only -- Strong cipher suites preferred -- Certificate validation enabled - -**Desktop:** -- Local communication (no network) -- No HTTPS required - -### Backup Encryption - -**Database Backups:** -- Protected notes remain encrypted in backup -- Backup file should be protected separately -- Consider encrypting backup storage location - -## Input Sanitization - -### XSS Prevention - -**HTML Sanitization:** - -Location: `apps/client/src/services/dompurify.ts` - -```typescript -import DOMPurify from 'dompurify' - -// Configure DOMPurify -DOMPurify.setConfig({ - ALLOWED_TAGS: ['b', 'i', 'em', 'strong', 'a', 'p', 'br', 'div', ...], - ALLOWED_ATTR: ['href', 'title', 'class', 'id', ...], - ALLOW_DATA_ATTR: false -}) - -// Sanitize HTML before rendering -const cleanHtml = DOMPurify.sanitize(userHtml) -``` - -**CKEditor Configuration:** -```typescript -// apps/client/src/widgets/type_widgets/text_type_widget.ts -ClassicEditor.create(element, { - // Restrict allowed content - htmlSupport: { - allow: [ - { name: /./, attributes: true, classes: true, styles: true } - ], - disallow: [ - { name: 'script' }, - { name: 'iframe', attributes: /^(?!src$).*/ } - ] - } -}) -``` - -**Content Security Policy:** -```typescript -// apps/server/src/main.ts -app.use((req, res, next) => { - res.setHeader('Content-Security-Policy', - "default-src 'self'; " + - "script-src 'self' 'unsafe-inline' 'unsafe-eval'; " + - "style-src 'self' 'unsafe-inline'; " + - "img-src 'self' data: blob:;" - ) - next() -}) -``` - -### SQL Injection Prevention - -**Parameterized Queries:** -```typescript -// GOOD - Safe from SQL injection -const notes = sql.getRows( - 'SELECT * FROM notes WHERE title = ?', - [userInput] -) - -// BAD - Vulnerable to SQL injection -const notes = sql.getRows( - `SELECT * FROM notes WHERE title = '${userInput}'` -) -``` - -**ORM Usage:** -```typescript -// Entity-based access prevents SQL injection -const note = becca.getNote(noteId) -note.title = userInput // Sanitized by entity -note.save() // Parameterized query -``` - -### CSRF Prevention - -**CSRF Token Validation:** - -Location: `apps/server/src/routes/middleware/csrf.ts` - -```typescript -// Generate CSRF token -const csrfToken = crypto.randomBytes(32).toString('hex') -req.session.csrfToken = csrfToken - -// Validate on state-changing requests -app.use((req, res, next) => { - if (['POST', 'PUT', 'DELETE'].includes(req.method)) { - const token = req.headers['x-csrf-token'] - if (token !== req.session.csrfToken) { - return res.status(403).json({ error: 'CSRF token mismatch' }) - } - } - next() -}) -``` - -**Client-Side:** -```typescript -// apps/client/src/services/server.ts -const csrfToken = getCsrfToken() - -fetch('/api/notes', { - method: 'POST', - headers: { - 'X-CSRF-Token': csrfToken, - 'Content-Type': 'application/json' - }, - body: JSON.stringify(data) -}) -``` - -### File Upload Validation - -**Validation:** -```typescript -// apps/server/src/routes/api/attachments.ts -const allowedMimeTypes = [ - 'image/jpeg', - 'image/png', - 'application/pdf', - // ... -] - -if (!allowedMimeTypes.includes(file.mimetype)) { - throw new Error('File type not allowed') -} - -// Validate file size -const maxSize = 100 * 1024 * 1024 // 100 MB -if (file.size > maxSize) { - throw new Error('File too large') -} - -// Sanitize filename -const sanitizedFilename = path.basename(file.originalname) - .replace(/[^a-z0-9.-]/gi, '_') -``` - -## Network Security - -### HTTPS Configuration - -**Server Setup:** -```typescript -// apps/server/src/main.ts -const httpsOptions = { - key: fs.readFileSync('server.key'), - cert: fs.readFileSync('server.cert') -} - -https.createServer(httpsOptions, app).listen(443) -``` - -**Certificate Validation:** -- Require valid certificates in production -- Self-signed certificates allowed for development -- Certificate pinning not implemented - -### Secure Headers - -```typescript -// apps/server/src/main.ts -app.use((req, res, next) => { - // Prevent clickjacking - res.setHeader('X-Frame-Options', 'SAMEORIGIN') - - // Prevent MIME sniffing - res.setHeader('X-Content-Type-Options', 'nosniff') - - // XSS protection - res.setHeader('X-XSS-Protection', '1; mode=block') - - // Referrer policy - res.setHeader('Referrer-Policy', 'same-origin') - - // HTTPS upgrade - if (req.secure) { - res.setHeader('Strict-Transport-Security', 'max-age=31536000') - } - - next() -}) -``` - -### Rate Limiting - -**API Rate Limiting:** -```typescript -// apps/server/src/routes/middleware/rate_limit.ts -const rateLimit = require('express-rate-limit') - -const apiLimiter = rateLimit({ - windowMs: 15 * 60 * 1000, // 15 minutes - max: 1000, // Limit each IP to 1000 requests per window - message: 'Too many requests from this IP' -}) - -app.use('/api/', apiLimiter) -``` - -**Login Rate Limiting:** -```typescript -const loginLimiter = rateLimit({ - windowMs: 15 * 60 * 1000, - max: 5, // 5 failed attempts - skipSuccessfulRequests: true -}) - -app.post('/api/login/password', loginLimiter, loginHandler) -``` - -## Data Security - -### Secure Data Deletion - -**Soft Delete:** -```typescript -// Mark as deleted (sync first) -note.isDeleted = 1 -note.deleteId = generateUUID() -note.save() - -// Entity change tracked for sync -addEntityChange('notes', noteId, note) -``` - -**Hard Delete (Erase):** -```typescript -// After sync completed -sql.execute('DELETE FROM notes WHERE noteId = ?', [noteId]) -sql.execute('DELETE FROM branches WHERE noteId = ?', [noteId]) -sql.execute('DELETE FROM attributes WHERE noteId = ?', [noteId]) - -// Mark entity change as erased -sql.execute('UPDATE entity_changes SET isErased = 1 WHERE entityId = ?', [noteId]) -``` - -**Blob Cleanup:** -```typescript -// Find orphaned blobs (not referenced by any note/revision/attachment) -const orphanedBlobs = sql.getRows(` - SELECT blobId FROM blobs - WHERE blobId NOT IN (SELECT blobId FROM notes WHERE blobId IS NOT NULL) - AND blobId NOT IN (SELECT blobId FROM revisions WHERE blobId IS NOT NULL) - AND blobId NOT IN (SELECT blobId FROM attachments WHERE blobId IS NOT NULL) -`) - -// Delete orphaned blobs -for (const blob of orphanedBlobs) { - sql.execute('DELETE FROM blobs WHERE blobId = ?', [blob.blobId]) -} -``` - -### Memory Security - -**Protected Data in Memory:** -- Protected data keys stored in memory only -- Cleared on timeout -- Not written to disk -- Not in session storage - -**Memory Cleanup:** -```typescript -// Clear sensitive data -const clearSensitiveData = () => { - protectedDataKey = null - - // Force garbage collection if available - if (global.gc) { - global.gc() - } -} -``` - -### Temporary Files - -**Secure Temporary Files:** -```typescript -const tempDir = os.tmpdir() -const tempFile = path.join(tempDir, `trilium-${crypto.randomBytes(16).toString('hex')}`) - -// Write temp file -fs.writeFileSync(tempFile, data, { mode: 0o600 }) // Owner read/write only - -// Clean up after use -fs.unlinkSync(tempFile) -``` - -## Dependency Security - -### Vulnerability Scanning - -**Tools:** -- `npm audit` - Check for known vulnerabilities -- Renovate bot - Automatic dependency updates -- GitHub Dependabot alerts - -**Process:** -```bash -# Check for vulnerabilities -npm audit - -# Fix automatically -npm audit fix - -# Manual review for breaking changes -npm audit fix --force -``` - -### Dependency Pinning - -**package.json:** -```json -{ - "dependencies": { - "express": "4.18.2", // Exact version - "better-sqlite3": "^9.2.2" // Compatible versions - } -} -``` - -**pnpm Overrides:** -```json -{ - "pnpm": { - "overrides": { - "lodash@<4.17.21": ">=4.17.21", // Force minimum version - "axios@<0.21.2": ">=0.21.2" - } - } -} -``` - -### Patch Management - -**pnpm Patches:** -```bash -# Create patch -pnpm patch @ckeditor/ckeditor5 - -# Edit files in temporary directory -# ... - -# Generate patch file -pnpm patch-commit /tmp/ckeditor5-patch - -# Patch applied automatically on install -``` - -## Security Best Practices - -### For Users - -1. **Strong Passwords** - - Use unique password for Trilium - - Enable TOTP 2FA - - Protect password manager - -2. **Protected Notes** - - Use for sensitive information - - Set reasonable session timeout - - Don't leave sessions unattended - -3. **Backups** - - Regular backups to secure location - - Encrypt backup storage - - Test backup restoration - -4. **Server Setup** - - Use HTTPS only - - Keep software updated - - Firewall configuration - - Use reverse proxy (nginx, Caddy) - -5. **Scripts** - - Review scripts before using - - Be cautious with external scripts - - Understand script permissions - -### For Developers - -1. **Code Review** - - Review all security-related changes - - Test authentication/authorization changes - - Validate input sanitization - -2. **Testing** - - Write security tests - - Test edge cases - - Penetration testing - -3. **Dependencies** - - Regular updates - - Audit new dependencies - - Monitor security advisories - -4. **Secrets** - - No secrets in source code - - Use environment variables - - Secure key generation - -## Security Auditing - -### Logs - -**Security Events Logged:** -- Login attempts (success/failure) -- Protected session access -- Password changes -- ETAPI token usage -- Failed CSRF validations - -**Log Location:** -- Desktop: Console output -- Server: Log files or stdout - -### Monitoring - -**Metrics to Monitor:** -- Failed login attempts -- API error rates -- Unusual database changes -- Large exports/imports - -## Incident Response - -### Security Issue Reporting - -**Process:** -1. Email security@triliumnext.com -2. Include vulnerability details -3. Provide reproduction steps -4. Allow reasonable disclosure time - -**Response:** -1. Acknowledge within 48 hours -2. Investigate and validate -3. Develop fix -4. Coordinate disclosure -5. Release patch - -### Breach Response - -**If Compromised:** -1. Change password immediately -2. Review recent activity -3. Check for unauthorized changes -4. Restore from backup if needed -5. Update security settings - -## Future Security Enhancements - -**Planned:** -- Hardware security key support (U2F/WebAuthn) -- End-to-end encryption for sync -- Zero-knowledge architecture option -- Encryption key rotation -- Audit log enhancements -- Per-note access controls - -**Under Consideration:** -- Multi-user support with permissions -- Blockchain-based sync verification -- Homomorphic encryption for search -- Quantum-resistant encryption - ---- - -**See Also:** -- [SECURITY.md](../SECURITY.md) - Security policy -- [ARCHITECTURE.md](ARCHITECTURE.md) - Overall architecture -- [Protected Notes Guide](https://triliumnext.github.io/Docs/Wiki/protected-notes) diff --git a/docs/TECHNICAL_DOCUMENTATION.md b/docs/TECHNICAL_DOCUMENTATION.md deleted file mode 100644 index 445df0530..000000000 --- a/docs/TECHNICAL_DOCUMENTATION.md +++ /dev/null @@ -1,423 +0,0 @@ -# Trilium Notes - Technical Documentation Index - -Welcome to the comprehensive technical and architectural documentation for Trilium Notes. This index provides quick access to all technical documentation resources. - -## 📚 Core Architecture Documentation - -### [ARCHITECTURE.md](ARCHITECTURE.md) -**Main technical architecture document** covering the complete system design. - -**Topics Covered:** -- High-level architecture overview -- Monorepo structure and organization -- Core architecture patterns (Becca, Froca, Shaca) -- Entity system and data model -- Widget-based UI architecture -- Frontend and backend architecture -- API architecture (Internal, ETAPI, WebSocket) -- Build system and tooling -- Testing strategy -- Security overview - -**Audience:** Developers, architects, contributors - ---- - -### [DATABASE.md](DATABASE.md) -**Complete database architecture and schema documentation.** - -**Topics Covered:** -- SQLite database structure -- Entity tables (notes, branches, attributes, revisions, attachments, blobs) -- System tables (options, entity_changes, sessions) -- Data relationships and integrity -- Database access patterns -- Migrations and versioning -- Performance optimization -- Backup and maintenance -- Security considerations - -**Audience:** Backend developers, database administrators - ---- - -### [SYNCHRONIZATION.md](SYNCHRONIZATION.md) -**Detailed synchronization protocol and implementation.** - -**Topics Covered:** -- Sync architecture overview -- Entity change tracking -- Sync protocol (handshake, pull, push) -- Conflict resolution strategies -- Protected notes synchronization -- Performance optimizations -- Error handling and retry logic -- Sync server configuration -- WebSocket real-time updates -- Troubleshooting guide - -**Audience:** Advanced users, sync server administrators, contributors - ---- - -### [SCRIPTING.md](SCRIPTING.md) -**Comprehensive guide to the Trilium scripting system.** - -**Topics Covered:** -- Script types (frontend, backend, render) -- Frontend API reference -- Backend API reference -- Entity classes (FNote, BNote, etc.) -- Script examples and patterns -- Script storage and execution -- Security considerations -- Performance optimization -- Debugging techniques -- Advanced topics - -**Audience:** Power users, script developers, plugin creators - ---- - -### [SECURITY_ARCHITECTURE.md](SECURITY_ARCHITECTURE.md) -**In-depth security architecture and implementation.** - -**Topics Covered:** -- Security principles and threat model -- Authentication methods (password, TOTP, OpenID) -- Session management -- Authorization and protected sessions -- Encryption (notes, transport, backups) -- Input sanitization (XSS, SQL injection, CSRF) -- Network security (HTTPS, headers, rate limiting) -- Data security and secure deletion -- Dependency security -- Security best practices -- Incident response - -**Audience:** Security engineers, administrators, auditors - ---- - -## 🔧 Developer Documentation - -### [Developer Guide](Developer%20Guide/Developer%20Guide/) -Collection of developer-focused documentation for contributing to Trilium. - -**Key Documents:** -- [Environment Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) - Setting up development environment -- [Project Structure](Developer%20Guide/Developer%20Guide/Project%20Structure.md) - Monorepo organization -- [Development and Architecture](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/) - Various development topics - -**Topics Include:** -- Local development setup -- Building and deployment -- Adding new note types -- Database schema details -- Internationalization -- Icons and UI customization -- Docker development -- Troubleshooting - -**Audience:** Contributors, developers - ---- - -## 📖 User Documentation - -### [User Guide](User%20Guide/User%20Guide/) -Comprehensive end-user documentation for using Trilium. - -**Key Sections:** -- Installation & Setup -- Basic Concepts and Features -- Note Types -- Advanced Usage -- Synchronization -- Import/Export - -**Audience:** End users, administrators - ---- - -### [Script API](Script%20API/) -Complete API reference for user scripting. - -**Coverage:** -- Frontend API methods -- Backend API methods -- Entity properties and methods -- Event handlers -- Utility functions - -**Audience:** Script developers, power users - ---- - -## 🚀 Quick Start Guides - -### For Users -1. [Installation Guide](User%20Guide/User%20Guide/Installation%20&%20Setup/) - Get Trilium running -2. [Basic Concepts](User%20Guide/User%20Guide/Basic%20Concepts%20and%20Features/) - Learn the fundamentals -3. [Scripting Guide](SCRIPTING.md) - Extend Trilium with scripts - -### For Developers -1. [Environment Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) - Setup development environment -2. [Architecture Overview](ARCHITECTURE.md) - Understand the system -3. [Contributing Guide](../README.md#-contribute) - Start contributing - -### For Administrators -1. [Server Installation](User%20Guide/User%20Guide/Installation%20&%20Setup/Server%20Installation.md) - Deploy Trilium server -2. [Synchronization Setup](SYNCHRONIZATION.md) - Configure sync -3. [Security Best Practices](SECURITY_ARCHITECTURE.md#security-best-practices) - Secure your installation - ---- - -## 🔍 Documentation by Topic - -### Architecture & Design -- [Overall Architecture](ARCHITECTURE.md) -- [Monorepo Structure](ARCHITECTURE.md#monorepo-structure) -- [Three-Layer Cache System](ARCHITECTURE.md#three-layer-cache-system) -- [Entity System](ARCHITECTURE.md#entity-system) -- [Widget-Based UI](ARCHITECTURE.md#widget-based-ui) - -### Data & Storage -- [Database Architecture](DATABASE.md) -- [Entity Tables](DATABASE.md#entity-tables) -- [Data Relationships](DATABASE.md#data-relationships) -- [Blob Storage](DATABASE.md#blobs-table) -- [Database Migrations](DATABASE.md#database-migrations) - -### Synchronization -- [Sync Architecture](SYNCHRONIZATION.md#sync-architecture) -- [Sync Protocol](SYNCHRONIZATION.md#sync-protocol) -- [Conflict Resolution](SYNCHRONIZATION.md#conflict-resolution) -- [Protected Notes Sync](SYNCHRONIZATION.md#protected-notes-sync) -- [WebSocket Sync](SYNCHRONIZATION.md#websocket-sync-updates) - -### Security -- [Authentication](SECURITY_ARCHITECTURE.md#authentication) -- [Encryption](SECURITY_ARCHITECTURE.md#encryption) -- [Input Sanitization](SECURITY_ARCHITECTURE.md#input-sanitization) -- [Network Security](SECURITY_ARCHITECTURE.md#network-security) -- [Security Best Practices](SECURITY_ARCHITECTURE.md#security-best-practices) - -### Scripting & Extensibility -- [Script Types](SCRIPTING.md#script-types) -- [Frontend API](SCRIPTING.md#frontend-api) -- [Backend API](SCRIPTING.md#backend-api) -- [Script Examples](SCRIPTING.md#script-examples) -- [Custom Widgets](SCRIPTING.md#render-scripts) - -### Frontend -- [Client Architecture](ARCHITECTURE.md#frontend-architecture) -- [Widget System](ARCHITECTURE.md#widget-based-ui) -- [Event System](ARCHITECTURE.md#event-system) -- [Froca Cache](ARCHITECTURE.md#2-froca-frontend-cache) -- [UI Components](ARCHITECTURE.md#ui-components) - -### Backend -- [Server Architecture](ARCHITECTURE.md#backend-architecture) -- [Service Layer](ARCHITECTURE.md#service-layer) -- [Route Structure](ARCHITECTURE.md#route-structure) -- [Becca Cache](ARCHITECTURE.md#1-becca-backend-cache) -- [Middleware](ARCHITECTURE.md#middleware) - -### Build & Deploy -- [Build System](ARCHITECTURE.md#build-system) -- [Package Manager](ARCHITECTURE.md#package-manager-pnpm) -- [Build Tools](ARCHITECTURE.md#build-tools) -- [Docker](Developer%20Guide/Developer%20Guide/Development%20and%20architecture/Docker.md) -- [Deployment](Developer%20Guide/Developer%20Guide/Building%20and%20deployment/) - -### Testing -- [Testing Strategy](ARCHITECTURE.md#testing-strategy) -- [Test Organization](ARCHITECTURE.md#test-organization) -- [E2E Testing](ARCHITECTURE.md#e2e-testing) - ---- - -## 📋 Reference Documentation - -### File Locations -``` -trilium/ -├── apps/ -│ ├── client/ # Frontend application -│ ├── server/ # Backend server -│ ├── desktop/ # Electron app -│ └── ... -├── packages/ -│ ├── commons/ # Shared code -│ ├── ckeditor5/ # Rich text editor -│ └── ... -├── docs/ -│ ├── ARCHITECTURE.md # Main architecture doc -│ ├── DATABASE.md # Database documentation -│ ├── SYNCHRONIZATION.md # Sync documentation -│ ├── SCRIPTING.md # Scripting guide -│ ├── SECURITY_ARCHITECTURE.md # Security documentation -│ ├── Developer Guide/ # Developer docs -│ ├── User Guide/ # User docs -│ └── Script API/ # API reference -└── ... -``` - -### Key Source Files -- **Backend Entry:** `apps/server/src/main.ts` -- **Frontend Entry:** `apps/client/src/desktop.ts` / `apps/client/src/index.ts` -- **Becca Cache:** `apps/server/src/becca/becca.ts` -- **Froca Cache:** `apps/client/src/services/froca.ts` -- **Database Schema:** `apps/server/src/assets/db/schema.sql` -- **Backend API:** `apps/server/src/services/backend_script_api.ts` -- **Frontend API:** `apps/client/src/services/frontend_script_api.ts` - -### Important Directories -- **Entities:** `apps/server/src/becca/entities/` -- **Widgets:** `apps/client/src/widgets/` -- **Services:** `apps/server/src/services/` -- **Routes:** `apps/server/src/routes/` -- **Migrations:** `apps/server/src/migrations/` -- **Tests:** Various `*.spec.ts` files throughout - ---- - -## 🎯 Common Tasks - -### Understanding the Codebase -1. Read [ARCHITECTURE.md](ARCHITECTURE.md) for overview -2. Explore [Monorepo Structure](ARCHITECTURE.md#monorepo-structure) -3. Review [Entity System](ARCHITECTURE.md#entity-system) -4. Check [Key Files](ARCHITECTURE.md#key-files-for-understanding-architecture) - -### Adding Features -1. Review relevant architecture documentation -2. Check [Developer Guide](Developer%20Guide/Developer%20Guide/) -3. Follow existing patterns in codebase -4. Write tests -5. Update documentation - -### Debugging Issues -1. Check [Troubleshooting](Developer%20Guide/Developer%20Guide/Troubleshooting/) -2. Review [Database](DATABASE.md) for data issues -3. Check [Synchronization](SYNCHRONIZATION.md) for sync issues -4. Review [Security](SECURITY_ARCHITECTURE.md) for auth issues - -### Performance Optimization -1. [Database Performance](DATABASE.md#performance-optimization) -2. [Cache Optimization](ARCHITECTURE.md#caching-system) -3. [Build Optimization](ARCHITECTURE.md#build-system) -4. [Script Performance](SCRIPTING.md#performance-considerations) - ---- - -## 🔗 External Resources - -### Official Links -- **Website:** https://triliumnotes.org -- **Documentation:** https://docs.triliumnotes.org -- **GitHub:** https://github.com/TriliumNext/Trilium -- **Discussions:** https://github.com/TriliumNext/Trilium/discussions -- **Matrix Chat:** https://matrix.to/#/#triliumnext:matrix.org - -### Community Resources -- **Awesome Trilium:** https://github.com/Nriver/awesome-trilium -- **TriliumRocks:** https://trilium.rocks/ -- **Wiki:** https://triliumnext.github.io/Docs/Wiki/ - -### Related Projects -- **TriliumDroid:** https://github.com/FliegendeWurst/TriliumDroid -- **Web Clipper:** Included in main repository - ---- - -## 📝 Documentation Conventions - -### Document Structure -- Overview section -- Table of contents -- Main content with headings -- Code examples where relevant -- "See Also" references - -### Code Examples -```typescript -// TypeScript examples with comments -const example = 'value' -``` - -```sql --- SQL examples with formatting -SELECT * FROM notes WHERE noteId = ? -``` - -### Cross-References -- Use relative links: `[text](path/to/file.md)` -- Reference sections: `[text](file.md#section)` -- External links: Full URLs - -### Maintenance -- Review on major releases -- Update for architectural changes -- Add examples for new features -- Keep API references current - ---- - -## 🤝 Contributing to Documentation - -### What to Document -- New features and APIs -- Architecture changes -- Migration guides -- Performance tips -- Security considerations - -### How to Contribute -1. Edit markdown files in `docs/` -2. Follow existing structure and style -3. Include code examples -4. Test links and formatting -5. Submit pull request - -### Documentation Standards -- Clear, concise language -- Complete code examples -- Proper markdown formatting -- Cross-references to related docs -- Updated version numbers - ---- - -## 📅 Version Information - -- **Documentation Version:** 0.99.3 -- **Last Updated:** November 2025 -- **Trilium Version:** 0.99.3+ -- **Next Review:** When major architectural changes occur - ---- - -## 💡 Getting Help - -### For Users -- [User Guide](User%20Guide/User%20Guide/) -- [GitHub Discussions](https://github.com/TriliumNext/Trilium/discussions) -- [Matrix Chat](https://matrix.to/#/#triliumnext:matrix.org) - -### For Developers -- [Developer Guide](Developer%20Guide/Developer%20Guide/) -- [Architecture Docs](ARCHITECTURE.md) -- [GitHub Issues](https://github.com/TriliumNext/Trilium/issues) - -### For Contributors -- [Contributing Guidelines](../README.md#-contribute) -- [Code of Conduct](../CODE_OF_CONDUCT) -- [Developer Setup](Developer%20Guide/Developer%20Guide/Environment%20Setup.md) - ---- - -**Maintained by:** TriliumNext Team -**License:** AGPL-3.0-only -**Repository:** https://github.com/TriliumNext/Trilium From b80cb22985f2090ec060e545df0f810fe3dc5dac Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 18:20:12 +0200 Subject: [PATCH 120/136] chore(deps): clean up package lock --- pnpm-lock.yaml | 184 ++----------------------------------------------- 1 file changed, 6 insertions(+), 178 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1054a98c4..d039fcef4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -838,9 +838,6 @@ importers: vite: specifier: 7.1.12 version: 7.1.12(@types/node@24.10.0)(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: - specifier: 4.0.6 - version: 4.0.6(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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) packages/ckeditor5: dependencies: @@ -5002,9 +4999,6 @@ packages: '@ssddanbrown/codemirror-lang-twig@1.0.0': resolution: {integrity: sha512-7WIMIh8Ssc54TooGCY57WU2rKEqZZrcV2tZSVRPtd0gKYsrDEKCSLWpQjUWEx7bdgh3NKHUjq1O4ugIzI/+dwQ==} - '@standard-schema/spec@1.0.0': - resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} - '@stylistic/eslint-plugin@4.4.1': resolution: {integrity: sha512-CEigAk7eOLyHvdgmpZsKFwtiqS2wFwI1fn4j09IU9GmD4euFM4jEBAViWeCqaNLlbX2k2+A/Fq9cje4HQBXuJQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -5803,9 +5797,6 @@ packages: '@vitest/expect@3.2.4': resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==} - '@vitest/expect@4.0.6': - resolution: {integrity: sha512-5j8UUlBVhOjhj4lR2Nt9sEV8b4WtbcYh8vnfhTNA2Kn5+smtevzjNq+xlBuVhnFGXiyPPNzGrOVvmyHWkS5QGg==} - '@vitest/mocker@3.2.4': resolution: {integrity: sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==} peerDependencies: @@ -5817,41 +5808,18 @@ packages: vite: optional: true - '@vitest/mocker@4.0.6': - resolution: {integrity: sha512-3COEIew5HqdzBFEYN9+u0dT3i/NCwppLnO1HkjGfAP1Vs3vti1Hxm/MvcbC4DAn3Szo1M7M3otiAaT83jvqIjA==} - peerDependencies: - msw: ^2.4.9 - vite: ^6.0.0 || ^7.0.0-0 - peerDependenciesMeta: - msw: - optional: true - vite: - optional: true - '@vitest/pretty-format@3.2.4': resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==} - '@vitest/pretty-format@4.0.6': - resolution: {integrity: sha512-4vptgNkLIA1W1Nn5X4x8rLJBzPiJwnPc+awKtfBE5hNMVsoAl/JCCPPzNrbf+L4NKgklsis5Yp2gYa+XAS442g==} - '@vitest/runner@3.2.4': resolution: {integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==} - '@vitest/runner@4.0.6': - resolution: {integrity: sha512-trPk5qpd7Jj+AiLZbV/e+KiiaGXZ8ECsRxtnPnCrJr9OW2mLB72Cb824IXgxVz/mVU3Aj4VebY+tDTPn++j1Og==} - '@vitest/snapshot@3.2.4': resolution: {integrity: sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==} - '@vitest/snapshot@4.0.6': - resolution: {integrity: sha512-PaYLt7n2YzuvxhulDDu6c9EosiRuIE+FI2ECKs6yvHyhoga+2TBWI8dwBjs+IeuQaMtZTfioa9tj3uZb7nev1g==} - '@vitest/spy@3.2.4': resolution: {integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==} - '@vitest/spy@4.0.6': - resolution: {integrity: sha512-g9jTUYPV1LtRPRCQfhbMintW7BTQz1n6WXYQYRQ25qkyffA4bjVXjkROokZnv7t07OqfaFKw1lPzqKGk1hmNuQ==} - '@vitest/ui@3.2.4': resolution: {integrity: sha512-hGISOaP18plkzbWEcP/QvtRW1xDXF2+96HbEX6byqQhAUbiS5oH6/9JwW+QsQCIYON2bI6QZBF+2PvOmrRZ9wA==} peerDependencies: @@ -5860,9 +5828,6 @@ packages: '@vitest/utils@3.2.4': resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==} - '@vitest/utils@4.0.6': - resolution: {integrity: sha512-bG43VS3iYKrMIZXBo+y8Pti0O7uNju3KvNn6DrQWhQQKcLavMB+0NZfO1/QBAEbq0MaQ3QjNsnnXlGQvsh0Z6A==} - '@volar/language-core@2.4.13': resolution: {integrity: sha512-MnQJ7eKchJx5Oz+YdbqyFUk8BN6jasdJv31n/7r6/WwlOOv7qzvot6B66887l2ST3bUW4Mewml54euzpJWA6bg==} @@ -6644,10 +6609,6 @@ packages: resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} engines: {node: '>=12'} - chai@6.2.0: - resolution: {integrity: sha512-aUTnJc/JipRzJrNADXVvpVqi6CO0dn3nx4EVPxijri+fj3LUUDyZQOgVeW54Ob3Y1Xh9Iz8f+CgaCl8v0mn9bA==} - engines: {node: '>=18'} - chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -8275,10 +8236,6 @@ packages: resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==} engines: {node: '>=12.0.0'} - expect-type@1.2.2: - resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} - engines: {node: '>=12.0.0'} - exponential-backoff@3.1.2: resolution: {integrity: sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==} @@ -10187,9 +10144,6 @@ packages: magic-string@0.30.18: resolution: {integrity: sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ==} - magic-string@0.30.21: - resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - magicast@0.3.5: resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} @@ -13881,10 +13835,6 @@ packages: resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} engines: {node: '>=14.0.0'} - tinyrainbow@3.0.3: - resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} - engines: {node: '>=14.0.0'} - tinyspy@4.0.3: resolution: {integrity: sha512-t2T/WLB2WRgZ9EpE4jgPJ9w+i66UZfDc8wHh0xrwiRNN+UwH98GIJkTeZqX9rg0i0ptwzqW+uYeIF0T4F8LR7A==} engines: {node: '>=14.0.0'} @@ -14499,40 +14449,6 @@ packages: jsdom: optional: true - vitest@4.0.6: - resolution: {integrity: sha512-gR7INfiVRwnEOkCk47faros/9McCZMp5LM+OMNWGLaDBSvJxIzwjgNFufkuePBNaesGRnLmNfW+ddbUJRZn0nQ==} - engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@types/debug': ^4.1.12 - '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.0.6 - '@vitest/browser-preview': 4.0.6 - '@vitest/browser-webdriverio': 4.0.6 - '@vitest/ui': 4.0.6 - happy-dom: '*' - jsdom: '*' - peerDependenciesMeta: - '@edge-runtime/vm': - optional: true - '@types/debug': - optional: true - '@types/node': - optional: true - '@vitest/browser-playwright': - optional: true - '@vitest/browser-preview': - optional: true - '@vitest/browser-webdriverio': - optional: true - '@vitest/ui': - optional: true - happy-dom: - optional: true - jsdom: - optional: true - void-elements@2.0.1: resolution: {integrity: sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==} engines: {node: '>=0.10.0'} @@ -16068,6 +15984,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-classic@47.1.0': dependencies: @@ -16095,6 +16013,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -16117,6 +16037,8 @@ snapshots: '@ckeditor/ckeditor5-table': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-emoji@47.1.0': dependencies: @@ -20325,8 +20247,6 @@ snapshots: '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 - '@standard-schema/spec@1.0.0': {} - '@stylistic/eslint-plugin@4.4.1(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/utils': 8.46.3(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) @@ -21310,15 +21230,6 @@ snapshots: chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/expect@4.0.6': - dependencies: - '@standard-schema/spec': 1.0.0 - '@types/chai': 5.2.2 - '@vitest/spy': 4.0.6 - '@vitest/utils': 4.0.6 - chai: 6.2.0 - tinyrainbow: 3.0.3 - '@vitest/mocker@3.2.4(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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))': dependencies: '@vitest/spy': 3.2.4 @@ -21328,52 +21239,26 @@ snapshots: msw: 2.7.5(@types/node@24.10.0)(typescript@5.9.3) vite: 7.1.12(@types/node@24.10.0)(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/mocker@4.0.6(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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))': - dependencies: - '@vitest/spy': 4.0.6 - estree-walker: 3.0.3 - magic-string: 0.30.21 - optionalDependencies: - msw: 2.7.5(@types/node@24.10.0)(typescript@5.9.3) - vite: 7.1.12(@types/node@24.10.0)(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/pretty-format@3.2.4': dependencies: tinyrainbow: 2.0.0 - '@vitest/pretty-format@4.0.6': - dependencies: - tinyrainbow: 3.0.3 - '@vitest/runner@3.2.4': dependencies: '@vitest/utils': 3.2.4 pathe: 2.0.3 strip-literal: 3.0.0 - '@vitest/runner@4.0.6': - dependencies: - '@vitest/utils': 4.0.6 - pathe: 2.0.3 - '@vitest/snapshot@3.2.4': dependencies: '@vitest/pretty-format': 3.2.4 magic-string: 0.30.18 pathe: 2.0.3 - '@vitest/snapshot@4.0.6': - dependencies: - '@vitest/pretty-format': 4.0.6 - magic-string: 0.30.21 - pathe: 2.0.3 - '@vitest/spy@3.2.4': dependencies: tinyspy: 4.0.3 - '@vitest/spy@4.0.6': {} - '@vitest/ui@3.2.4(vitest@3.2.4)': dependencies: '@vitest/utils': 3.2.4 @@ -21391,11 +21276,6 @@ snapshots: loupe: 3.1.4 tinyrainbow: 2.0.0 - '@vitest/utils@4.0.6': - dependencies: - '@vitest/pretty-format': 4.0.6 - tinyrainbow: 3.0.3 - '@volar/language-core@2.4.13': dependencies: '@volar/source-map': 2.4.13 @@ -22350,8 +22230,6 @@ snapshots: loupe: 3.1.4 pathval: 2.0.1 - chai@6.2.0: {} - chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -24566,8 +24444,6 @@ snapshots: expect-type@1.2.1: {} - expect-type@1.2.2: {} - exponential-backoff@3.1.2: {} exponential-backoff@3.1.3: {} @@ -26796,10 +26672,6 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 - magic-string@0.30.21: - dependencies: - '@jridgewell/sourcemap-codec': 1.5.5 - magicast@0.3.5: dependencies: '@babel/parser': 7.28.4 @@ -31330,8 +31202,6 @@ snapshots: tinyrainbow@2.0.0: {} - tinyrainbow@3.0.3: {} - tinyspy@4.0.3: {} tldts-core@6.1.86: @@ -32002,48 +31872,6 @@ snapshots: - tsx - yaml - vitest@4.0.6(@types/debug@4.1.12)(@types/node@24.10.0)(@vitest/ui@3.2.4)(happy-dom@20.0.10)(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.0)(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): - dependencies: - '@vitest/expect': 4.0.6 - '@vitest/mocker': 4.0.6(msw@2.7.5(@types/node@24.10.0)(typescript@5.9.3))(vite@7.1.12(@types/node@24.10.0)(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/pretty-format': 4.0.6 - '@vitest/runner': 4.0.6 - '@vitest/snapshot': 4.0.6 - '@vitest/spy': 4.0.6 - '@vitest/utils': 4.0.6 - debug: 4.4.3(supports-color@6.0.0) - es-module-lexer: 1.7.0 - expect-type: 1.2.2 - magic-string: 0.30.21 - pathe: 2.0.3 - picomatch: 4.0.3 - std-env: 3.9.0 - tinybench: 2.9.0 - tinyexec: 0.3.2 - tinyglobby: 0.2.15 - tinyrainbow: 3.0.3 - vite: 7.1.12(@types/node@24.10.0)(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) - why-is-node-running: 2.3.0 - optionalDependencies: - '@types/debug': 4.1.12 - '@types/node': 24.10.0 - '@vitest/ui': 3.2.4(vitest@3.2.4) - happy-dom: 20.0.10 - jsdom: 26.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) - transitivePeerDependencies: - - jiti - - less - - lightningcss - - msw - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - - terser - - tsx - - yaml - void-elements@2.0.1: {} void-elements@3.1.0: {} From 193caf8c219fece9d96c4a6f929ca7fbc265ee95 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 19:06:33 +0200 Subject: [PATCH 121/136] chore: clean up generated type definitions --- .gitignore | 4 - .../ckeditor5-admonition/sample/ckeditor.d.ts | 7 -- .../ckeditor5-admonition/sample/ckeditor.js | 81 ------------------- .../ckeditor5-footnotes/sample/ckeditor.d.ts | 7 -- .../ckeditor5-footnotes/sample/ckeditor.js | 81 ------------------- .../footnote-editing/auto-formatting.js.map | 1 - .../src/footnote-editing/converters.js.map | 1 - .../footnote-editing/footnote-editing.js.map | 1 - .../src/footnote-editing/schema.js.map | 1 - .../sample/ckeditor.d.ts | 7 -- .../sample/ckeditor.js | 81 ------------------- packages/ckeditor5-math/sample/ckeditor.d.ts | 7 -- packages/ckeditor5-math/sample/ckeditor.js | 81 ------------------- .../ckeditor5-math/src/ui/mainformview.js.map | 1 - .../ckeditor5-math/src/ui/mathview.js.map | 1 - .../ckeditor5-mermaid/sample/ckeditor.d.ts | 7 -- packages/ckeditor5-mermaid/sample/ckeditor.js | 81 ------------------- .../src/commands/insertMermaidCommand.js.map | 1 - .../src/commands/mermaidPreviewCommand.js.map | 1 - .../commands/mermaidSourceViewCommand.js.map | 1 - .../commands/mermaidSplitViewCommand.js.map | 1 - .../src/scripts/common/debounce.d.ts | 2 - .../src/scripts/common/debounce.d.ts.map | 1 - .../src/scripts/common/parents.d.ts | 2 - .../src/scripts/common/parents.d.ts.map | 1 - .../src/scripts/common/parsehtml.d.ts | 2 - .../src/scripts/common/parsehtml.d.ts.map | 1 - packages/share-theme/src/scripts/index.d.ts | 3 - .../share-theme/src/scripts/index.d.ts.map | 1 - .../share-theme/src/scripts/modules/api.d.ts | 11 --- .../src/scripts/modules/api.d.ts.map | 1 - .../src/scripts/modules/expanders.d.ts | 2 - .../src/scripts/modules/expanders.d.ts.map | 1 - .../share-theme/src/scripts/modules/math.d.ts | 3 - .../src/scripts/modules/math.d.ts.map | 1 - .../src/scripts/modules/mermaid.d.ts | 2 - .../src/scripts/modules/mermaid.d.ts.map | 1 - .../src/scripts/modules/mobile.d.ts | 2 - .../src/scripts/modules/mobile.d.ts.map | 1 - .../src/scripts/modules/search.d.ts | 2 - .../src/scripts/modules/search.d.ts.map | 1 - .../src/scripts/modules/theme.d.ts | 8 -- .../src/scripts/modules/theme.d.ts.map | 1 - .../share-theme/src/scripts/modules/toc.d.ts | 12 --- .../src/scripts/modules/toc.d.ts.map | 1 - packages/share-theme/src/scripts/test.d.ts | 2 - .../share-theme/src/scripts/test.d.ts.map | 1 - 47 files changed, 520 deletions(-) delete mode 100644 packages/ckeditor5-admonition/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-admonition/sample/ckeditor.js delete mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-footnotes/sample/ckeditor.js delete mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map delete mode 100644 packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map delete mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-keyboard-marker/sample/ckeditor.js delete mode 100644 packages/ckeditor5-math/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-math/sample/ckeditor.js delete mode 100644 packages/ckeditor5-math/src/ui/mainformview.js.map delete mode 100644 packages/ckeditor5-math/src/ui/mathview.js.map delete mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.d.ts delete mode 100644 packages/ckeditor5-mermaid/sample/ckeditor.js delete mode 100644 packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map delete mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map delete mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map delete mode 100644 packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map delete mode 100644 packages/share-theme/src/scripts/common/debounce.d.ts delete mode 100644 packages/share-theme/src/scripts/common/debounce.d.ts.map delete mode 100644 packages/share-theme/src/scripts/common/parents.d.ts delete mode 100644 packages/share-theme/src/scripts/common/parents.d.ts.map delete mode 100644 packages/share-theme/src/scripts/common/parsehtml.d.ts delete mode 100644 packages/share-theme/src/scripts/common/parsehtml.d.ts.map delete mode 100644 packages/share-theme/src/scripts/index.d.ts delete mode 100644 packages/share-theme/src/scripts/index.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/api.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/api.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/expanders.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/expanders.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/math.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/math.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/mermaid.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/mermaid.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/mobile.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/mobile.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/search.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/search.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/theme.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/theme.d.ts.map delete mode 100644 packages/share-theme/src/scripts/modules/toc.d.ts delete mode 100644 packages/share-theme/src/scripts/modules/toc.d.ts.map delete mode 100644 packages/share-theme/src/scripts/test.d.ts delete mode 100644 packages/share-theme/src/scripts/test.d.ts.map diff --git a/.gitignore b/.gitignore index 81eb71234..b2c4e3c46 100644 --- a/.gitignore +++ b/.gitignore @@ -49,7 +49,3 @@ upload # docs site/ - -# TypeScript and JavaScript maps -*.js.map -*.d.ts.map diff --git a/packages/ckeditor5-admonition/sample/ckeditor.d.ts b/packages/ckeditor5-admonition/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-admonition/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-admonition/sample/ckeditor.js b/packages/ckeditor5-admonition/sample/ckeditor.js deleted file mode 100644 index d61e2e416..000000000 --- a/packages/ckeditor5-admonition/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Admonition from '../src/admonition.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Admonition, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'admonition', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.d.ts b/packages/ckeditor5-footnotes/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-footnotes/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-footnotes/sample/ckeditor.js b/packages/ckeditor5-footnotes/sample/ckeditor.js deleted file mode 100644 index 77a18d9fd..000000000 --- a/packages/ckeditor5-footnotes/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Footnotes from '../src/footnotes.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Footnotes, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'footnotes', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map deleted file mode 100644 index e5a24d9f6..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-editing/auto-formatting.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auto-formatting.js","sourceRoot":"","sources":["auto-formatting.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map deleted file mode 100644 index 8d92168fe..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-editing/converters.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"converters.js","sourceRoot":"","sources":["converters.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map deleted file mode 100644 index 45a94eb8a..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-editing/footnote-editing.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"footnote-editing.js","sourceRoot":"","sources":["footnote-editing.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,qBAAqB,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,UAAU,EAAS,YAAY,EAAE,MAAM,EAAoB,sCAAsC,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAEnJ,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,MAAM;IAE3C,MAAM,KAAK,UAAU;QAC3B,OAAO,kBAA2B,CAAC;IACpC,CAAC;IAEM,MAAM,KAAK,QAAQ;QACzB,OAAO,CAAE,MAAM,EAAE,UAAU,CAAW,CAAC;IACxC,CAAC;IAED;;KAEI;IACJ,IAAW,WAAW;QACrB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACzD,IAAK,CAAC,WAAW,EAAG,CAAC;YACpB,MAAM,IAAI,KAAK,CAAE,sCAAsC,CAAE,CAAC;QAC3D,CAAC;QACD,OAAO,WAAW,CAAC;IACpB,CAAC;IAEM,IAAI;QACV,YAAY,CAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAE,CAAC;QACzC,gBAAgB,CAAE,IAAI,CAAC,MAAM,CAAE,CAAC;QAEhC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAE,QAAQ,CAAC,cAAc,EAAE,IAAI,qBAAqB,CAAE,IAAI,CAAC,MAAM,CAAE,CAAE,CAAC;QAE9F,yBAAyB,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAE,CAAC;QAE3D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAC5B,aAAa,EACb,CAAE,SAAS,EAAE,KAAK,EAAG,EAAE;YACtB,MAAM,WAAW,GAAQ,SAAS,CAAC,MAAM,CAAC;YAC1C,MAAM,SAAS,GAAG,CAAE,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,CAAE,CAAC;YACzD,uFAAuF;YACvF,IAAK,SAAS,CAAC,IAAI,CAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,iBAAiB,CAAE,EAAG,CAAC;gBAChH,IAAI,CAAC,eAAe,CAAE,KAAK,CAAE,CAAC;YAC/B,CAAC;YACD,wGAAwG;YACxG,SAAS,CAAC,OAAO,CAAE,QAAQ,CAAC,EAAE;gBAC7B,IAAK,QAAQ,CAAC,IAAI,KAAK,WAAW,IAAI,QAAQ,CAAC,YAAY,KAAK,UAAU,CAAC,aAAa,EAAG,CAAC;oBAC3F,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,QAAQ,CAAC;oBACzD,MAAM,QAAQ,GAAG,CAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAE,CAAC,IAAI,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,CAAE,CAAC;oBAC9G,MAAM,UAAU,GAAG,QAAQ,YAAY,YAAY,IAAI,QAAQ,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAC;oBACtG,IAAK,CAAC,UAAU,EAAG,CAAC;wBACnB,OAAO;oBACR,CAAC;oBACD,IAAI,CAAC,uBAAuB,CAAE,KAAK,EAAE,GAAI,UAAW,EAAE,EAAE,gBAAgB,CAAE,CAAC;gBAC5E,CAAC;YACF,CAAC,CAAE,CAAC;QACL,CAAC,EACD,EAAE,QAAQ,EAAE,MAAM,EAAE,CACpB,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,mEAAmE;QACnE,2BAA2B;QAC3B,8HAA8H;QAC9H,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAC5B,qBAAqB,EACrB,sCAAsC,CAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CACxE,WAAW,CAAC,YAAY,CAAE,UAAU,CAAC,iBAAiB,CAAE,CACxD,CACD,CAAC;IACH,CAAC;IAED;;;;;KAKI;IACI,aAAa;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,QAAQ,CACZ,YAAY,EACZ,QAAQ,EACR,CAAE,GAAG,EAAE,IAAI,EAAG,EAAE;YACf,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YAClC,MAAM,cAAc,GAAG,GAAG,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;YAC1D,MAAM,eAAe,GAAG,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;YACxD,MAAM,iBAAiB,GAAG,GAAG,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;YAC3D,IAAK,CAAC,eAAe,IAAI,CAAC,iBAAiB,EAAG,CAAC;gBAC9C,MAAM,IAAI,KAAK,CAAE,qEAAqE,CAAE,CAAC;YAC1F,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAE,WAAW,CAAC,EAAE;gBACvC,kEAAkE;gBAClE,IAAK,cAAc,IAAI,cAAc,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAE,EAAG,CAAC;oBAClF,IAAI,CAAC,iBAAiB,CAAE,WAAW,CAAE,CAAC;gBACvC,CAAC;gBAED,MAAM,gBAAgB,GAAG,cAAc,IAAI,cAAc,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,CAAC;gBAEjG,MAAM,eAAe,GAAG,gBAAgB,CAAC,CAAC;oBACzC,cAAc,CAAC,CAAC;oBAChB,eAAe,CAAC,YAAY,CAAE,QAAQ,CAAC,YAAY,CAAE,CAAC;gBACvD,IAAK,CAAC,eAAe,EAAG,CAAC;oBACxB,OAAO;gBACR,CAAC;gBAED,MAAM,YAAY,GAAG,eAAe,CAAC,YAAY,CAAE,WAAW,CAAE,CAAC;gBACjE,MAAM,cAAc,GAAG,iBAAiB,CAAC,YAAY,CAAE,WAAW,CAAE,CAAC;gBACrE,MAAM,sBAAsB,GAAG,eAAe,CAAC,YAAY,CAAE,QAAQ,CAAC,eAAe,CAAE,CAAC;gBACxF,IAAK,CAAC,sBAAsB,IAAI,CAAC,cAAc,IAAI,CAAC,YAAY,EAAG,CAAC;oBACnE,OAAO;gBACR,CAAC;gBAED,MAAM,eAAe,GAAG,cAAc,CAAC,SAAS,KAAK,CAAC,IAAI,sBAAsB,CAAC,UAAU,KAAK,CAAC,CAAC;gBAElG,IAAK,gBAAgB,IAAI,eAAe,EAAG,CAAC;oBAC3C,IAAI,CAAC,eAAe,CAAE,WAAW,EAAE,eAAe,CAAE,CAAC;oBACrD,IAAI,CAAC,cAAc,EAAE,CAAC;oBACtB,GAAG,CAAC,IAAI,EAAE,CAAC;gBACZ,CAAC;YACF,CAAC,CAAE,CAAC;QACL,CAAC,EACD,EAAE,QAAQ,EAAE,MAAM,EAAE,CACpB,CAAC;IACH,CAAC;IAED;;;;;;KAMI;IACI,cAAc,CAAE,WAAwB,EAAE,eAA6B;QAC9E,MAAM,QAAQ,GAAG,WAAW,CAAC,aAAa,CAAE,eAAe,CAAE,CAAC;QAC9D,WAAW,CAAC,aAAa,CAAE,WAAW,EAAE,eAAe,CAAE,CAAC;QAC1D,WAAW,CAAC,MAAM,CAAE,QAAQ,CAAE,CAAC;IAChC,CAAC;IAED;;;;;KAKI;IACI,eAAe,CAAE,WAAwB,EAAE,QAAsB;QACxE,kDAAkD;QAClD,qCAAqC;QACrC,IAAK,CAAC,IAAI,CAAC,MAAM,EAAG,CAAC;YACpB,OAAO;QACR,CAAC;QACD,MAAM,eAAe,GAAG,QAAQ,CAAC,YAAY,CAAE,QAAQ,CAAC,eAAe,CAAE,CAAC;QAE1E,IAAK,CAAC,eAAe,EAAG,CAAC;YACxB,WAAW,CAAC,MAAM,CAAE,QAAQ,CAAE,CAAC;YAC/B,OAAO;QACR,CAAC;QACD,MAAM,KAAK,GAAG,eAAe,CAAC,aAAa,CAAE,QAAQ,CAAE,CAAC;QACxD,MAAM,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAC;QAC1D,IAAI,CAAC,iBAAiB,CAAE,WAAW,EAAE,GAAI,EAAG,EAAE,CAAE,CAAC;QAEjD,WAAW,CAAC,MAAM,CAAE,QAAQ,CAAE,CAAC;QAC/B,sDAAsD;QACtD,IAAK,eAAe,CAAC,UAAU,KAAK,CAAC,EAAG,CAAC;YACxC,WAAW,CAAC,MAAM,CAAE,eAAe,CAAE,CAAC;YACtC,IAAI,CAAC,iBAAiB,CAAE,WAAW,CAAE,CAAC;QACvC,CAAC;aAAM,CAAC;YACP,IAAK,KAAK,IAAI,IAAI,EAAG,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAE,kBAAkB,CAAE,CAAC;YACvC,CAAC;YACD,mFAAmF;YACnF,mFAAmF;YACnF,sFAAsF;YACtF,iBAAiB;YACjB,MAAM,gBAAgB,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAE,KAAK,CAAE,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAE,CAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,CAAE,GAAG,CAAC,CAAE,CAAC;YAC1H,IAAK,CAAC,CAAE,gBAAgB,YAAY,YAAY,CAAE,EAAG,CAAC;gBACrD,OAAO;YACR,CAAC;YAED,MAAM,oBAAoB,GAAG,qBAAqB,CAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,CAC5F,OAAO,CAAC,EAAE,CAAE,SAAS,EAAE,WAAW,CAAE,CACpC,CAAC,GAAG,EAAE,CAAC;YAER,IAAK,oBAAoB,EAAG,CAAC;gBAC5B,WAAW,CAAC,YAAY,CAAE,oBAAoB,EAAE,KAAK,CAAE,CAAC;YACzD,CAAC;QACF,CAAC;QACD,IAAK,KAAK,IAAI,IAAI,EAAG,CAAC;YACrB,MAAM,IAAI,KAAK,CAAE,kBAAkB,CAAE,CAAC;QACvC,CAAC;QACD,gCAAgC;QAChC,MAAM,mBAAmB,GAAG,CAAE,GAAG,eAAe,CAAC,WAAW,EAAE,CAAE,CAAC,KAAK,CAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,CAAE,CAAC;QACrF,KAAM,MAAM,CAAE,CAAC,EAAE,KAAK,CAAE,IAAI,mBAAmB,CAAC,OAAO,EAAE,EAAG,CAAC;YAC5D,WAAW,CAAC,YAAY,CAAE,UAAU,CAAC,aAAa,EAAE,GAAI,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,GAAG,CAAC,GAAG,CAAE,EAAE,EAAE,KAAK,CAAE,CAAC;QACxF,CAAC;IACF,CAAC;IAED;;;;KAII;IACI,iBAAiB,CAAE,WAAwB,EAAE,aAAiC,SAAS;QAC9F,MAAM,UAAU,GAAe,EAAE,CAAC;QAClC,IAAK,CAAC,IAAI,CAAC,WAAW,EAAG,CAAC;YACzB,MAAM,IAAI,KAAK,CAAE,+BAA+B,CAAE,CAAC;QACpD,CAAC;QACD,MAAM,kBAAkB,GAAG,qBAAqB,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CACpF,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CAAE,CAC7C,CAAC;QACF,kBAAkB,CAAC,OAAO,CAAE,iBAAiB,CAAC,EAAE;YAC/C,MAAM,EAAE,GAAG,iBAAiB,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAC;YACnE,IAAK,CAAC,UAAU,IAAI,EAAE,KAAK,UAAU,EAAG,CAAC;gBACxC,UAAU,CAAC,IAAI,CAAE,iBAAiB,CAAE,CAAC;YACtC,CAAC;QACF,CAAC,CAAE,CAAC;QACJ,KAAM,MAAM,IAAI,IAAI,UAAU,EAAG,CAAC;YACjC,WAAW,CAAC,MAAM,CAAE,IAAI,CAAE,CAAC;QAC5B,CAAC;IACF,CAAC;IAED;;;;;KAKI;IACI,uBAAuB,CAAE,KAAY,EAAE,UAAkB,EAAE,gBAAwB;QAC1F,MAAM,kBAAkB,GAAG,qBAAqB,CAC/C,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CAAE,IAAI,CAAC,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,KAAK,UAAU,CAC5G,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAE,KAAK,EAAE,MAAM,CAAC,EAAE;YAChD,kBAAkB,CAAC,OAAO,CAAE,iBAAiB,CAAC,EAAE;gBAC/C,MAAM,CAAC,YAAY,CAAE,UAAU,CAAC,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,CAAE,CAAC;YACtF,CAAC,CAAE,CAAC;QACL,CAAC,CAAE,CAAC;IACL,CAAC;IAED;;;;KAII;IACI,eAAe,CAAE,KAAY;QACpC,MAAM,kBAAkB,GAAG,qBAAqB,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CACpF,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CAAE,CAC7C,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAE,kBAAkB,CAAC,GAAG,CAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAE,CAAE,CAAC;QACpG,MAAM,gBAAgB,GAAG,CAAE,GAAG,SAAS,CAAE,CAAC,GAAG,CAAE,EAAE,CAAC,EAAE,CACnD,iBAAiB,CAChB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,IAAI,CAAC,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,KAAK,EAAE,CAC/F,CACD,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAE,KAAK,EAAE,MAAM,CAAC,EAAE;;YAChD,MAAM,eAAe,GAAG,iBAAiB,CAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAC7E,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAE,CAC3C,CAAC;YACF,IAAK,CAAC,eAAe,EAAG,CAAC;gBACxB,OAAO;YACR,CAAC;YAED;;;;SAIM;YACN,KAAM,MAAM,QAAQ,IAAI,gBAAgB,CAAC,OAAO,EAAE,EAAG,CAAC;gBACrD,IAAK,QAAQ,EAAG,CAAC;oBAChB,MAAM,CAAC,IAAI,CAAE,MAAM,CAAC,aAAa,CAAE,QAAQ,CAAE,EAAE,eAAe,EAAE,CAAC,CAAE,CAAC;gBACrE,CAAC;YACF,CAAC;YAED;;SAEM;YACN,KAAM,MAAM,QAAQ,IAAI,qBAAqB,CAAE,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,EAAE,CAChF,CAAC,CAAC,EAAE,CAAE,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAE,CACxC,EAAG,CAAC;gBACJ,MAAM,KAAK,GAAG,GAAI,CAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,aAAa,CAAE,QAAQ,CAAE,mCAAI,CAAC,CAAC,CAAE,GAAG,CAAE,EAAE,CAAC;gBAC9E,IAAK,QAAQ,EAAG,CAAC;oBAChB,MAAM,CAAC,YAAY,CAAE,UAAU,CAAC,aAAa,EAAE,KAAK,EAAE,QAAQ,CAAE,CAAC;gBAClE,CAAC;gBACD,MAAM,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAE,UAAU,CAAC,UAAU,CAAE,CAAC;gBAE1D,QAAQ;gBACR,gGAAgG;gBAChG,gGAAgG;gBAChG,+EAA+E;gBAC/E,MAAM;gBACN,IAAK,EAAE,EAAG,CAAC;oBACV,IAAI,CAAC,uBAAuB,CAAE,KAAK,EAAE,GAAI,EAAG,EAAE,EAAE,GAAI,KAAM,EAAE,CAAE,CAAC;gBAChE,CAAC;YACF,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map b/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map deleted file mode 100644 index e10b42239..000000000 --- a/packages/ckeditor5-footnotes/src/footnote-editing/schema.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"schema.js","sourceRoot":"","sources":["schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAE,MAAmB,EAAS,EAAE;IAC3D;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,EAAE;QAC1C,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,QAAQ;QACpB,OAAO,EAAE,OAAO;QAChB,aAAa,EAAE,QAAQ,CAAC,YAAY;QACpC,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,CAAE;KAC/C,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,YAAY,EAAE;QACvC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAE;KAChG,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,EAAE;QAC1C,OAAO,EAAE,QAAQ,CAAC,YAAY;QAC9B,cAAc,EAAE,OAAO;QACvB,eAAe,EAAE,CAAE,UAAU,CAAC,eAAe,CAAE;KAC/C,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,iBAAiB,EAAE;QAC5C,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,CAAE,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAE;KAClG,CAAE,CAAC;IAEJ;;KAEI;IACJ,MAAM,CAAC,QAAQ,CAAE,QAAQ,CAAC,gBAAgB,EAAE;QAC3C,OAAO,EAAE,QAAQ,CAAC,YAAY;QAC9B,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,CAAE,UAAU,CAAC,gBAAgB,EAAE,UAAU,CAAC,UAAU,CAAE;KACvE,CAAE,CAAC;IAEJ,MAAM,CAAC,aAAa,CAAE,CAAE,OAAO,EAAE,eAAe,EAAG,EAAE;QACpD,IAAK,OAAO,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,CAAE,IAAI,eAAe,CAAC,IAAI,KAAK,QAAQ,CAAC,eAAe,EAAG,CAAC;YACzG,OAAO,KAAK,CAAC;QACd,CAAC;QACD,IAAK,OAAO,CAAC,QAAQ,CAAE,QAAQ,CAAC,eAAe,CAAE,IAAI,eAAe,CAAC,IAAI,KAAK,UAAU,EAAG,CAAC;YAC3F,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC,CAAE,CAAC;AACL,CAAC,CAAC"} \ No newline at end of file diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts b/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-keyboard-marker/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js b/packages/ckeditor5-keyboard-marker/sample/ckeditor.js deleted file mode 100644 index 850bb57e8..000000000 --- a/packages/ckeditor5-keyboard-marker/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Kbd from '../src/kbd.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Kbd, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'keyboardMarker', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-math/sample/ckeditor.d.ts b/packages/ckeditor5-math/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-math/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-math/sample/ckeditor.js b/packages/ckeditor5-math/sample/ckeditor.js deleted file mode 100644 index 370a359aa..000000000 --- a/packages/ckeditor5-math/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Math from '../src/math.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Math, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'math', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-math/src/ui/mainformview.js.map b/packages/ckeditor5-math/src/ui/mainformview.js.map deleted file mode 100644 index f1a361307..000000000 --- a/packages/ckeditor5-math/src/ui/mainformview.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mainformview.js","sourceRoot":"","sources":["mainformview.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/ckeditor5-math/src/ui/mathview.js.map b/packages/ckeditor5-math/src/ui/mathview.js.map deleted file mode 100644 index b63bd4e19..000000000 --- a/packages/ckeditor5-math/src/ui/mathview.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mathview.js","sourceRoot":"","sources":["mathview.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,IAAI;IAYzC,YACC,MAOY,EACZ,QAA6C,EAC7C,MAAc,EACd,UAAkB,EAClB,gBAA+B,EAC/B,kBAAgC;QAEhC,KAAK,CAAE,MAAM,CAAE,CAAC;QAEhB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAEzC,IAAI,CAAC,GAAG,CAAE,OAAO,EAAE,EAAE,CAAE,CAAC;QACxB,IAAI,CAAC,GAAG,CAAE,SAAS,EAAE,KAAK,CAAE,CAAC;QAE7B,IAAI,CAAC,EAAE,CAAE,QAAQ,EAAE,GAAG,EAAE;YACvB,IAAK,IAAI,CAAC,UAAU,EAAG,CAAC;gBACvB,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,CAAC;QACF,CAAC,CAAE,CAAC;QAEJ,IAAI,CAAC,WAAW,CAAE;YACjB,GAAG,EAAE,KAAK;YACV,UAAU,EAAE;gBACX,KAAK,EAAE,CAAE,IAAI,EAAE,iBAAiB,EAAE,uBAAuB,CAAE;aAC3D;SACD,CAAE,CAAC;IACL,CAAC;IAEM,UAAU;QAChB,IAAK,IAAI,CAAC,OAAO,EAAG,CAAC;YACpB,KAAK,cAAc,CAClB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,OAAO,EACZ,IAAI,EACJ,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,kBAAkB,CACvB,CAAC;QACH,CAAC;IACF,CAAC;IAEe,MAAM;QACrB,KAAK,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.d.ts b/packages/ckeditor5-mermaid/sample/ckeditor.d.ts deleted file mode 100644 index e838419a2..000000000 --- a/packages/ckeditor5-mermaid/sample/ckeditor.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -declare global { - interface Window { - editor: ClassicEditor; - } -} -import { ClassicEditor } from 'ckeditor5'; -import 'ckeditor5/ckeditor5.css'; diff --git a/packages/ckeditor5-mermaid/sample/ckeditor.js b/packages/ckeditor5-mermaid/sample/ckeditor.js deleted file mode 100644 index 92fe6af36..000000000 --- a/packages/ckeditor5-mermaid/sample/ckeditor.js +++ /dev/null @@ -1,81 +0,0 @@ -import { ClassicEditor, Autoformat, Base64UploadAdapter, BlockQuote, Bold, Code, CodeBlock, Essentials, Heading, Image, ImageCaption, ImageStyle, ImageToolbar, ImageUpload, Indent, Italic, Link, List, MediaEmbed, Paragraph, Table, TableToolbar } from 'ckeditor5'; -import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import Mermaid from '../src/mermaid.js'; -import 'ckeditor5/ckeditor5.css'; -ClassicEditor - .create(document.getElementById('editor'), { - licenseKey: 'GPL', - plugins: [ - Mermaid, - Essentials, - Autoformat, - BlockQuote, - Bold, - Heading, - Image, - ImageCaption, - ImageStyle, - ImageToolbar, - ImageUpload, - Indent, - Italic, - Link, - List, - MediaEmbed, - Paragraph, - Table, - TableToolbar, - CodeBlock, - Code, - Base64UploadAdapter - ], - toolbar: [ - 'undo', - 'redo', - '|', - 'mermaid', - '|', - 'heading', - '|', - 'bold', - 'italic', - 'link', - 'code', - 'bulletedList', - 'numberedList', - '|', - 'outdent', - 'indent', - '|', - 'uploadImage', - 'blockQuote', - 'insertTable', - 'mediaEmbed', - 'codeBlock' - ], - image: { - toolbar: [ - 'imageStyle:inline', - 'imageStyle:block', - 'imageStyle:side', - '|', - 'imageTextAlternative' - ] - }, - table: { - contentToolbar: [ - 'tableColumn', - 'tableRow', - 'mergeTableCells' - ] - } -}) - .then(editor => { - window.editor = editor; - CKEditorInspector.attach(editor); - window.console.log('CKEditor 5 is ready.', editor); -}) - .catch(err => { - window.console.error(err.stack); -}); -//# sourceMappingURL=ckeditor.js.map \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map b/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map deleted file mode 100644 index c826455dd..000000000 --- a/packages/ckeditor5-mermaid/src/commands/insertMermaidCommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"insertMermaidCommand.js","sourceRoot":"","sources":["insertMermaidCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,mBAAmB,GAAG;;QAEpB,CAAC;AAET;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,OAAO;IAE/C,OAAO;QACf,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAE/D,IAAK,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,EAAG,CAAC;YAC7D,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,CAAC;IACF,CAAC;IAEQ,OAAO;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,WAAW,CAAC;QAEhB,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,WAAW,GAAG,MAAM,CAAC,aAAa,CAAE,SAAS,EAAE;gBAC9C,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE,mBAAmB;aAC3B,CAAE,CAAC;YAEJ,KAAK,CAAC,aAAa,CAAE,WAAW,CAAE,CAAC;QACpC,CAAC,CAAE,CAAC;QAEJ,OAAO,WAAW,CAAC;IACpB,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map deleted file mode 100644 index af6477508..000000000 --- a/packages/ckeditor5-mermaid/src/commands/mermaidPreviewCommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidPreviewCommand.js","sourceRoot":"","sources":["mermaidPreviewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,OAAO;IAEhD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,SAAS,CAAE,CAAC;IAC7C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,IAAI,WAAW,EAAE,CAAC;YACjB,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;gBACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,SAAS,EAAG,CAAC;oBAC/D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,SAAS,EAAE,WAAW,CAAE,CAAC;gBAC9D,CAAC;YACF,CAAC,CAAE,CAAC;QACL,CAAC;IACF,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map deleted file mode 100644 index 40b7b1ea2..000000000 --- a/packages/ckeditor5-mermaid/src/commands/mermaidSourceViewCommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidSourceViewCommand.js","sourceRoot":"","sources":["mermaidSourceViewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,OAAO;IAEnD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,QAAQ,CAAE,CAAC;IAC5C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,QAAQ,EAAG,CAAC;gBAC9D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,CAAE,CAAC;YAC7D,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map b/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map deleted file mode 100644 index cea071e90..000000000 --- a/packages/ckeditor5-mermaid/src/commands/mermaidSplitViewCommand.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaidSplitViewCommand.js","sourceRoot":"","sources":["mermaidSplitViewCommand.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAgB,MAAM,WAAW,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,OAAO;IAElD,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1D,MAAM,eAAe,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC/D,MAAM,wBAAwB,GAAG,eAAe,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,CAAC;QAEvF,IAAK,wBAAwB,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,YAAY,CAAE,SAAS,CAAE,CAAA,EAAG,CAAC;YAClG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,eAAe,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,SAAS,CAAE,MAAM,EAAE,OAAO,CAAE,CAAC;IAC3C,CAAC;IAEQ,OAAO;;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAI,MAAA,iBAAiB,CAAC,eAAe,EAAE,0CAAE,MAAM,CAAA,CAAiB,CAAC;QAE5H,KAAK,CAAC,MAAM,CAAE,MAAM,CAAC,EAAE;YACtB,IAAK,WAAW,CAAC,YAAY,CAAE,aAAa,CAAE,KAAK,OAAO,EAAG,CAAC;gBAC7D,MAAM,CAAC,YAAY,CAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAE,CAAC;YAC5D,CAAC;QACF,CAAC,CAAE,CAAC;IACL,CAAC;CACD"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/debounce.d.ts b/packages/share-theme/src/scripts/common/debounce.d.ts deleted file mode 100644 index 0f211accc..000000000 --- a/packages/share-theme/src/scripts/common/debounce.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function debounce unknown>(executor: T, delay: number): (...args: Parameters) => void; -//# sourceMappingURL=debounce.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/debounce.d.ts.map b/packages/share-theme/src/scripts/common/debounce.d.ts.map deleted file mode 100644 index b93906d0e..000000000 --- a/packages/share-theme/src/scripts/common/debounce.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["debounce.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,IAElF,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI,CAQhD"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parents.d.ts b/packages/share-theme/src/scripts/common/parents.d.ts deleted file mode 100644 index 71e3141fb..000000000 --- a/packages/share-theme/src/scripts/common/parents.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function parents(el: T, selector: string): HTMLElement[]; -//# sourceMappingURL=parents.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parents.d.ts.map b/packages/share-theme/src/scripts/common/parents.d.ts.map deleted file mode 100644 index 6de9cf805..000000000 --- a/packages/share-theme/src/scripts/common/parents.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parents.d.ts","sourceRoot":"","sources":["parents.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,iBAM7E"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parsehtml.d.ts b/packages/share-theme/src/scripts/common/parsehtml.d.ts deleted file mode 100644 index 14388138c..000000000 --- a/packages/share-theme/src/scripts/common/parsehtml.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function parseHTML(html: string, fragment?: boolean): Node | NodeListOf; -//# sourceMappingURL=parsehtml.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/common/parsehtml.d.ts.map b/packages/share-theme/src/scripts/common/parsehtml.d.ts.map deleted file mode 100644 index 666bc507a..000000000 --- a/packages/share-theme/src/scripts/common/parsehtml.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parsehtml.d.ts","sourceRoot":"","sources":["parsehtml.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,UAAQ,gCAM/D"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/index.d.ts b/packages/share-theme/src/scripts/index.d.ts deleted file mode 100644 index e8e54e326..000000000 --- a/packages/share-theme/src/scripts/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import "highlight.js/styles/default.css"; -import "@triliumnext/ckeditor5/src/theme/ck-content.css"; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/index.d.ts.map b/packages/share-theme/src/scripts/index.d.ts.map deleted file mode 100644 index 251337575..000000000 --- a/packages/share-theme/src/scripts/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAQA,OAAO,iCAAiC,CAAC;AACzC,OAAO,iDAAiD,CAAC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/api.d.ts b/packages/share-theme/src/scripts/modules/api.d.ts deleted file mode 100644 index 5f21d8839..000000000 --- a/packages/share-theme/src/scripts/modules/api.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -/** - * Fetch note with given ID from backend - * - * @param noteId of the given note to be fetched. If false, fetches current note. - */ -declare function fetchNote(noteId?: string | null): Promise; -declare const _default: { - fetchNote: typeof fetchNote; -}; -export default _default; -//# sourceMappingURL=api.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/api.d.ts.map b/packages/share-theme/src/scripts/modules/api.d.ts.map deleted file mode 100644 index 2867b765b..000000000 --- a/packages/share-theme/src/scripts/modules/api.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,iBAAe,SAAS,CAAC,MAAM,GAAE,MAAM,GAAG,IAAW,gBAQpD;;;;AAED,wBAEE"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/expanders.d.ts b/packages/share-theme/src/scripts/modules/expanders.d.ts deleted file mode 100644 index b3b2fee98..000000000 --- a/packages/share-theme/src/scripts/modules/expanders.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function setupExpanders(): void; -//# sourceMappingURL=expanders.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/expanders.d.ts.map b/packages/share-theme/src/scripts/modules/expanders.d.ts.map deleted file mode 100644 index 725e08f8c..000000000 --- a/packages/share-theme/src/scripts/modules/expanders.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"expanders.d.ts","sourceRoot":"","sources":["expanders.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,OAAO,UAAU,cAAc,SAkBrC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/math.d.ts b/packages/share-theme/src/scripts/modules/math.d.ts deleted file mode 100644 index 0efafccd5..000000000 --- a/packages/share-theme/src/scripts/modules/math.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import "katex/dist/katex.min.css"; -export default function setupMath(): Promise; -//# sourceMappingURL=math.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/math.d.ts.map b/packages/share-theme/src/scripts/modules/math.d.ts.map deleted file mode 100644 index 07dc005cf..000000000 --- a/packages/share-theme/src/scripts/modules/math.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["math.ts"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,CAAC;AAElC,wBAA8B,SAAS,kBAatC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mermaid.d.ts b/packages/share-theme/src/scripts/modules/mermaid.d.ts deleted file mode 100644 index 5f8cdb13c..000000000 --- a/packages/share-theme/src/scripts/modules/mermaid.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function setupMermaid(): Promise; -//# sourceMappingURL=mermaid.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mermaid.d.ts.map b/packages/share-theme/src/scripts/modules/mermaid.d.ts.map deleted file mode 100644 index 58a556c4a..000000000 --- a/packages/share-theme/src/scripts/modules/mermaid.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mermaid.d.ts","sourceRoot":"","sources":["mermaid.ts"],"names":[],"mappings":"AAAA,wBAA8B,YAAY,kBAqBzC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mobile.d.ts b/packages/share-theme/src/scripts/modules/mobile.d.ts deleted file mode 100644 index 284da2404..000000000 --- a/packages/share-theme/src/scripts/modules/mobile.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function setupMobileMenu(): void; -//# sourceMappingURL=mobile.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/mobile.d.ts.map b/packages/share-theme/src/scripts/modules/mobile.d.ts.map deleted file mode 100644 index caf6de3c8..000000000 --- a/packages/share-theme/src/scripts/modules/mobile.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mobile.d.ts","sourceRoot":"","sources":["mobile.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,eAAe,SAqBtC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/search.d.ts b/packages/share-theme/src/scripts/modules/search.d.ts deleted file mode 100644 index 737734b84..000000000 --- a/packages/share-theme/src/scripts/modules/search.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export default function setupSearch(): void; -//# sourceMappingURL=search.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/search.d.ts.map b/packages/share-theme/src/scripts/modules/search.d.ts.map deleted file mode 100644 index 78491705d..000000000 --- a/packages/share-theme/src/scripts/modules/search.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["search.ts"],"names":[],"mappings":"AA0BA,MAAM,CAAC,OAAO,UAAU,WAAW,SAqClC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/theme.d.ts b/packages/share-theme/src/scripts/modules/theme.d.ts deleted file mode 100644 index f357f8ddd..000000000 --- a/packages/share-theme/src/scripts/modules/theme.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -/** - * Note: - * - * - Setting of the .theme-dark or .theme-light is done in the share template's to avoid a flash. - * - Setting of the value of the checkbox is also done in the template, near the definition of the input box. - */ -export default function setupThemeSelector(): void; -//# sourceMappingURL=theme.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/theme.d.ts.map b/packages/share-theme/src/scripts/modules/theme.d.ts.map deleted file mode 100644 index 560bad1fa..000000000 --- a/packages/share-theme/src/scripts/modules/theme.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["theme.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,MAAM,CAAC,OAAO,UAAU,kBAAkB,SAOzC"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/toc.d.ts b/packages/share-theme/src/scripts/modules/toc.d.ts deleted file mode 100644 index e6e80805c..000000000 --- a/packages/share-theme/src/scripts/modules/toc.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -/** - * The ToC is now generated in the page template so - * it even exists for users without client-side js - * and that means it loads with the page so it avoids - * all potential reshuffling or layout recalculations. - * - * So, all this function needs to do is make the links - * perform smooth animation, and adjust the "active" - * entry as the user scrolls. - */ -export default function setupToC(): void; -//# sourceMappingURL=toc.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/modules/toc.d.ts.map b/packages/share-theme/src/scripts/modules/toc.d.ts.map deleted file mode 100644 index 1d2a8b0ce..000000000 --- a/packages/share-theme/src/scripts/modules/toc.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"toc.d.ts","sourceRoot":"","sources":["toc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,SAoC/B"} \ No newline at end of file diff --git a/packages/share-theme/src/scripts/test.d.ts b/packages/share-theme/src/scripts/test.d.ts deleted file mode 100644 index 9bcc4712a..000000000 --- a/packages/share-theme/src/scripts/test.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export {}; -//# sourceMappingURL=test.d.ts.map \ No newline at end of file diff --git a/packages/share-theme/src/scripts/test.d.ts.map b/packages/share-theme/src/scripts/test.d.ts.map deleted file mode 100644 index ffac09233..000000000 --- a/packages/share-theme/src/scripts/test.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"test.d.ts","sourceRoot":"","sources":["test.ts"],"names":[],"mappings":""} \ No newline at end of file From 3359ff54700306b215471fb41c9580ba914ea97c Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 22:53:42 +0200 Subject: [PATCH 122/136] docs(dev): update database structure --- docs/Developer Guide/!!!meta.json | 116 ++++++++++++++---- .../Database/Database structure/notes.md | 4 +- .../Database/Database structure/revisions.md | 2 +- .../Database/Database structure/sessions.md | 8 ++ .../Database/Database structure/user_data.md | 17 +++ .../Developer Guide/Architecture/Security.md | 4 +- .../Concepts/Synchronisation.md | 2 +- .../Developer Guide/Documentation.md | 2 +- docs/User Guide/!!!meta.json | 62 +++++----- 9 files changed, 157 insertions(+), 60 deletions(-) create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/sessions.md create mode 100644 docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/user_data.md diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index 397bdcab4..a6c26628d 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -15,6 +15,20 @@ "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "T2W7WCZrYZBU", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "cxfTSHIUQtt2", + "isInheritable": false, + "position": 20 + }, { "type": "label", "name": "label:shareAlias", @@ -35,20 +49,6 @@ "value": "developer-guide", "isInheritable": false, "position": 30 - }, - { - "type": "relation", - "name": "internalLink", - "value": "T2W7WCZrYZBU", - "isInheritable": false, - "position": 40 - }, - { - "type": "relation", - "name": "internalLink", - "value": "cxfTSHIUQtt2", - "isInheritable": false, - "position": 50 } ], "format": "markdown", @@ -245,6 +245,13 @@ "value": "database", "isInheritable": false, "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-data", + "isInheritable": false, + "position": 30 } ], "format": "markdown", @@ -590,13 +597,6 @@ "type": "text", "mime": "text/html", "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "VIcWnKGs0sMh", - "isInheritable": false, - "position": 10 - }, { "type": "relation", "name": "internalLink", @@ -624,6 +624,13 @@ "value": "notes", "isInheritable": false, "position": 40 + }, + { + "type": "relation", + "name": "internalLink", + "value": "VIcWnKGs0sMh", + "isInheritable": false, + "position": 50 } ], "format": "markdown", @@ -765,6 +772,71 @@ "format": "markdown", "dataFileName": "revisions.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "6DG1au6rgOTl", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "6DG1au6rgOTl" + ], + "title": "sessions", + "notePosition": 66, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 20 + }, + { + "type": "label", + "name": "shareAlias", + "value": "sessions", + "isInheritable": false, + "position": 30 + } + ], + "format": "markdown", + "dataFileName": "sessions.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "zWY2LKmas9os", + "notePath": [ + "jdjRLhLV3TtI", + "MhwWMgxwDTZL", + "pRZhrVIGCbMu", + "vNMojjUN76jc", + "zWY2LKmas9os" + ], + "title": "user_data", + "notePosition": 76, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-table", + "isInheritable": false, + "position": 20 + } + ], + "format": "markdown", + "dataFileName": "user_data.md", + "attachments": [] } ] } @@ -817,7 +889,7 @@ "name": "internalLink", "value": "Jg7clqogFOyD", "isInheritable": false, - "position": 20 + "position": 10 }, { "type": "label", diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/notes.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/notes.md index 19cb4a322..108ea8b26 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/notes.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/notes.md @@ -6,10 +6,10 @@ | `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../../../Concepts/Protected%20entities.md), `0` otherwise. | | `type` | Text | Non-null | `"text"` | The type of note (i.e. `text`, `file`, `code`, `relationMap`, `mermaid`, `canvas`). | | `mime` | Text | Non-null | `"text/html"` | The MIME type of the note (e.g. `text/html`).. Note that it can be an empty string in some circumstances, but not null. | +| `blobId` | Text | Nullable | `null` | The corresponding ID from blobs. Although it can theoretically be `NULL`, haven't found any such note yet. | | `isDeleted` | Integer | Nullable | 0 | `1` if the entity is [deleted](../../../Concepts/Deleted%20notes.md), `0` otherwise. | | `deleteId` | Text | Non-null | `null` | | | `dateCreated` | Text | Non-null | | Localized creation date (e.g. `2023-11-08 18:43:44.204+0200`) | | `dateModified` | Text | Non-null | | Localized modification date (e.g. `2023-11-08 18:43:44.204+0200`) | | `utcDateCreated` | Text | Non-null | | Creation date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) | -| `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) | -| `blobId` | Text | Nullable | `null` | The corresponding ID from blobs. Although it can theoretically be `NULL`, haven't found any such note yet. | \ No newline at end of file +| `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/revisions.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/revisions.md index fef9ed1ed..faae5421c 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/revisions.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/revisions.md @@ -1,7 +1,7 @@ # revisions | Column Name | Data Type | Nullity | Default value | Description | | --- | --- | --- | --- | --- | -| `revisionId` | TextText | Non-null | | Unique ID of the revision (e.g. `0GjgUqnEudI8`). | +| `revisionId` | Text | Non-null | | Unique ID of the revision (e.g. `0GjgUqnEudI8`). | | `noteId` | Text | Non-null | | ID of the [note](notes.md) this revision belongs to. | | `type` | Text | Non-null | `""` | The type of note (i.e. `text`, `file`, `code`, `relationMap`, `mermaid`, `canvas`). | | `mime` | Text | Non-null | `""` | The MIME type of the note (e.g. `text/html`). | diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/sessions.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/sessions.md new file mode 100644 index 000000000..456236152 --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/sessions.md @@ -0,0 +1,8 @@ +# sessions +Contains user sessions for authentication purposes. The table is almost a direct mapping of the information that `express-session` requires. + +| Column Name | Data Type | Nullity | Default value | Description | +| --- | --- | --- | --- | --- | +| `id` | Text | Non-null | | Unique, non-sequential ID of the session, directly as indicated by `express-session` | +| `data` | Text | Non-null | | The session information, in stringified JSON format. | +| `expires` | Integer | Non-null | | The expiration date of the session, extracted from the session information. Used to rapidly clean up expired sessions. | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/user_data.md b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/user_data.md new file mode 100644 index 000000000..3b27ee30f --- /dev/null +++ b/docs/Developer Guide/Developer Guide/Architecture/Database/Database structure/user_data.md @@ -0,0 +1,17 @@ +# user_data +Contains the user information for two-factor authentication. This table is **not** used for multi-user. + +Relevant files: + +* `apps/server/src/services/encryption/open_id_encryption.ts` + +| Column Name | Data Type | Nullity | Default value | Description | +| --- | --- | --- | --- | --- | +| `tmpID` | Integer | | | A sequential ID of the user. Since only one user is supported by Trilium, this value is always zero. | +| `username` | Text | | | The user name as returned from the OAuth operation. | +| `email` | Text | | | The email as returned from the OAuth operation. | +| `userIDEncryptedDataKey` | Text | | | An encrypted hash of the user subject identifier from the OAuth operation. | +| `userIDVerificationHash` | Text | | | A salted hash of the subject identifier from the OAuth operation. | +| `salt` | Text | | | The verification salt. | +| `derivedKey` | Text | | | A random secure token. | +| `isSetup` | Text | | `"false"` | Indicates that the user has been saved (`"true"`). | \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Architecture/Security.md b/docs/Developer Guide/Developer Guide/Architecture/Security.md index 61fdc7377..f1ef4da77 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Security.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Security.md @@ -383,7 +383,7 @@ for (const blob of orphanedBlobs) { **Process:** -```sh +``` # Check for vulnerabilities npm audit @@ -424,7 +424,7 @@ npm audit fix --force **pnpm Patches:** -```sh +``` # Create patch pnpm patch @ckeditor/ckeditor5 diff --git a/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md b/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md index f97bd3c4e..45a520cb6 100644 --- a/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md +++ b/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md @@ -9,7 +9,7 @@ Trilium implements a **bidirectional synchronization system** that allows users ## Sync Architecture -```mermaid +``` graph TB Desktop1[Desktop 1
      Client] Desktop2[Desktop 2
      Client] diff --git a/docs/Developer Guide/Developer Guide/Documentation.md b/docs/Developer Guide/Developer Guide/Documentation.md index 4da87601a..9d3bb1f07 100644 --- a/docs/Developer Guide/Developer Guide/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Documentation.md @@ -1,5 +1,5 @@ # Documentation -There are multiple types of documentation for Trilium: +There are multiple types of documentation for Trilium: * The _User Guide_ represents the user-facing documentation. This documentation can be browsed by users directly from within Trilium, by pressing F1. * The _Developer's Guide_ represents a set of Markdown documents that present the internals of Trilium, for developers. diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index 86ddd9589..c0be59116 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -25,56 +25,35 @@ { "type": "relation", "name": "internalLink", - "value": "BFs8mudNFgCS", + "value": "gh7bpGYxajRS", "isInheritable": false, "position": 20 }, + { + "type": "relation", + "name": "internalLink", + "value": "BFs8mudNFgCS", + "isInheritable": false, + "position": 30 + }, { "type": "relation", "name": "internalLink", "value": "GTwFsgaA0lCt", "isInheritable": false, - "position": 30 - }, - { - "type": "label", - "name": "shareAlias", - "value": "user-guide", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "label:shareAlias", - "value": "promoted,alias=Slug,single,text", - "isInheritable": true, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-help-circle", - "isInheritable": false, - "position": 30 + "position": 40 }, { "type": "relation", "name": "internalLink", "value": "poXkQfguuA0U", "isInheritable": false, - "position": 40 - }, - { - "type": "relation", - "name": "internalLink", - "value": "WOcw2SLH6tbX", - "isInheritable": false, "position": 50 }, { "type": "relation", "name": "internalLink", - "value": "gh7bpGYxajRS", + "value": "WOcw2SLH6tbX", "isInheritable": false, "position": 60 }, @@ -98,6 +77,27 @@ "value": "9qPsTWBorUhQ", "isInheritable": false, "position": 90 + }, + { + "type": "label", + "name": "shareAlias", + "value": "user-guide", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "label:shareAlias", + "value": "promoted,alias=Slug,single,text", + "isInheritable": true, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-help-circle", + "isInheritable": false, + "position": 30 } ], "format": "markdown", From c2ce36d9634b1fb5ba9dbd77c81c17fe807ee243 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Tue, 4 Nov 2025 23:13:34 +0200 Subject: [PATCH 123/136] docs(user): mention structure difference --- .../doc_notes/en/User Guide/!!!meta.json | 2 +- ...ml => Exporting static HTML for web .html} | 33 ++++++++++++------- .../Concepts/Note Revisions.md | 2 ++ docs/User Guide/!!!meta.json | 4 +-- .../User Guide/Advanced Usage/Sharing.md | 2 +- ...h.md => Exporting static HTML for web .md} | 6 +++- 6 files changed, 33 insertions(+), 16 deletions(-) rename apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/{Exporting HTML for web publish.html => Exporting static HTML for web .html} (58%) rename docs/User Guide/User Guide/Advanced Usage/Sharing/{Exporting HTML for web publish.md => Exporting static HTML for web .md} (87%) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index c9517ba7b..919620267 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]},{"id":"_help_HAIOFBoYIIdO","title":"Nightly release","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Nightly release"},{"name":"iconClass","value":"bx bx-moon","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-window","type":"label"}],"children":[{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_M8IppdwVHSjG","title":"Right pane widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_VqGQnnPGnqAU","title":"CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_SPirpZypehBG","title":"Backend scripts","type":"book","attributes":[{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_fZ2IGYFXjkEy","title":"Server-side imports","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Server-side imports"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting static HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web "},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]},{"id":"_help_HAIOFBoYIIdO","title":"Nightly release","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Nightly release"},{"name":"iconClass","value":"bx bx-moon","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-window","type":"label"}],"children":[{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_M8IppdwVHSjG","title":"Right pane widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_VqGQnnPGnqAU","title":"CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_SPirpZypehBG","title":"Backend scripts","type":"book","attributes":[{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_fZ2IGYFXjkEy","title":"Server-side imports","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Server-side imports"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .html similarity index 58% rename from apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish.html rename to apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .html index 2e8d0601f..f4ddcabc9 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .html @@ -24,23 +24,34 @@

      Apart from normal Sharing, exporting to static HTML files comes with a few subtle differences:

        -
      • The URL structure is different. Where in normal sharing it's something +
      • The URL structure is different. Where in normal sharing it's something along the way of example.com/share/noteid, the notes follow an hierarchical structure, such as docs.triliumnotes.org/user-guide/concepts/navigation/tree-concepts.
      • -
      • The favicon.ico is not handled automatically, it needs to be +
      • The favicon.ico is not handled automatically, it needs to be manually added on the server after the export is generated.
      • -
      • The “Last updated” for notes is not available.
      • -
      • The search functionality works slightly different since the normal one - requires an active API to work. In the static export, search still works - but uses a different mechanism so results might be different.
      • +
      • The “Last updated” for notes is not available.
      • +
      • The search functionality works slightly different since the normal one + requires an active API to work. In the static export, search still works + but uses a different mechanism so results might be different.

      Differences from normal .zip export

        -
      • The name of the files/URLs will prefer shareAlias to allow +
      • The name of the files/URLs will prefer shareAlias to allow for clean URLs.
      • -
      • The export requires a functional web server as the pages will not render +
      • The export requires a functional web server as the pages will not render properly if accessed locally via a web browser due to the use of module scripts.
      • +
      • The directory structure is also slightly different: +
          +
        • A normal HTML export results in an index file and a single directory.
        • +
        • Instead, for static exporting the top-root level becomes the index file + and the child directories are on the root instead.
        • +
        • This makes it possible to easily publish to a website, without forcing + everything but the root note to be in a sub-directory.
        • +
        +

      Testing locally

      As mentioned previously, the exported static pages require a website to @@ -49,9 +60,9 @@ can be installed via:

      npm i -g http-server

      Once installed simply:

        -
      1. Extract the exported .zip file.
      2. -
      3. Inside the extracted directory, run http-server.
      4. -
      5. Access the indicated address (e.g. http://localhost:8080).
      6. +
      7. Extract the exported .zip file.
      8. +
      9. Inside the extracted directory, run http-server.
      10. +
      11. Access the indicated address (e.g. http://localhost:8080).

      Automation

      ETAPI (REST API) could diff --git a/docs/Developer Guide/Developer Guide/Concepts/Note Revisions.md b/docs/Developer Guide/Developer Guide/Concepts/Note Revisions.md index e69de29bb..7624b1d78 100644 --- a/docs/Developer Guide/Developer Guide/Concepts/Note Revisions.md +++ b/docs/Developer Guide/Developer Guide/Concepts/Note Revisions.md @@ -0,0 +1,2 @@ +# Note Revisions +The revision API on the server side is managed by `apps/server/src/routes/api/revisions.ts` \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index c0be59116..baef02e1e 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -12093,7 +12093,7 @@ "R9pX4DGra2Vt", "ycBFjKrrwE9p" ], - "title": "Exporting HTML for web publishing", + "title": "Exporting static HTML for web publishing", "notePosition": 20, "prefix": null, "isExpanded": false, @@ -12130,7 +12130,7 @@ } ], "format": "markdown", - "dataFileName": "Exporting HTML for web publish.md", + "dataFileName": "Exporting static HTML for web .md", "attachments": [] }, { diff --git a/docs/User Guide/User Guide/Advanced Usage/Sharing.md b/docs/User Guide/User Guide/Advanced Usage/Sharing.md index 8738124c8..5f87ce125 100644 --- a/docs/User Guide/User Guide/Advanced Usage/Sharing.md +++ b/docs/User Guide/User Guide/Advanced Usage/Sharing.md @@ -50,7 +50,7 @@ You can view a list of all shared notes by clicking on "Show Shared Notes Subtre * Shared notes are published on the open internet and can be accessed by anyone with the URL unless the notes are password-protected. * The URL's randomness does not provide security, so it is crucial not to share sensitive information through this feature. -* Trilium takes precautions to protect your publicly shared instance from leaking information for non-shared notes, including opening a separate read-only connection to the Database. Depending on your threat model, it might make more sense to use Exporting HTML for web publishing and use battle-tested web servers such as Nginx or Apache to serve static content. +* Trilium takes precautions to protect your publicly shared instance from leaking information for non-shared notes, including opening a separate read-only connection to the Database. Depending on your threat model, it might make more sense to use Exporting HTML for web publishing and use battle-tested web servers such as Nginx or Apache to serve static content. ### Password protection diff --git a/docs/User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish.md b/docs/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .md similarity index 87% rename from docs/User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish.md rename to docs/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .md index 405c79d5a..cc2e30825 100644 --- a/docs/User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish.md +++ b/docs/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .md @@ -1,4 +1,4 @@ -# Exporting HTML for web publishing +# Exporting static HTML for web publishing As described in Sharing, Trilium can act as a public server in which the shared notes are displayed in read-only mode. While this can work in most cases, it's generally not meant for high-traffic websites and since it's running on a Node.js server it can be potentially exploited. Another alternative is to generate static HTML files (just like other static site generators such as [MkDocs](https://www.mkdocs.org/)). Since the normal HTML ZIP export does not contain any styling or additional functionality, Trilium provides a way to export the same layout and style as the Sharing function into static HTML files. @@ -23,6 +23,10 @@ Apart from normal Sharing, e * The name of the files/URLs will prefer `shareAlias` to allow for clean URLs. * The export requires a functional web server as the pages will not render properly if accessed locally via a web browser due to the use of module scripts. +* The directory structure is also slightly different: + * A normal HTML export results in an index file and a single directory. + * Instead, for static exporting the top-root level becomes the index file and the child directories are on the root instead. + * This makes it possible to easily publish to a website, without forcing everything but the root note to be in a sub-directory. ## Testing locally From 7651c58c4772ef143be482cdec8d2a8b90524d59 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 5 Nov 2025 01:33:17 +0000 Subject: [PATCH 124/136] chore(deps): update dependency axios to v1.13.2 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 36 +++++++++++++++++++++++++++++------- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index 2c9b0aefb..dae7a3019 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -67,7 +67,7 @@ "@types/xml2js": "0.4.14", "archiver": "7.0.1", "async-mutex": "0.5.0", - "axios": "1.13.1", + "axios": "1.13.2", "bindings": "1.5.0", "bootstrap": "5.3.8", "chardet": "2.1.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d039fcef4..7aaf72237 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -604,8 +604,8 @@ importers: specifier: 0.5.0 version: 0.5.0 axios: - specifier: 1.13.1 - version: 1.13.1(debug@4.4.3) + specifier: 1.13.2 + version: 1.13.2(debug@4.4.3) bindings: specifier: 1.5.0 version: 1.5.0 @@ -6295,8 +6295,8 @@ packages: resolution: {integrity: sha512-zJAaP9zxTcvTHRlejau3ZOY4V7SRpiByf3/dxx2uyKxxor19tpmpV2QRsTKikckwhaPmr2dVpxxMr7jOCYVp5g==} engines: {node: '>=6.0.0'} - axios@1.13.1: - resolution: {integrity: sha512-hU4EGxxt+j7TQijx1oYdAjw4xuIp1wRQSsbMFwSthCWeBQur1eF+qJ5iQ5sN3Tw8YRzQNKb8jszgBdMDVqwJcw==} + axios@1.13.2: + resolution: {integrity: sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==} b4a@1.6.7: resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==} @@ -15611,6 +15611,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-upload': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-ai@47.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)': dependencies: @@ -15820,6 +15822,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-watchdog': 47.1.0 es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.3)': dependencies: @@ -15984,8 +15988,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-classic@47.1.0': dependencies: @@ -15995,6 +15997,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-decoupled@47.1.0': dependencies: @@ -16004,6 +16008,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-editor-inline@47.1.0': dependencies: @@ -16121,6 +16127,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-font@47.1.0': dependencies: @@ -16184,6 +16192,8 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 '@ckeditor/ckeditor5-widget': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-html-embed@47.1.0': dependencies: @@ -16474,6 +16484,8 @@ snapshots: '@ckeditor/ckeditor5-paste-from-office': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-paste-from-office@47.1.0': dependencies: @@ -16481,6 +16493,8 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-engine': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-real-time-collaboration@47.1.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)': dependencies: @@ -16522,6 +16536,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-revision-history@47.1.0': dependencies: @@ -16599,6 +16615,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-special-characters@47.1.0': dependencies: @@ -16608,6 +16626,8 @@ snapshots: '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-style@47.1.0': dependencies: @@ -16710,6 +16730,8 @@ snapshots: '@ckeditor/ckeditor5-icons': 47.1.0 '@ckeditor/ckeditor5-ui': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 + transitivePeerDependencies: + - supports-color '@ckeditor/ckeditor5-upload@47.1.0': dependencies: @@ -21822,7 +21844,7 @@ snapshots: await-to-js@3.0.0: {} - axios@1.13.1(debug@4.4.3): + axios@1.13.2(debug@4.4.3): dependencies: follow-redirects: 1.15.9(debug@4.4.3) form-data: 4.0.4 From d5bfa466a29b32a357a478b2e6c2d700b5df4686 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 5 Nov 2025 01:34:00 +0000 Subject: [PATCH 125/136] chore(deps): update dependency sax to v1.4.3 --- apps/server/package.json | 2 +- pnpm-lock.yaml | 26 ++++++++++---------------- 2 files changed, 11 insertions(+), 17 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index 2c9b0aefb..0b0536cb3 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -115,7 +115,7 @@ "safe-compare": "1.1.4", "sanitize-filename": "1.6.3", "sanitize-html": "2.17.0", - "sax": "1.4.2", + "sax": "1.4.3", "serve-favicon": "2.5.1", "stream-throttle": "0.1.3", "strip-bom": "5.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d039fcef4..d858645c0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -748,8 +748,8 @@ importers: specifier: 2.17.0 version: 2.17.0 sax: - specifier: 1.4.2 - version: 1.4.2 + specifier: 1.4.3 + version: 1.4.3 serve-favicon: specifier: 2.5.1 version: 2.5.1 @@ -12945,8 +12945,8 @@ packages: engines: {node: '>=14.0.0'} hasBin: true - sax@1.4.2: - resolution: {integrity: sha512-FySGAa0RGcFiN6zfrO9JvK1r7TB59xuzCcTHOBXBNoKgDejlOQCR2KL/FGk3/iDlsqyYg1ELZpOmlg09B01Czw==} + sax@1.4.3: + resolution: {integrity: sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==} saxes@5.0.1: resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} @@ -15757,8 +15757,6 @@ snapshots: '@ckeditor/ckeditor5-core': 47.1.0 '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-code-block@47.1.0(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)': dependencies: @@ -15984,8 +15982,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-classic@47.1.0': dependencies: @@ -16013,8 +16009,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-multi-root@47.1.0': dependencies: @@ -17797,7 +17791,7 @@ snapshots: '@file-type/xml@0.4.3': dependencies: - sax: 1.4.2 + sax: 1.4.3 strtok3: 10.2.2 '@floating-ui/core@1.6.9': @@ -27548,7 +27542,7 @@ snapshots: needle@3.3.1: dependencies: iconv-lite: 0.6.3 - sax: 1.4.2 + sax: 1.4.3 optional: true negotiator@0.6.3: {} @@ -29987,7 +29981,7 @@ snapshots: '@parcel/watcher': 2.5.1 optional: true - sax@1.4.2: {} + sax@1.4.3: {} saxes@5.0.1: dependencies: @@ -30983,7 +30977,7 @@ snapshots: css-what: 6.2.2 csso: 5.0.5 picocolors: 1.1.1 - sax: 1.4.2 + sax: 1.4.3 swagger-jsdoc@6.2.8(openapi-types@12.1.3): dependencies: @@ -32328,12 +32322,12 @@ snapshots: xml2js@0.5.0: dependencies: - sax: 1.4.2 + sax: 1.4.3 xmlbuilder: 11.0.1 xml2js@0.6.2: dependencies: - sax: 1.4.2 + sax: 1.4.3 xmlbuilder: 11.0.1 xmlbuilder@11.0.1: {} From a8bb301296bfdb717080af52402a91ef073b7051 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 5 Nov 2025 01:34:43 +0000 Subject: [PATCH 126/136] chore(deps): update dependency @redocly/cli to v2.11.0 --- apps/build-docs/package.json | 2 +- pnpm-lock.yaml | 42 +++++++++++++++++------------------- 2 files changed, 21 insertions(+), 23 deletions(-) diff --git a/apps/build-docs/package.json b/apps/build-docs/package.json index f22baec81..00196de82 100644 --- a/apps/build-docs/package.json +++ b/apps/build-docs/package.json @@ -11,7 +11,7 @@ "license": "AGPL-3.0-only", "packageManager": "pnpm@10.20.0", "devDependencies": { - "@redocly/cli": "2.10.0", + "@redocly/cli": "2.11.0", "archiver": "7.0.1", "fs-extra": "11.3.2", "react": "19.2.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d039fcef4..c477f4df6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -131,8 +131,8 @@ importers: apps/build-docs: devDependencies: '@redocly/cli': - specifier: 2.10.0 - version: 2.10.0(@opentelemetry/api@1.9.0)(ajv@8.17.1)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5) + specifier: 2.11.0 + version: 2.11.0(@opentelemetry/api@1.9.0)(ajv@8.17.1)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5) archiver: specifier: 7.0.1 version: 7.0.1 @@ -4223,27 +4223,27 @@ packages: '@redocly/ajv@8.11.3': resolution: {integrity: sha512-4P3iZse91TkBiY+Dx5DUgxQ9GXkVJf++cmI0MOyLDxV9b5MUBI4II6ES8zA5JCbO72nKAJxWrw4PUPW+YP3ZDQ==} - '@redocly/cli@2.10.0': - resolution: {integrity: sha512-wKuF/30MSmcc4SJwWTuVnIeFKyW60DVOgxTzvvA+wC1HRBZ24X3UTRyt6MtDEFGcNl6hv5/J9l2lodStwwqelQ==} + '@redocly/cli@2.11.0': + resolution: {integrity: sha512-Wr8me9M5tQ4pZT7Z0Llxojlo8L0GBBt45zceQ8iKyBmJUHWDbKYYdKubZBCH0XktQLEA8HitYBGN1unsxwx20g==} engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} hasBin: true '@redocly/config@0.22.2': resolution: {integrity: sha512-roRDai8/zr2S9YfmzUfNhKjOF0NdcOIqF7bhf4MVC5UxpjIysDjyudvlAiVbpPHp3eDRWbdzUgtkK1a7YiDNyQ==} - '@redocly/config@0.36.2': - resolution: {integrity: sha512-gwIjFOzyq9bdJCdtEHDMf2hEJ9hHXUHkY1U3IPWyZmRoFcibzlpXOLrT0xVgnn10IEttMwD+SZtZBE593yDXsw==} + '@redocly/config@0.37.0': + resolution: {integrity: sha512-cYN+rTTCQIp5mVt1xumJsNqpZcaPVUf1x0ryD0QKXpVKsxKc+lHaMF2P1CqMgdQNY9B7i84z/kvxD0EhxzlxbQ==} '@redocly/openapi-core@1.34.5': resolution: {integrity: sha512-0EbE8LRbkogtcCXU7liAyC00n9uNG9hJ+eMyHFdUsy9lB/WGqnEBgwjA9q2cyzAVcdTkQqTBBU1XePNnN3OijA==} engines: {node: '>=18.17.0', npm: '>=9.5.0'} - '@redocly/openapi-core@2.10.0': - resolution: {integrity: sha512-OmWvnpA11J6Tp3+h8I3nrfpTcXROLllr/9yIUB7ofi7s1yOOKOqlZ4HTs+zaeNmk9vclwmbgc2HVdSsBKUXp6g==} + '@redocly/openapi-core@2.11.0': + resolution: {integrity: sha512-CF4QpCoxxHIB7Dib1XnhdL0WuW4dO4zvNfaEWpN7TASlitOX2mhrc6sD3dYG9knW1iG16e3Oauv2O+tVJx1E9Q==} engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} - '@redocly/respect-core@2.10.0': - resolution: {integrity: sha512-4XFOR3kbuhlPBeW2G/G3yPs7YJKV0d/k2BgDwKIQH8Edld4fHvknEAR9TFUaWsiA7JGWrP3CQ58P5VoDNW5O0Q==} + '@redocly/respect-core@2.11.0': + resolution: {integrity: sha512-lAvDILvq82IIei2gVyapGyfuWEamJgCiGO++yQriVk4Wr0hE3lF7ZWusUM3aGZrxEWCVGeeLwbMBpv1BQOnmEg==} engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} '@replit/codemirror-indentation-markers@6.5.3': @@ -15984,8 +15984,6 @@ snapshots: '@ckeditor/ckeditor5-utils': 47.1.0 ckeditor5: 47.1.0(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41) es-toolkit: 1.39.5 - transitivePeerDependencies: - - supports-color '@ckeditor/ckeditor5-editor-classic@47.1.0': dependencies: @@ -19324,14 +19322,14 @@ snapshots: require-from-string: 2.0.2 uri-js-replace: 1.0.1 - '@redocly/cli@2.10.0(@opentelemetry/api@1.9.0)(ajv@8.17.1)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5)': + '@redocly/cli@2.11.0(@opentelemetry/api@1.9.0)(ajv@8.17.1)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5)': dependencies: '@opentelemetry/exporter-trace-otlp-http': 0.202.0(@opentelemetry/api@1.9.0) '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-node': 2.0.1(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.34.0 - '@redocly/openapi-core': 2.10.0(ajv@8.17.1) - '@redocly/respect-core': 2.10.0(ajv@8.17.1) + '@redocly/openapi-core': 2.11.0(ajv@8.17.1) + '@redocly/respect-core': 2.11.0(ajv@8.17.1) abort-controller: 3.0.0 chokidar: 3.6.0 colorette: 1.4.0 @@ -19364,7 +19362,7 @@ snapshots: '@redocly/config@0.22.2': {} - '@redocly/config@0.36.2': + '@redocly/config@0.37.0': dependencies: json-schema-to-ts: 2.7.2 @@ -19382,10 +19380,10 @@ snapshots: transitivePeerDependencies: - supports-color - '@redocly/openapi-core@2.10.0(ajv@8.17.1)': + '@redocly/openapi-core@2.11.0(ajv@8.17.1)': dependencies: '@redocly/ajv': 8.11.3 - '@redocly/config': 0.36.2 + '@redocly/config': 0.37.0 ajv-formats: 2.1.1(ajv@8.17.1) colorette: 1.4.0 js-levenshtein: 1.1.6 @@ -19396,12 +19394,12 @@ snapshots: transitivePeerDependencies: - ajv - '@redocly/respect-core@2.10.0(ajv@8.17.1)': + '@redocly/respect-core@2.11.0(ajv@8.17.1)': dependencies: '@faker-js/faker': 7.6.0 '@noble/hashes': 1.8.0 '@redocly/ajv': 8.11.2 - '@redocly/openapi-core': 2.10.0(ajv@8.17.1) + '@redocly/openapi-core': 2.11.0(ajv@8.17.1) better-ajv-errors: 1.2.0(ajv@8.17.1) colorette: 2.0.20 json-pointer: 0.6.2 @@ -27573,7 +27571,7 @@ snapshots: node-api-version@0.2.1: dependencies: - semver: 7.7.2 + semver: 7.7.3 node-domexception@1.0.0: {} @@ -27611,7 +27609,7 @@ snapshots: make-fetch-happen: 14.0.3 nopt: 8.1.0 proc-log: 5.0.0 - semver: 7.7.2 + semver: 7.7.3 tar: 7.4.3 tinyglobby: 0.2.15 which: 5.0.0 From ab298cbb3b10d3b66469f71e7797df22de1260fc Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Wed, 5 Nov 2025 08:09:15 +0200 Subject: [PATCH 127/136] docs(user): how to set data dir on Windows (closes #4853) --- .../Installation & Setup/Data directory.html | 171 ++++++++++-------- docs/Developer Guide/!!!meta.json | 30 +-- .../Developer Guide/Architecture/Security.md | 4 +- .../Concepts/Synchronisation.md | 2 +- .../Developer Guide/Documentation.md | 2 +- docs/User Guide/!!!meta.json | 62 +++---- .../Installation & Setup/Data directory.md | 24 +-- 7 files changed, 154 insertions(+), 141 deletions(-) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Data directory.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Data directory.html index b5a486848..ad81d00c1 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Data directory.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Data directory.html @@ -1,12 +1,12 @@

      Data directory contains:

        -
      • document.db - database +
      • document.db - database
      • -
      • config.ini - instance level settings like port on which the +
      • config.ini - instance level settings like port on which the Trilium application runs
      • -
      • backup - contains automatically backup of +
      • backup - contains automatically backup of documents
      • -
      • log - contains application log files
      • +
      • log - contains application log files

      Location of the data directory

      Easy way how to find out which data directory Trilium uses is to look @@ -18,30 +18,42 @@

      Data directory is normally named trilium-data and it is stored in:

        -
      • /home/[user]/.local/share for Linux
      • -
      • C:\Users\[user]\AppData\Roaming for Windows Vista and up
      • -
      • /Users/[user]/Library/Application Support for Mac OS
      • -
      • user's home is a fallback if some of the paths above don't exist
      • -
      • user's home is also a default setup for [[docker|Docker server installation]]
      • +
      • /home/[user]/.local/share for Linux
      • +
      • C:\Users\[user]\AppData\Roaming for Windows Vista and up
      • +
      • /Users/[user]/Library/Application Support for Mac OS
      • +
      • user's home is a fallback if some of the paths above don't exist
      • +
      • user's home is also a default setup for [[docker|Docker server installation]]

      If you want to back up your Trilium data, just backup this single directory - it contains everything you need.

      Changing the location of data directory

      If you want to use some other location for the data directory than the - default one, you may change it via TRILIUM_DATA_DIR environment variable - to some other location:

      + default one, you may change it via TRILIUM_DATA_DIR environment + variable to some other location:

      +

      Windows

      +
        +
      1. Press the Windows key on your keyboard.
      2. +
      3. Search and select “Edit the system variables”.
      4. +
      5. Press the “Environment Variables…” button in the bottom-right of the newly + opened screen.
      6. +
      7. On the top section ("User variables for [user]"), press the “New…” button.
      8. +
      9. In the Variable name field insert TRILIUM_DATA_DIR.
      10. +
      11. Press the Browse Directory… button and select the new directory + where to store the database.
      12. +
      13. Close all the windows by pressing the OK button for each of them.
      14. +

      Linux

      export TRILIUM_DATA_DIR=/home/myuser/data/my-trilium-data

      Mac OS X

      You need to create a .plist file under ~/Library/LaunchAgents to load it properly each login.

      To load it manually, you need to use launchctl setenv TRILIUM_DATA_DIR <yourpath>

      -

      Here is a pre-defined template, where you just need to add your path to:

      
      -
      -
      -
      -    
      -        Label
      +

      Here is a pre-defined template, where you just need to add your path to:

              Label
               set.trilium.env
               RunAtLoad
               
      @@ -50,76 +62,75 @@
                   launchctl
                   setenv
                   TRILIUM_DATA_DIR
      -            /Users/YourUserName/Library/Application Support/trilium-data
      -        
      -    
      -
      + /Users/YourUserName/Library/Application Support/trilium-data

      Create a script to run with specific data directory

      An alternative to globally setting environment variable is to run only the Trilium Notes with this environment variable. This then allows for different setup styles like two database instances or "portable" installation.

      -

      To do this in unix based systems simply run trilium like this:

      TRILIUM_DATA_DIR=/home/myuser/data/my-trilium-data trilium
      +

      To do this in Unix-based systems simply run trilium like this:

      TRILIUM_DATA_DIR=/home/myuser/data/my-trilium-data trilium

      You can then save the above command as a shell script on your path for convenience.

      Fine-grained directory/path location

      Apart from the data directory, some of the subdirectories of it can be moved elsewhere by changing an environment variable:

      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Environment variableDefault valueDescription
      TRILIUM_DOCUMENT_PATH - ${TRILIUM_DATA_DIR}/document.db - Path to the Database (storing - all notes and metadata).
      TRILIUM_BACKUP_DIR - ${TRILIUM_DATA_DIR}/backup - Directory where automated Backup databases - are stored.
      TRILIUM_LOG_DIR - ${TRILIUM_DATA_DIR}/log - Directory where daily Backend (server) logs are - stored.
      TRILIUM_TMP_DIR - ${TRILIUM_DATA_DIR}/tmp - Directory where temporary files are stored (for example when opening in - an external app).
      TRILIUM_ANONYMIZED_DB_DIR - ${TRILIUM_DATA_DIR}/anonymized-db - Directory where a Anonymized Database is - stored.
      TRILIUM_CONFIG_INI_PATH - ${TRILIUM_DATA_DIR}/config.ini - Path to Configuration (config.ini or environment variables) file.
      \ No newline at end of file +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Environment variableDefault valueDescription
      TRILIUM_DOCUMENT_PATH + ${TRILIUM_DATA_DIR}/document.db + Path to the Database (storing + all notes and metadata).
      TRILIUM_BACKUP_DIR + ${TRILIUM_DATA_DIR}/backup + Directory where automated Backup databases + are stored.
      TRILIUM_LOG_DIR + ${TRILIUM_DATA_DIR}/log + Directory where daily Backend (server) logs are + stored.
      TRILIUM_TMP_DIR + ${TRILIUM_DATA_DIR}/tmp + Directory where temporary files are stored (for example when opening in + an external app).
      TRILIUM_ANONYMIZED_DB_DIR + ${TRILIUM_DATA_DIR}/anonymized-db + Directory where a Anonymized Database is + stored.
      TRILIUM_CONFIG_INI_PATH + ${TRILIUM_DATA_DIR}/config.ini + Path to Configuration (config.ini or environment variables) file.
      +
      \ No newline at end of file diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index 397bdcab4..63e4d0cc4 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -15,6 +15,20 @@ "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "T2W7WCZrYZBU", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "cxfTSHIUQtt2", + "isInheritable": false, + "position": 20 + }, { "type": "label", "name": "label:shareAlias", @@ -35,20 +49,6 @@ "value": "developer-guide", "isInheritable": false, "position": 30 - }, - { - "type": "relation", - "name": "internalLink", - "value": "T2W7WCZrYZBU", - "isInheritable": false, - "position": 40 - }, - { - "type": "relation", - "name": "internalLink", - "value": "cxfTSHIUQtt2", - "isInheritable": false, - "position": 50 } ], "format": "markdown", @@ -817,7 +817,7 @@ "name": "internalLink", "value": "Jg7clqogFOyD", "isInheritable": false, - "position": 20 + "position": 10 }, { "type": "label", diff --git a/docs/Developer Guide/Developer Guide/Architecture/Security.md b/docs/Developer Guide/Developer Guide/Architecture/Security.md index 61fdc7377..f1ef4da77 100644 --- a/docs/Developer Guide/Developer Guide/Architecture/Security.md +++ b/docs/Developer Guide/Developer Guide/Architecture/Security.md @@ -383,7 +383,7 @@ for (const blob of orphanedBlobs) { **Process:** -```sh +``` # Check for vulnerabilities npm audit @@ -424,7 +424,7 @@ npm audit fix --force **pnpm Patches:** -```sh +``` # Create patch pnpm patch @ckeditor/ckeditor5 diff --git a/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md b/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md index f97bd3c4e..45a520cb6 100644 --- a/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md +++ b/docs/Developer Guide/Developer Guide/Concepts/Synchronisation.md @@ -9,7 +9,7 @@ Trilium implements a **bidirectional synchronization system** that allows users ## Sync Architecture -```mermaid +``` graph TB Desktop1[Desktop 1
      Client] Desktop2[Desktop 2
      Client] diff --git a/docs/Developer Guide/Developer Guide/Documentation.md b/docs/Developer Guide/Developer Guide/Documentation.md index 4da87601a..c11d3164c 100644 --- a/docs/Developer Guide/Developer Guide/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Documentation.md @@ -1,5 +1,5 @@ # Documentation -There are multiple types of documentation for Trilium: +There are multiple types of documentation for Trilium: * The _User Guide_ represents the user-facing documentation. This documentation can be browsed by users directly from within Trilium, by pressing F1. * The _Developer's Guide_ represents a set of Markdown documents that present the internals of Trilium, for developers. diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index 86ddd9589..c0be59116 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -25,56 +25,35 @@ { "type": "relation", "name": "internalLink", - "value": "BFs8mudNFgCS", + "value": "gh7bpGYxajRS", "isInheritable": false, "position": 20 }, + { + "type": "relation", + "name": "internalLink", + "value": "BFs8mudNFgCS", + "isInheritable": false, + "position": 30 + }, { "type": "relation", "name": "internalLink", "value": "GTwFsgaA0lCt", "isInheritable": false, - "position": 30 - }, - { - "type": "label", - "name": "shareAlias", - "value": "user-guide", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "label:shareAlias", - "value": "promoted,alias=Slug,single,text", - "isInheritable": true, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-help-circle", - "isInheritable": false, - "position": 30 + "position": 40 }, { "type": "relation", "name": "internalLink", "value": "poXkQfguuA0U", "isInheritable": false, - "position": 40 - }, - { - "type": "relation", - "name": "internalLink", - "value": "WOcw2SLH6tbX", - "isInheritable": false, "position": 50 }, { "type": "relation", "name": "internalLink", - "value": "gh7bpGYxajRS", + "value": "WOcw2SLH6tbX", "isInheritable": false, "position": 60 }, @@ -98,6 +77,27 @@ "value": "9qPsTWBorUhQ", "isInheritable": false, "position": 90 + }, + { + "type": "label", + "name": "shareAlias", + "value": "user-guide", + "isInheritable": false, + "position": 10 + }, + { + "type": "label", + "name": "label:shareAlias", + "value": "promoted,alias=Slug,single,text", + "isInheritable": true, + "position": 20 + }, + { + "type": "label", + "name": "iconClass", + "value": "bx bx-help-circle", + "isInheritable": false, + "position": 30 } ], "format": "markdown", diff --git a/docs/User Guide/User Guide/Installation & Setup/Data directory.md b/docs/User Guide/User Guide/Installation & Setup/Data directory.md index c2f3650c5..3d66bafe9 100644 --- a/docs/User Guide/User Guide/Installation & Setup/Data directory.md +++ b/docs/User Guide/User Guide/Installation & Setup/Data directory.md @@ -26,7 +26,17 @@ If you want to back up your Trilium data, just backup this single directory - it ### Changing the location of data directory -If you want to use some other location for the data directory than the default one, you may change it via TRILIUM\_DATA\_DIR environment variable to some other location: +If you want to use some other location for the data directory than the default one, you may change it via `TRILIUM_DATA_DIR` environment variable to some other location: + +### Windows + +1. Press the Windows key on your keyboard. +2. Search and select “Edit the system variables”. +3. Press the “Environment Variables…” button in the bottom-right of the newly opened screen. +4. On the top section ("User variables for \[user\]"), press the “New…” button. +5. In the _Variable name_ field insert `TRILIUM_DATA_DIR`. +6. Press the _Browse Directory…_ button and select the new directory where to store the database. +7. Close all the windows by pressing the _OK_ button for each of them. #### Linux @@ -43,11 +53,6 @@ To load it manually, you need to use `launchctl setenv TRILIUM_DATA_DIR Date: Wed, 5 Nov 2025 08:19:25 +0200 Subject: [PATCH 128/136] docs(demo): link to old documentation (closes #5211) --- apps/edit-docs/demo/!!!meta.json | 5 +++-- apps/edit-docs/demo/navigation.html | 2 +- .../root/Miscellaneous/Day Note Template.html | 1 + apps/edit-docs/demo/root/Trilium Demo.html | 16 ++++--------- .../Formatting examples/Code blocks.html | 4 ++++ .../demo/root/Trilium Demo/Note Types.html | 21 ++++++++++++++++++ .../Scripting examples/Task manager.html | 5 ++--- .../Tech/Linux/Bash scripting/While loop.html | 14 ++++++++++++ apps/server/src/assets/db/demo.zip | Bin 915850 -> 916285 bytes 9 files changed, 50 insertions(+), 18 deletions(-) create mode 100644 apps/edit-docs/demo/root/Trilium Demo/Note Types.html diff --git a/apps/edit-docs/demo/!!!meta.json b/apps/edit-docs/demo/!!!meta.json index ce5046fb1..92266fa4b 100644 --- a/apps/edit-docs/demo/!!!meta.json +++ b/apps/edit-docs/demo/!!!meta.json @@ -1,6 +1,6 @@ { "formatVersion": 2, - "appVersion": "0.99.2", + "appVersion": "0.99.3", "files": [ { "isClone": false, @@ -2700,6 +2700,7 @@ } ], "format": "html", + "dataFileName": "Note Types.html", "attachments": [], "dirFileName": "Note Types", "children": [ @@ -3878,7 +3879,7 @@ "title": "Scripting examples", "notePosition": 350, "prefix": null, - "isExpanded": false, + "isExpanded": true, "type": "text", "mime": "text/html", "attributes": [ diff --git a/apps/edit-docs/demo/navigation.html b/apps/edit-docs/demo/navigation.html index 1d4d5d57b..4d1371ac2 100644 --- a/apps/edit-docs/demo/navigation.html +++ b/apps/edit-docs/demo/navigation.html @@ -270,7 +270,7 @@
    3. -
    4. Note Types +
    5. Note Types
      • Canvas
      • diff --git a/apps/edit-docs/demo/root/Miscellaneous/Day Note Template.html b/apps/edit-docs/demo/root/Miscellaneous/Day Note Template.html index 8f2333bf0..a33b14490 100644 --- a/apps/edit-docs/demo/root/Miscellaneous/Day Note Template.html +++ b/apps/edit-docs/demo/root/Miscellaneous/Day Note Template.html @@ -14,6 +14,7 @@

        ☑️ Tasks

        +
        • […]
        diff --git a/apps/edit-docs/demo/root/Trilium Demo.html b/apps/edit-docs/demo/root/Trilium Demo.html index 206054b92..b5b6672d6 100644 --- a/apps/edit-docs/demo/root/Trilium Demo.html +++ b/apps/edit-docs/demo/root/Trilium Demo.html @@ -14,11 +14,10 @@
        - +

        Welcome to Trilium Notes! -

        This is a "demo" document packaged with Trilium to showcase some of its features and also give you some ideas on how you might structure your notes. @@ -26,22 +25,17 @@ you wish.

        If you need any help, visit triliumnotes.org or our GitHub repository -

        Cleanup

        -

        Once you're finished with experimenting and want to cleanup these pages, you can simply delete them all.

        Formatting

        -

        Trilium supports classic formatting like italic, bold, bold and italic. You can add links pointing to external pages or  Formatting examples.

        Lists

        -

        Ordered: -

        1. First Item
        2. @@ -56,7 +50,6 @@

        Unordered: -

        • Item
        • @@ -67,7 +60,6 @@

        Block quotes

        -

        Whereof one cannot speak, thereof one must be silent”

        – Ludwig Wittgenstein

        @@ -75,9 +67,9 @@

        See also other examples like tables, checkbox lists, highlighting, + href="Trilium%20Demo/Formatting%20examples/Checkbox%20lists.html">checkbox lists, highlighting, code blocksand code blocksand math examples.

        + href="Trilium%20Demo/Formatting%20examples/Math.html">math examples.

        diff --git a/apps/edit-docs/demo/root/Trilium Demo/Formatting examples/Code blocks.html b/apps/edit-docs/demo/root/Trilium Demo/Formatting examples/Code blocks.html index 6827fa8af..214ef212e 100644 --- a/apps/edit-docs/demo/root/Trilium Demo/Formatting examples/Code blocks.html +++ b/apps/edit-docs/demo/root/Trilium Demo/Formatting examples/Code blocks.html @@ -21,8 +21,12 @@ language, should that fail it is possible to manually adjust it. The color scheme for the syntax highlighting is adjustable in settings. 

        function helloWorld() {
         
        +
        +
         	alert("Hello world");
         
        +
        +
         }

        For larger pieces of code it is better to use a code note, which uses a fully-fledged code editor (CodeMirror). For an example of a code note, diff --git a/apps/edit-docs/demo/root/Trilium Demo/Note Types.html b/apps/edit-docs/demo/root/Trilium Demo/Note Types.html new file mode 100644 index 000000000..614d566bc --- /dev/null +++ b/apps/edit-docs/demo/root/Trilium Demo/Note Types.html @@ -0,0 +1,21 @@ + + + + + + + + Note Types + + + +

        +

        Note Types

        + +
        +

        T

        +
        +
        + + + \ No newline at end of file diff --git a/apps/edit-docs/demo/root/Trilium Demo/Scripting examples/Task manager.html b/apps/edit-docs/demo/root/Trilium Demo/Scripting examples/Task manager.html index 1b4822074..266520b60 100644 --- a/apps/edit-docs/demo/root/Trilium Demo/Scripting examples/Task manager.html +++ b/apps/edit-docs/demo/root/Trilium Demo/Scripting examples/Task manager.html @@ -13,9 +13,8 @@

        Task manager

        -

        This is a simple TODO/Task manager. You can see some description and explanation - here: https://github.com/zadam/trilium/wiki/Task-manager -

        +

        This is a simple TODO/Task manager. See the Trilium documentation for + information on how it works.

        Please note that this is meant as scripting example only and feature/bug support is very limited.

        diff --git a/apps/edit-docs/demo/root/Trilium Demo/Tech/Linux/Bash scripting/While loop.html b/apps/edit-docs/demo/root/Trilium Demo/Tech/Linux/Bash scripting/While loop.html index 752bedbd2..39ca1e373 100644 --- a/apps/edit-docs/demo/root/Trilium Demo/Tech/Linux/Bash scripting/While loop.html +++ b/apps/edit-docs/demo/root/Trilium Demo/Tech/Linux/Bash scripting/While loop.html @@ -16,18 +16,32 @@

        Documentation: http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_09_02.html

        #!/bin/bash
         
        +
        +
         # This script opens 4 terminal windows.
         
        +
        +
         i="0"
         
        +
        +
         while [ $i -lt 4 ]
         
        +
        +
         do
         
        +
        +
             xterm &
         
        +
        +
             i=$[$i+1]
         
        +
        +
         done

    XX?0Z$xUT&Bfoq1Zh7gY7p1DI8aE(DJwg!dZ_ahb z?c0fYFC1pZ6B6UG(T|qcm^i31hl!BOeD~JoGXPwzYTk3tcT9(pEwl-Ov$(NArpJ~oTO=g!ASAq88ial_p)?s zHaeQk$FN#-XN-R>@II#KuaxKjDb0_N_$a?*RHUi7x#Q_)o>?w@CQE8cO7wd$?vfG{ zX)5EgbA7|(a{By$R5uSv9~cRtcB^D2*rhlvOyVMKlVT^diw`3bj-L+^Rt`$`iN65^Kae06Db=aRL8^JQymYsV8$Jyiznd_#<1j_z{a zZ+X8j>;ou_ZiN}bz#DJ4aW&|}bhRww-IBiKAwAaUvB9C?VO-Q0fwn%}y>civBgzFd zHq-~h6h_$2ojYyRe89DwS|Mo0f|?z;hvQ!3z<~pD^ypCt9zx&%W+X{Wn+`xN40J#^GOL0T4OtCUHK#+q{yURNna z(OAFN7fNJEheV|0Nx`lM#TFbcukCqOp7`A#z+a~6jREQF?2+7@RLRQCke<#~$;mAM zf7c0`yh?f<;Zj^wD7$v71#LYj5fNb$4StIS)*?C@D#hX)mDJpoVvk4wFQs1zG_Wo8 z_4U%++^qO5phx9~o!7~|ANUaH>rjKXM!!;kn0?E6@D#L3yaAJ_e5Rc2Y*&0j!eBJ$ zTUkL@IO62CmBznAjT{HHrTPG0ij*l}#f1%pd)A=ntO0UJ#3y-ET#)K*=q@_*ml zJG)m`yQ`J75(;5pHFIaqoS8c__sp3yXU+sk@4KKb6zNYMZ!n(X{fV=}Si`Ko_1RNc z$7$c1N5^U3SDJ?L=7%72)b%&rH2Slj`OGJ(tELFI z*rukYV5id=QZ^tbyK?w~$r2jIaz#*(%jp{WiqkNzObBRrdm7{Ian^j+us^UG#*^>D z)hf-6wQ^%tliWHWN*bI^MkRC}1!p{{zx+dI*3%V-XB8C`q+U=@JyoLd-sF!8omSN^7&1Zqv~K zcRE|;sTWJ+kI!6?hDM#xLly1-ZE#3%^XQ2Kk4&C1{8V^&cuP=F(8aBghx)d(v;;Lb zH3c;_H;3MI!wn;5&73(L^>lwc9`f`=R9#c6>@BR9)hBA?P*DSDL6C%j?1qLKzmSj+ z;V(EiNP;mqSVdJ$)HD#4ZAH&`duz-Q2H6G-!!4~Xq$$!+Qzez>Psx-c8|1;_?W!KE zO9;kpSP1Hmx(3|g-9v_rl!Wg+hJr$*Zo|7$_uLa0_>FCfYHDn3ZgM)C+eCKpfv^2a zYee3jl&swJe*J1AA|jeVN4tovZ8na-xTKWiDYNEIjfjYhVfzLF_qsK!<<~#_zEoFL zwawt;DH!b$77;1oQBe{W9)YnEVvZ3@Kd3KI{qce65=^oVZjNV;V~pV@jGKnKT5&ei zt7m`TJT@*)zW)DyELUHDgZdWuEjHBG)$H2z!OohhigJvPKGnz^XM8vCc0p!1bji&( zkDfk#`d~y`1_+^g$DtmQmzO8&*RPkAD_2NvZZ5`bFlb(wqI(Q;3>$v1B&Q@wN@}W% z7(Glz3?Cu=vj$4PjDC_3pCB=jv7N3o$3RVewNzGCNKsL-oG&;hr%s=gBL|O4QDL!E zRyd@kr5Qhtmloyo*$F<8&qIa`k(+P6S#G@XCdtamGQPD=*P{Cw@E)!E_V3Sq^X<0} zf`4klJfX&3UmJtne^Zh2va+Sbla!qNk3it-OE~yllK&krcxcA-x$`H3hKK3;oj7t> zzWdcL%88>#bX12v_~m+0?Xq>*fQej~vbiFV`I0N7r4P6S(FdF?QU*oGWKf2qmLw zI?XO{`a~18;}P9)dI}+}Y!63tjOR?FAxZzM9F=n9&>`9M{s!5)GeOl@<9|w`g z1^svbFb|+wL6{Fhz+gs3MoRX;fl^phB+e$MIZp)1n9-vpIx1QY9X_@uxr=DfB{?yet7+c4W~E;|HZ2BS9LGt^_IN>TEGW4VBf30wl;L?)SThdr%fNmiGpi= zWBt!AhFmjT@pR2tt2t|GY8xF@j>g*B+UAA^XKPw&O7y5vBjWIFgLO4NZ_cA7B_)tC z6sh0FjT@z~uu$S4Ln2{z*4Il@eXW37mEg!I$UY2yk@=e&A)l(Pk+|e!xn=PZ88m1R zWjK&QIF&q@>pHGih#Px>Qd(LnB?wm@+ACw?qh!F?Arc*1B_YmAsmYoqvu=4rVo|Mk zSH3K(Hy)I-76*9gQmLw_m*~h)$;e2N@Q833F?6UTCiRoOyZ2*XEJl{zvP|l#ilw5W zTn2!jZf>lTqWqIsGd0M7A!8<-sXcJYM!{nJAcqUIVEoX|%yJ~?% zMaL)@el~IOadIv{UqHhpEiFwZO`4?MGYWish{+OC=FPbZ-J!Y-GMUy_Uwd`muHC!y zqN1an*k5SYau2g#JR-a)m7-Jv#(wAn;pFjV`ii(QRk_#8w?gVv0 zA%Y77R?zAwl;gxuD^ycMSodxOUqtgvA#F_zkM#z<*Q(OyS1>pjBWsu_HlJXaqzqk_i+w4Qc_ald#i0&4s~4e9ZsbP@!^?TsYgTz7~(MXgYXv&A=k}{A>^RIPmK-p z(^g&Y>VJcV==y8QrJvjQI*%DidPR6*aOJbX==>B8a)HnYM%__xT1FmTFP}ZX1(Op7 z8`A*Dp-5gf987FTAcZb|Dnzt`V{WX6nu+UWbnQFuqf1&}l*qG3Q!?|@pb!xi6-CXt zfH;i5kdc$7j>#T2au~-VJGZi|On&_BZ^(`#M7!5eriag*$R=7;XTK@i#~WeEC%1`bTV>&`o;BqSt6b(Fs+(#y-sl_JCoFFY@&PMub5t~QTAG`N{W znn%GvOiYYq4;d&^rc9Q}Q>Vz_fmq;2#VBC_X<{H9`<)wLRn-nTb>^h(-LnrHV+Z8; zk&{wWU8^=o2}9b4HdKNMmOpCLC|SC6sVrJ_gP=VFStY-5LGV!f;!7{>I9E_m$$6H- zfxb51`u#FK054Sm9ce$m%jTAruq&^+c6|1*;RAIuG=et$?=K&dm!ExFZSv}PZ$A26 zFh@xuglOD2zC0gzYbnq1{KmBqkBSi{{qziM#wU~c77b|55EQpjsC;V^-eIf8v^p;8yP}q=&$OxG{ zaiWxhS1Kqd1S|!n!7^#$1Q{`6q`bH8J*lgutP=Ej^eCA-cb=?W`!1C3@>Cp^B(7Vy zP&Pq0ee~#2^;Xf*QF8UwSIfy0p#A&yDLPN(hphftl9ZSzd-m>Ao5ZC3{DH4>1`kEPR;k~!OKP6} zqqLM?!1_>ikirMWy;dlDHbL&-j`Y8zHjq8R|LSpv_K8@wbm`>5g9mrG-Y;`B%H~53 zsjP=G1jYp0pKWS)?1DhE!2aU2e;xL^`TOi|dBhi}GIiZpHhCOwyl^uoHMT|Oj7yOC z=ui#f)yKw9`SO)3`?{Pdq+eQE!ku^AF&P^$y}I7_+He6($i2`Yf8S6j$IfAsjhzW+ zc<%6klnA+RL57Uajt%&?62MpS8x=MJt6o~MVpnl-u>&+gZ&3N2zc&EMhb1N?MBa7B z9n<>t>z8_&FYAp~@3}I_Ct}={z4-FW+sewy3~j`oEAFCTzEsy+o*I)p3HZ|B`ntN% zLD_@)U%&AB@t`HaoD2EmIzazOP}Kn>$lG|>5B!$1wzkd*o+LOkGb38_C8W5JMJj#~ z2bjTwu9Xiz{7}uUaLneC^~oGymae-qlwFNFy9JMbD4p)Jfb?OZSx zSf-_=riLdbCN{nQ{`;%{`1{{)LsT_>oNrWD!>7~uJMw+O`kUqnj&XFle0x|W+S2`n z@s?M|TYYQ!*7%OXUCq}K-gfD|Eh+D6dH&?{2IDE-9@m*?D{Mz$oo@Hp5%##QJaa`7 z_x&II;M#HH#?8TGC1n*AZozvelp$Cl5LI0VJ}L(S76bwoTA4I7y=?rF>8;_B;Uxa< z>J!WyuOL`DXbH51WeF-j^TD;r!w5b06(A!l&JeONLP5Fk=xST@x}ePb8lT-qvZ@0n zA)G837F8`@9fw5$PkR8Jg4Xm>q1X9|)(j)RR&X#2Gdh>au5LE!#-iH3vl|}?zRF>E zmb}b@NHgAqa>1%?OWh|LO#94aWN_gls>X&!=c+eW?KyJnXi)?v56mtU&MBOIkdy;wRZMZfuO%f38lHR%-ay<1^R8U3D-Y+%PK5 z@^~hYad08vqj!IRwM79u94yz2v|{cIG96j1oEd9AxH}pIpCkZ;y{0#4YlGZ%$5F! zH_9Wq8zc;i20chMsiurL+_V-Ekm~!Z5P=FbH8ennzu7n%-;H*I@s5_iO4O-y{RR|( zA+C*xj0}jtg^LAjp2X+OTQDsuCO)2v95Vf@|M9B){;{7x*lq~)eN~;C2hrGsjfBQE zHxMqnuD1XeuC>+BXvc;)!yP#;>b~}!N9Fp(OF@b84}DixTT``j-mKY{t81#PLg1=P#MHS}hE zdaA5TRY1pYl>Bd8Vp78VMYl|kjD|*o>Gt8|%y+)>1t~m#PDgq5IS!%RiBmW6O0m)_ z;N^r4TY#J1l@%50$8blEig7>s?c;Lgy!lj)Q{Y%jH*9?8?d|0y#pM*7_O*lU!>r6;rpT+Hhh>|4~tKmHoh-7c?MRt6?8ldbbXdwxNt#s z?A)cw;aDJV-X8+o(`U}g*w#k*?dX9LiTU3}Y*oN`B40+KFZl&EhoPRG=H%Hf>HQ@B zi{F&6A;VSO8jl~5sz3c&S}qi|QHJ2VP!FQHp%DtfelRl3;KTI<|EtH{upvXzZn@=_ zsZo)TGx=~%RAS@)ayefa1Z9XwlUL}qrJ9eLUAjr=BejuJUtcGKQiEjXm;`K^_-=F1 z66c$5y|w4)@#B3`&II~{kF+&(&g|Jk7R;YN3hV4kYSF~+8VQ=FU^7StxF+-{mnU1|M<*rn991e_CPrX;#%=-gN-$L zL5v7mMxgbCl9FP1^Ub#;AJ!0C%gMlEZ`K zr6>O`xpj~o#`2(LnNU@CFH|vI;@vNjfDL!FwbmCMl(Sz6ULAQhCCGy4Kg#t3!U-*@I+IcD7oll6U93l2zpg z6r$RIav(znP8^18$jy5oPt#wXeDdS-1qEeFAtE%i1`U$>nZFjPN!*~ouk8@^+^pV5l;BkZ+^2B zW@{!w8@9E&rpBN|#Oy;M0t8N%M@SO9HqVUXga9HPOtV23MqWR*X5iEjh;9c**zP%^ z?CCMzaT(1x4SLIfCRsd?*JVK9<*Je^K&r^bGGEu)6pYi)M!I60bd*ZtgvqQr5V?5L6-|F%$$pQh&KMRMQ^2MkHgoi%^_!N@3e)qwG_T%_t)i{+T3bqKUr*xh&C zHGbUKvHh*-{)Wjss(!O%@DyiBmXqa9`3FqDZq2I`T8yD01cj!G`2$0U>qeANUE@`~ zs>g*D5yA#JvC$DXF$08KQ0qcr(jXTqb6gpnV~ioAOhTATL$l|MR45$4v~YFFd5Jsv zk^I-me@avYq9fA77M2MidH)YIi#@$>Y;%P%j-^%$=x;Q$2*#$wl4_;SN&#HisiXYOp7 zF@1&%?4OOrvBliD6`3DlO*=Ix+oCIu`I=!OJvTpBw(r;`8$Z}2Cy$?^lBpUaXjdiN zXo7-mQc|+qamSr<@4fd*JT|3!)4^nB#S6=q?}T8aPV;wtVGIVc4IrRfLVOTPtO_LF zi-}8ro7|Y5Fm1-Lv6FH}VeG1DmV%}~|Mr*i_a~p=ckHv8=xbanlLBE>Vmp4sXU5Bk zUR!`|PNj%4oWA0B-jQ2)^Ah>)&wimSa}X9MbX$+^-+N-;_ASSGib;Q$9pUMXbUp4M zTnw2ubIz#I<0lM7xdwaZp#mn0=pn_wD4NGDDm*V+H*b7#AK*%lef##SF+eLqLx&C(Y~stuA8(TZEsgT$QT-(bby5yv z#`UF|-z-08z6<9#Uco`$&2NVlN-+4mxG#T8B1Vo?*%~4EuKd||pePTeS&L-|D^6VJ z(SoZp`W*jj9e3AXcipIIIXOPZ9h>mr*=pH+x&aErhDmACy34NTTYxl=b5OIhPG*jZ zmLVA~Jw1uD>+&4lO#4OuFb&{ zl+k+l@Zq!nc;k%&P>u+QT&Oee+S9O?;(E(ln~^V}JQ&IgAy7C-TDo}YG+0RprCdiJ zfS^yB%CSYC^9Pl4c{L$<62^1$o;)m_nmeH&KnJ>{tYKo`4wf8Bg;p}D1YzKBRe5;* z1uZ`?AJdtKKPprZFJ&fITyce5dF7QZ>kzcQ;DEe}O1t@Ij?3`0P|1p}k%*9HWlb$4 zrN1175=4Gwl6>x_PfKKTmAvxQ-{oX|DwIo|(l5~|qeqW`a&fXMgEIyXdhkFNd2cE= zP*3_o$ptxjU^n8zB?(t#NJzNQ>ILg+@VC5@5hu2x9Ktnd3=V1GItx{2W$g`VY$GZe zvz=H5edf{EKvV9`_oPJ#`n-0I7U38+cs_jDfG@A8sD1kBr?;2mZVt+0VNuzWLIj)L zJpuB`bf|Bec>6QKTyYlI*qE5m^z`(g{Jgw<|NXVE@!HNx{K#YL`9|aItPd2fx_Zm& z3C0@dD{N2m=h+hs?vKx1;Qr|YSAY?@t42c8<&tU420ELTUVz)L=slq@X%h-ft9q!+n)&o;>1%* zAvHmf(Iu0XO>0W%pUU_S9cyM8_6+J5?l7+fz@L1&7+s{Va;&hHVpNd#gN8RdLB=#D=Qf)w#kx%_?hnz5gN1}o@ zK>6s(rxN)L2MtBX@)a-dgjQhZ4er3!ON$dE725d0yrH}j60}tfjBw7p^JG)~$GM+x2HEf6V zmS5*_nUWHzJZgw_GZE1lx zPwkcO9ePy~S}fK`P+6nCMu1^zo4*#niL{j9d0=6`M8q|lmR9r2rMARy! z2xAm`d#@DSdHCbs{y|2Kn*a@W(23xn)`GKV@(=IcwjT?)i>Qfa)R;65jGeL$LCX*@ zR~S5c)Tq>Z@4kBq7Lru3?G*=QOnLh0zsmdXzprRqIPT%pCjcUGB4NwYGMVC5Bem z%&Qkp?4QkR3JsT^mn;AExd-LU$rC!tqt7v)gp>41P>ASg{Ch-jInrwj@SFEnDIyD3 zF+Bd)=OlaZ5Es7U!h#E%*Zy;NYfE!OUs`wRafeO%sH+yy#UAUJT`jVe;}zFF=?Lr3+9}T40$odyX79 zctEyq-!4&541RV*h9rmasza<3zy}y}hPnC3$}%I;c>0Y>5#cyZNZ~Icnd;pkISALG z#eeyKBx1r8z`-)xnbT7F+aKd#U)yUk>_{-)0&;Cep!r`t?xL_UefzRylVK*==eVoH znV${&Dy6QOSEtaN^d)tu-`;I~?wR}yzu&m`37WSHZ;wA`N4Rr1Hx05U<%zUQRAksEe=H-q)lVRsa16ik38 zgv;k|93W!`bge0f&k5NS%d4tulCo;2IBJ`u4pvR6rxh0!A_Gz*B`X0u?xi6tsGc3kg6U_8Gn;WIN z-XZ1HWm4iOkRr!fIbU@~%4*A`7FT1}HDZIgsYYPXA6L~Xi8-cZDo?O8IFb#=5Vuk2 zGc7zg474u^R|aLsyy3UVoRQZUmYx(`D>tqyG48g5?$zikYLIkExJz-p<*j2(zC>9_ zhf+e^EjQgVH7O}EnuO9&h%l5Ov~mRTkT<2$0DaDra-+ATp{-@yh93dkIQB#_!bmYNp=2lX@a6q z`j`na2K;q$GL+*Wlcr?|Ub{$snDyrSwBk_6kpp|AU;jZ80mUHoPT*m~!y{B15QaZm z@S@=*)|W6XR3hPIfRBlEkofc(6_4s0W1RKJ_EZ+)l$8i7MDUOx_-jJr|JgHV%AR}v z`Q1=Lsz&=aqdi-Zjr+Ip29GyL%5$io(r~Arlh4B>jR;DM| zF2`Xg^@{6GIsWAJ2IDE-pExT_SHn7=_Sw)n90;E{BJfLk_JtQ7grFc3W^`bn&S?xB zQxSqpKMS@xdz}4Q!-9APW8o9xh|WsBFy*c*Tf=ZsBONia6uYm}=v#-chVzteO=G%t zp5nd5F^{!Ad?u`R*1G68n~y7>WKcx4d~;$fHgb%K%>9B^U{94`x-QUOSo@7k1x?ED z(HV@H3msq#Py-$W*_F#3w8Syhd{mwZq$ds|vjKofwR!o9HVDwt9Trhh3;Ne*%)aDEj+HRpC^UEKtl8hfW zE*%ykrh*CU)UhM$w@F60Bj!It$UE!{~y-ulmAv*O~QdX7&r@pzVVQq*m zA!d~@y~a$PHGf)kTwDU{%JH=F`Df+HKm3l?EqvmQh>Dijq!hJ?@Ct}p#tg=0!dEjT zBqB%-{JBI*_ga)zykrc7TX4wqZ}OjLSWDR@QBJPu9J=9-C?<5C9mb9w-E$-~tvneRaV!w*ladH3C8q)`wsxPE~x>EdC#6a{qrHu0SV$HpfnT(#)NoT!-CXx+kZ z!*ZkI`3saa4o?3m?yhxa3ac=qj2;q-~OH~x$7Pm-EuZI zHf>z<*0%BsCFQu1LRpFMg`>C9)VKrxo1B)OboHW}rs4W7%=lz&TnwMBD%SY6{F|nc zq`z+V(O{DrAP_!$aKEg6^G#T2Scj8lC8}+LDD=c>F)BhBioxL!z{cR(i^=NbSzcbg zGOx?iV*Lm7ms@XJCTGu{kq=-!iw78n3>hL1eEK0MJH*NPbNPVDR;TM|eS!7hJVQre zGObfEPP6!YW}W$Lg<~8A)1Wg_g!yXVpdmPYS1Hf^?I~r2f`Zy>uUjav&?&FIvQp0A z%8V9Rn*4fdj9il(%gIWW$3{?ZZ#ITCOu;Yt1`3ixAUHPKTUE8)pCEkKasT;siJSyw z2=Knn{9LL0^^c^bxS%aN-YzF2cx^@luFden)Ro8lMr5G*Up?+{Cw3Ax2&X~t?vvBp ze;QY;oOMbB6hqkl{?759UdcLwJ*8icYu^I=Cdkv&*4D_(k&!a8gUxfwnO3~=%8oN< z&h#lc6W)Ud#zH5KAD^`ZC-rf%*SBUz`=;pgF*{B;;EKLFgn1oB6_kVv^G{0>EIuU0hCz-(b}?9* zzC;>P_kIcEC1=!RIezqrvL->=Tv1dcmAJ~I6};8p;UffBg(!;*RN9S#j8Q2j z01xX!g#=#zL4KT9*HPg?v6gHP)KMuusIc*lM(<;tfPyI7CN9mtu}xJbcudz;APj49 zfHlk1d2~G#-9+a7`}d!J`Q?}Qg@lDQa8E%iM6gW2*gt0bGr`)ydC2F6F>!)t2m;?4 zj{Ye4)cyBA4K&c)7HCjx5stn*$V3^>?_WnG!5g)x5tsXQb8eg`HB?} zgZL)n{+v2xa)({eO@#0ury?8Mg@T!3$a$*i0D zJLT5F(U@#7>3E<68l^_Bt8Em9i3|U9KEi4^m2PI%IM|f#{O%Sd4(7BrwaVlAgMiXv zRS|&G6wAn|G3lOCv1VR3ENi4Dty!+ z9cLzBPBmV(S4zLQg)Ep8Bft7lf7}UXScf2UpgLK%0D7mDY8Tx-4n&~ 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 DsEXYp diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Adaptive icon.md b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Adaptive icon.md deleted file mode 100644 index f3947eb0e..000000000 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Adaptive icon.md +++ /dev/null @@ -1,15 +0,0 @@ -# Adaptive icon -| | | -| --- | --- | -| Before |

    G~MxBU$w7(hUaeF%G;v&*;s_srt$6)>_W?lI4Vc-HJ1i?2$p zv*`h}GndB4Z=YSpcy9H%`MX>)o5$HoL-Y(d>6rXa#?RLn=X+}?;j_Pnzi1k;ce>;SEhdSB(NeRPKEzy>9N`}pP3ox%E;LaR?5#lD>g+!lF;WNLG zS19?{S#OaqUn>9)i=D6Q`duLV??HD^(urJz@~8{PCjq>zMGrgYJ6Qh-ul7d@*ZRFX z$Fg1kc~F}@IBY@Tk6yWr*x8coe8uKrFt=a?Pej41mc8+bpn|FrPZCkW)L?B%fa>je zef?9-tVFK2QwdNFX=IF~S&l}nMVr+fG+@DhEX>{Xm~KmaV6enbb+Ns$(Dp{cqSTvt zno)kKbs>IIp;)-$76o#5N!lPH%T~U5kEOtbb#0or6d2F=y{H4)0St}Tj$DEU@hg+j zzjjK10BFf+nWQzby^COA2hT%XFG=&`pH~wnq2<+ddpd*_uWv605ZedQG-sSw1?^SF zMqP7q!Y>>ce5Q4+l3tb^rP^^66XZW>BJAjJ`hwjf7QeS~Z5-3lU`I2Lm1dV*y@&;(gJlRm)JZ|@yHE~dYAUMd^XvuOqswPULIH#h5YoRUrHRnv}6TOs5vzeqw z_8A}!Z*FvB@T8FD(uUFp>Ii4R7_?|9_!R=ia9pzgW!Kx+?889&5_ul*{4qdXb0v@}kvq zSZ&Ome!=-pjm+;5ebc&(R0NdDUSvb0<^e&*+HH*y+!y}@n^d5SiYy=HHY+0yH5|F& z%|8RV?+k9%T~cjqG@O5KKjcH}Tx#h0yen{vY|{v_Qx;kS6$;9KJ!6&WTJAD594JWq zR=82_Hr~8^{5fR$@TA{c+pA-^B=T_pBy&D4hW4^d4UFlic_Dh`?X#Fj8{eHzgO7*e zSsW{AX?v?6w+bbA+CgL@=N}5RYCqcT`s{pd3L!hX%gI6C_T~^8cw)AWzq@(&OMtCp z<#^>%Z#G}o!J~)W+P~fqX_O<9ZQ%nzFULOH6lGE5Y_0|KK0-MifFE2Z21&P@ve;N^ z$a0F+dC+dK<__u*JH?oKKVw7CncvnQ28`_MyrzU-b`v8J*ZaaI?We|g+Yek*pmDx7 z)Y^=+`FgTlpcwYobg|f&&Yc7W{8VGvC=uPfA(JXOYi#Abj)_z6NNnyVUgx^1Z`Gtw zA+nBmpR=|t%rmSJ;MA!+@M%-Danfe7EOH z4jxZbvL2?_D@=%))g*d2=Sr6^d>3ql@c$xI^w!i@u9ecR$ia<@K|%s8AA+SRA{{41 zS(-WbK+b*cg(Bm*DoUDCB;fxRW&t_6xobIsC^9Bz<{vpa_js29w{dzv)pMB$*4`dE zK@jAb&!gen6m1|yV0hLdqY?;&zh0@F^&0168rC(t@KY->rsGPaXapA+`JP#$jVEk3 zxJ4JBdQF(Pzd>p{5#0&^z0%!JOn-I#apc>&4Nd)c_Z-MhJ~4#_IRH+E;J~&oi=hIB`IQROuPjjDi!>Pj7?dixIIuS{l#>54B#m=c$jWNn z!X=em3}|w0_GI>S*vvl7K2BI#u`xZ^DSXlP%fWpIdK;O2!)?Vx>#v9L(aQduy%dmO zL!&_VOv=1q?2IMnG`gATJC}uB-QeMhwCjutrklLjL$X*Q(@d}*;c>>sHee8i@%o5- zY%A8DnkIj;rpx79T=-=5R z<&E=!I?l!|>DHO;=LN(90r2sn*PD_*v$&xNJc7v`2+onkIxz2{4Z5gLYc&80bB7<2 zJL-&^GaZXHQp_6`S5{z<&F{Pzjp;k?ki`^xI6PE(HOx-L{L?pMz^f_KvLCL^8-*wJ zi@V{+Mu2!mhrLJ8^&l1|+%$2*s5nZ3I7^&h>79;O5CO6<{(RxL(`;g}IGHkP=fJ)kFk9OjAM5%o5&WLOYI%qquH#i!o*TP; zLS{yS$X>u7K_Ce_OudXw&ALUNYwrpz4#7m$QV9q{1y54e;RMp2t+`z4@M4JedFIm%T)A>unQ7%X_f z4m=|I+pD>dY%5QPt;=9F z3RAyqon4&%QY-ib5}I%8Bl$Hs|JL(l-})I{ktO%*mdZ&rfk56191!30qUZAx#qGw& z725mEHFjkf zdTh8UB357utC;tt)82S&>~9BlWF_EX4^o$&Y_OV^R}j$&aw8SAl!P#y2{3_}pC&$c z8XF#}4T#BQilacd=0q)|^@c3Fo$1l%_nuwI8K}`|g_u`@Ugr45UssTr}wdv+9wVcnC)bYA98xv(txpOeN>rDHe(e8C#}2Uu9z_c^lLzZbLH*vq8A5r z%&-GLkLL^cPk{Fw!90z5ZH6|=tPyj66~OOl?5Qlu?A9BpFk- zy&QlvG&RR~^`7WmeVoC4S)_<*mN!nwd>B4pCM287y2M#e6~5rBTkF33O)&`0HdiRE zBJn?%d(WVz*Y0i9Z2?iLD7}a%=vFBrk(MB!vfU`?Mx@tBA_hc2Y6wV?B27i5Cm<>+ zp@b?Oq)Q+m7@C68A#_N9(9Zn>+|TpQ`=2xCJ##*s8ODJRI%cu%Rj+kjt{bp^ESplv zdR*H^O^R?@lo(hK|7c<^8@060jFQ)RR&T^?5cgGsjjalH>qdO`5wuv^vl|<~WgD?P zD6Mn#L?QUMiZpvZDDdP~CQAMGSD5PV7)u||rMhqoI12AfxZpM0594ubIk5SD?Pmbj z^j{`D|HTqi9koT*WJ8sw!*poHWio&Ly++vWA-yKP`>Kw?l>MyU3mB)UxMzs!7Na*k zB=sEt4hpRPl59}`bMA3JbGwDPxZotERlw*SwXtk8VwkT=OXXDVxFgM%Fj~L`SJKx} zRo(605D%Xn@7=ZQ;;yTgG;VcV4ACMMO`osJ;uA%B#nkQF_c=vPmAK1GUZ%OWRLygQ zJ6*4Gm*&$D#qy8l90TwFKVaMTercTq-$KlJfUUDU?GHcr^)092GTHLRDQ!a7mUqGq zLOr>$m2UL!A~%7M6*o&6>urbwKzHZ%s^Ay%gw)+o3+;`voi#)lRnMt5^aU6D(~ zWj|Bn3%&B~o22NofJ$YF76rA#z^9%yMGBzxY}!bvSQx8nDgV9P-2We7y;pp{EdU-^ z>k#83q1%GV7a>MC?)QOPC5wM$AT;0A+aG>v2dF5l0fH-R_qBgxYY?~JTb-C!E);m7 zq`5|eS5G^h`Ygu-*Y+;3f(H`WfezrDjRDJYH!yb7O>I#Fz}r!H{cY{eML2MJ_CI!S z^r^c~e@~@-YMLm1E3-lQBk>U5?wP$7?C9kaQ;|`*%85J!JTAjs0{zqT79rAlEl={p z9aejyL?%0|q^W}GJ#30|80ospkJbS%TSr)py#IZo(}+HR^g3XZ zC2O9hQA{SgK0KxX>W=Z}+2JQxek2xDz|csyJ6FuHXDmqr-%Dorp0wa)w;ypf8+389 zSIOzO9VLItwv^u92Gm1~$Jfx}G4#s$e>qOosr8()b;XIHBzFTWVzmI?(JR<^ zxvNowh}nd(a7O42_uSyjA4g`wm2(^B5cuA*;t~OdJXFlrwtWwU+HAS z+a{6LJJ9(H+{hmv z8QvX1Zyw(W@V+Mrp^WbF<~o>j=kh)NzhO`UP3`}F;i(lg5+B@cd$QZ+^zDQ6&!HO0Cg}#N1CM5w{wyGrndG;p|MUKJ#@}bJUOZ*RgE>M^ zKT9ppJ)E)U*l}gHfy%^PY(ER9eVrYt-IKg6*<2%m{VwLGF&StxT3=hWwffrT&ESjs z1Ho4%`>{&eLG|S-E;qd|DiAx9e7%T%L3dDApp=XnoHpMiE4xKb_PxlZ31hJk55|_B z8NX_-N*&v)2}l@^?k(6NDF94E^M4OUPlVp?s7hxa7t|O#VLi*mIcBf>u_>pV6RX>W z?5u}7)mcgM+eC$9u(xBIk=JR17#V8036FX$b0Rk5F~^)pqNwUhhNA;&a@st)sa&K* zvy|OvFp3Ma*VGrcI8umMJr%ky?Zq3G=-@W7hBC$MKQsg?wXzR>4NKMTgq`}OP4q&| z%OjCD0t9)=VS~gO<2eQXaw5-Ux$aXHJO_OAoVbEh7Y~h20eN?cbLjXLcXQ9( z%Ln9D2eOKKgz?Ku$Dxl^clBt5@!;Mgh1~o7z*h>StF2WPdt3sbH@SBsp{hZ?@{%a@ z1Nc%1snk|yw&mE=K5@Q*`-jRVi|u}skW+fD*%)H!?*z2`wwvoqvT2FVPu`KY{|@xm z!a)XHFd1A~810P(Ti~%1B(^Vc2m$Q%$0N{)r(qFLbB$7&;&>ih6~ ztM`fh%!y!Gx4phJeLdlFYMLyIul--9y=C;!>V6lG`;#N!gB8u93lK0|ulG>4uDRP+ zUq1R^{8gC2uU4_oI!~kXu~TCBG8*HnH+RNZuJNF{C*NBQ9@)7 zQ-PM2N>um^_;G$?siNXL2)qE8;dxbg=&4qna|B|?^)#&xO0}LxB^gC|;zZp$H3C97 zw22M^)&&)TL1&nHCc-!w&VjkN>a{E&HSX7q zbkB3MN?y`rI-go^P8EkGq)z1UHqrq(goW#vgQT8 zS1lFqz3n$=fdTF8?)>X|QI!zWV+>(!NO~9|E(JnXgTY>Y>E)gVfMY7GX>H%ZVnZQL zMbGDtx8MB5{c6XdLKRRTf4J_*_W4=`8~h|9=?VOGbGOec7?nlJrd46mraNE?_^lmM50(3Ts%gJ#YiMrnmK=D;VjyC!x*EmtaFS;1`u5x@yXF+Xy)tEq<*h zBZ>xs*xo+xkXk zkBWWQI@fE}0aN+a2_|5G$oRQamta?1#?2Tw_wsA>n2rMP%JPFaxV||9anf6PPrw@c zTCbq^%x9swjZBiHg9yDB?zT>@wqRMFpcunh5t;6pw8xU*(M~s~v!8yl^=`wXfYa60 zpR(BYvT6yS^BG(%Z@eAlS$ILft1^4dv1R1_esLFn0@Xatm9H`7w|wY^zWHm+tW9Q~ z$ch4CY+}SvYsx)V{70as2n+;*Lc?U^5Jrcn*kt#eDly()IgIR-7cvpv~-( zBU_miqp`!b@Cte+^!km(rq)y&UOoiuq_tLqmPoEADK3gxqco_~QsDE0VM79gn*s8u zF%ytIbqrF3%H~?|x$$0~jgQy}tj|r(DO~V8+(~uM!fCo-W7+n>T83s{lP&6Wl6g5X zI5Vy%ooU5Oh%?lTr_oX;-aHQBd_W$#zrbOVj-fOLcg;IZg=gty-5Y#Q!;1`|vTvKE zyGuoSEOq4IF`tgPOmtNsnE^aBwkz|)zZ1omypF%V{_B0? zk`Vn;I=kVwzcI9Aah8;dKn>YYTJa?PeX`b=`c0!$w3`5i_s~kCUG;Mp16TQ;=EqqW zTx?@{gdpi121V<|AVn0)6sZ?turA%HH5TF{R0<;D<8(`9cx*ualH)?G@amh|COws^ zcNc{tcBOh4F*23&6dxbuMmc0o#Y+bBzhmLJc{aJATp8R6;nq5y1t+po{)tHvCETXq zjcgih*NZ1>N~u+Z{85|h2nM+;BPx=~yjO_uqD8Z&Y(%=AF)Kqg=U}J*(BI0inpSGi z%N6^3ZpTb~(91pZym9B{ZXq&WA2R>_a@lu-{g1El^!qG92;O1jmXW1!3jz3PV;pfb zQ;3`f;EFsnW{w1xGG{^EGQ+4B!=BM=8Pi;j9D^3tI=Je;JqLIRU2xGRGXQ09QKk`d zzetMBh0MRZPY8LQw1rWnX3ky@m{2iRl3whp_q+Ii~IBH7(g*Cn@4iF|x*x zXM7kRlNBN@Ub^+PQAcS;^pH~{#7YexhFcTTF&K0N&%B`?DJ8vvh00-J_0m8 zyZq1BDIvR%k})f*GhO0H^OBitEQ(-ZVDLk*VXBf#0?!=dK@EIThtX6G4bV$uYI64h z(XZ70_eBIAY=%g2Du-XLK%@cyPBmv{2o za-DFAY&yh5Ij>r=pqjLi4hh$Gq#?d#tPBEKT2}za(I~X6@WFX@mh>3_TC5W1kvKHN zJ7=rPg8m1wf_s5V5Lgct0Kz^mXQ4|y8k_sqPlc38k(av)k(*DP8138vt(*RlX5{_l z`{93<9^jFe-C+0b5ul}3qeM|yOn7ySUo2&9qRZ6MmtxEAHgnZ{aqN9)mU5e5b-0-I z?U|x)@(JSoS3@659r?aDKUj0>M69xs8?N*dzYXPbpmyq^&#ajCe-4JIEk92{Nm(5z z%t(!lOEKz?AF^AB=KU3rYy3sQQ=H~#i6iQZg|MyKeOLb;i2( zd5(T_44W|2>b2MRp%wb1V-N5ZdT*}wTS6Mq?)*L%kyP6l*9`&7h4{`z{5xAD;CJ%^ zJUD%|BT@f4cN{cFya1P{)p$)Das8e@zPLz~8#B}x)3$C-P7CzmgxB!z=@kl`Fy&FXXPfmX+tN^igNqqg!>Sq8jrDxuUQ*JuVxz6=yx@@Tr z)NG{_vuyNn6KyfiHy^&7E&TpZ-%|O~ut5+UNCfV5R%GZZskZ|)#dPVfBj(dt7$pw` zy|nH9ZKCq9lk8Z-klM)PwBTBVaQy38{ktg5R-XE!K}AzIc}oNLuN8%nq#CT)s;wF; zo7x^vBU6Hh3wIh}^lPV*cbj}~FtU`?K}XclN3EkMZ)$C#b+b>kR>xDqtWnJuJFxO} z3-Uq1JtE!?LGw924MUeYeT+tu{n$uBxyt(-9h{F*QP<6XCIE^C(|!{N-G@U*`P6At zTR;lT9I?p~2#^JGyJEg|-&Ob^wlIi*DRkS1qoE>!?a%w$kwj~&Nbr}xx^3e+=u#T_ zC{*RQ1Mm97!nh&*pdL_Ah1QL_O`%ypLO$o=_}3hWX&h)>+nU@vZnqQR11lH79Kgro zYAJwL;LXyB#Ok^;Orx&nYbJmT*@f? zN$E48qHk*_+Hkl49WX)rC-V5HxWo_=F@r+>Y1ReDn7d(?@K-JGnOK6BNqf}1gGcp* zeA}((u>omOTHtToQ*;Wn8uXlKFy`q2N5===SaG% zekKI2YothJVoIME)yc8c_gNXQ&+=2&B)5gB8?HK6fX>|)Uk;v~toDEChLzCl#CiCo z;VXz>R&7+768B0HZ1)If0Uc9J6DY69&Wml@djC^Zb;d&9TQei)btK^FU3_=+e0Uz_ z;iTwvoWrNr{BPAc&4mL12C%0jpwElg8}!oc2lHoe*MrObI<%&EyuiJa9r-gXsw*Lw z%i{K#q!QGX#6~2Aqo`MD5iht2)5d1ri;p$(wz-*F)+`aoNcK4JMJIcP^@+F>OoeSv z83(}df3Pdt07}k2M{7vbsPAr--)!|L@g~c^27A<|%7|Hdt}}sf|0E3}y}7!tlZR?M zleo+qWog=<*l|I6A<}gc@CdznE1&*61bRZ1N^GEwOiUi&+b-k}Lv7?qf#{vufgM6; zu*AOqou*j0e|`%9Di7LU0E3muzhylGxAemhC^HiQ+`AA=pju{L;Fh}4vE$LFe>ago zC7^{R#PkhB9#lWPGBvIjP5AOvU2`T>FZOl)-Xz>vM&i$Ela$U&NgFN9?0W5fA6!Wx zV#7g)lLmY;x_O;{+z_~6-uJ?$Hg1$!Dx4&6CPm1gy#T;*iAOc*7C5O`oK z1jgsVXwlIrZ zVoRUuIp{Ue)ESa6TRv7;%E-?Wy*GXQ;7%97?Qs_@7kwB0tft*Fz{g(BY79~tlORb4 zv7D;G^R7B|ASF4=;3p@is;wjNRq+}!OC85zaB4({5KV218fIOg*Td;%q-FR9nOeiD z(b@M+jq$?+c28J~bFXEM*OZv}dK=afSr&$!zxMaF^B;a**D!mo<;CMtz*>=5Uq~w8E)dxEzB`cjHC&7a zP;jW{JPZvn9!nHQ*G zllbx=r@EnkOC65~5Hx(;AV@a7Ptui`5m3(K_4nPwDY9>W^r~rQMXaA<6emoQt34RrV z?qwXshJ$hkH(4XG+bt@K<95am0a`+@hfQhNC^9MuD_`h_i-lX7yOmSxEmvh+%RHJn zE}Z$1?T2dE831`e10b~*13QKM8OU}<$D^gUZO0AS?$U|k-?mfUyX^i_92E0F(eTaM zSESE}(#5y3N%N;U8a;nK=6^NgGpcG^aYE+{*n7ZS9u2+O@mKEMsawuhLp<`W0n8kQ zQ}iB}^9JS*MCawnxBGr3SH@VpgyG*wGjC)Ua@?5Y@t)F`h{4HpaZiqM(;UA$tVIjd zfOMyqNH-RCba+VBMz2%vZ)}*2I3kTqD`ZsLqC9XH;=~>p(s|>rseLs4@ zeykz1Z#7-Jvro8Ww5~3@T(3@3TX%rlhMV$MRMZuWHQd2iW8YHWX~ebP9>@bcaAd4z zC;r((R_wYIExTpK>4u7aapH@Z^ngBzy=`;{>nh!^-rEVpUhc0}Z(}1)Y z4B!pR=U?UwMykGoKtey-KcS@J5`U-at%e7x3I9ggik?TcscQPNmmNP)rm!C-^w*?z z6&H#BvCm=bKe2Q9(zfgG6xUB?&Q<9msN{}p!!#LHl3gvcE`Ls1i2$AFZS+NwtGioj@&zV{ixVK0480$ zu2K~jC72{un9~futYuSXg>A*7C>9crTUMLMvf# z>37fg(*q!~TBH0sr&u)|1A|FGg!s+%yD=+VdNEwizSYLT@rm0K^PJ=&*$UZe?_Yr# z{U|it$>{!>Wki6JI$B%ANSO+5%sVE&IMYpP6qC`E+}ZE)EFtkPOyL#P1b*LXiku}a zO-z(_HLOuODVe1}S?x{pl_7^I|6NbY*A);xN7v^jOn;8p<9eCI3=NTi;IHa?c*PfM z*B&u^0fOOMESQo@C*I&YYjU1feu(_HlvWaoM zxofMQ%>oaGd5s(WFr(b}M~`uDluh(YH^cmoFr9ZX2j>^&T6|0(j_0n|+XF=Rx~}Z_^wGU2C1BUltFhRr{LV)DpQk5` zOj&U!_Jc3@$@9AT>!%lAe5#L9TtCfD<+Sm1IEp(tWEB-5#<$Qpe6p-47BH52)!8^= zk;JGZza$?4TCa3_PpHQGwh6ejn{$^E3iN=zOxNBYWzAX$M#l-(Tm~3T&1K`CdxU;C zF2TwQ>r4)?89iq9z3H3n%&{7kSv!}XXb$USm*($O$E7hInu0=uqb}{WR$eYuTewJB ze4xi`-+X+4bp@f zy?w~%+f`0DwD+ys#p}9dVlV)<+P${gw7D^}DFa}So3|lm=!X}&-}$^SUo46Z%O}C)Na&vd*|2x|9qJ~Q51E77xS5L;>=@cN zTj}MWw2PtQ8&nJqIFZ`&-TIN0*hat->)iu@zev(`lWVZ?y^2q(4^-(qrR4KpsgDmh z*bz1%sV1w<&VMP3%afF=y?8lGmg%FuL`6$wp(X0TY(z1;o%?Nu43Uq2TC%}V>pu()VuH;=%1*UVt)jRo#rY-D(wGS&f(PxKDQka0S{;gi;K;+} zggs?TV0%Mdygx)g)6;A%x>RElthnc9RI|uf1R8EFzY@4-b@!*_qjFAy&V|X{=}WD3 zo}9Q4EixFf%%Pj@Wl%zZG4_V#d~$sxw~p>8EDBwDB{Bb-KC5qy(i&0kx-hBLdcka> z+5Eb>&%6iU+RK7+FWLjKfsqc<@A{{rcPDetaf7hwak6%&;4y+;dG=pYJJ|=~0#XS1 z`{BP4??2yUyFxb?*R#&4k^1hwiR_(74i4Pl@w&xLWxVc+4dk@W^6g#ynsp(#42FP* zm5znj3Iz8FwRDgWZh=ONlNpXJxAiy|+AXzkt1d)GA5@LNy!>oup^U01f{A6N4QBl? zBag^){&-Onrgy6GofT*8K60awHFc!6LjmJLB{Y$wSR`b*SGZ$&sz@+=(Gi!YQC&WF zha7PsiZPgpEpJCjyt2r)6iopedkf-zwbOMgNSqxU5x5FdUD@`?;VCS*UozP#1l#BSxuQf zSk{Lbv1t`PG==H>t97Dsl{dRASoo=1{I9pfZCWMQL9M$IR>|u3Q#-Pti0wx*b8Ia+ zT%I30nQ>h|7Mi(ZyX2T6hL}|zn3V{6Rx*AoU}z3V~G9d+k-#j#dw*2#df!gBMEFO zdqrXElfl+?oo018h3>Ti3#*q-BeQ8*94^me1W>e2+tDztbvfpt8Rc*-w5)Cd!OX!i z%DqNg%(dIJDNvxsY$O>^>T67ND3|eg?fcaGkeSTDi!cl4*7nVkmnDbhWcOkACb+jzT=K8q9s@muJS*Ly@^gKe z{D`7BqNIcL;9EmO&gyhE{Lpr*B?j$MxZW;r$8Yv9XqUp*IJ7fPfiRLRH$%7ku>bZJ zU>8ncm;R+cwS;oV_){E%d=6p%w)cANUdwW5?R#&qzq&sc?&Nu+6b#mSvhl-23zy|U zv$e$}H7&ACVSR&YLnR3M&S>Bs?k^$+w|Fm?pl*|q;+(LDA#**g&xGMB6OzlRn3?zD z%u{TkK@uWHN@7Mw#qcIwi&~V6!Oc26+Iyahn_;iG7%ZH$15;AHF7nt@Y82dOOij3a z%>L22Ot|={fts)nRUv4h&~w&dy}>$z8dR>{!t5ebfPZ9I(3ZYnG8w0~oHw`J1khmS3Nby!(H1yh28iMTqIX_p#Q zP&_$p>toMOX?H|Z)_G`8W0>LV^EJf3CAQpx_b4cw*eai3wkxF$I-y0+pK8}Ok-f}Q)CFRzveog^Qg)pS2ALapX$w4mj~ z>0Xr%D?J%Hd4HMK$Z=MGahsNilB*kbU#|waTbteB7W+~bd?cBF@T(cQi5JaY-m{lw zzr?R}UvoF*SxJ7cK)C$S@s{P{$-S1y8{EO-xo8D3(d#!t(3k2>d}*F~_Cp%P3a3K( zpzmP7v&XuwZaqU!mloZGZTUdEoG*{@1bot0FF_yLDiKE3YKb`F69&@%0C_|=_9 z#R4_md#-i-C)aG@R-hlVk8qD+$i?Lrb|Ah!ZFRI!XUB@$-w_Xsxbm$7qjHQTWpuCl z(qc+B`e~RE>XJHUph*ahS*lA;n|b`5@%e79SeabScy+u|jnTbqYF0+05PZ)s#CL+A zsMAPw46}=f#^FBNy-;Ts_|Sr90w3?WZcuvOvnR|&N%p%K5Tu){uPYXR9&vR!q26d< z)^W+TH{kooZkeJNusXGlLi}io;FnboZ5zS56z#5rm~Jzm7MRbAs2sVjEm-P&7kr%oG!?+hN!+IEm%5PYZlSL~VX&mRDu4%tekE$BBOVmsDA ze^yd2R`#y~;N%Q14R`yS6IPUw&}!)4>aJKke3+2)i6Og5XqH%Xl&jI8$ zX7K(Y-{&3xEYTB}sCmOtbkWSjifLDGnLzrCqzF~9{^742n~$s}_~juqI}Ozb8?Rf? z3KWebm$}oL&B$YokDHkwPWJ}B&7#lQVRAspqA<$&t>Eq*`ozKMGQ-1x+CDscAw9(M z&GnfWhl1{R(AADD!+tY_wF4*PyxWu!YlLwV z$_q)&ztAkRi5n~!9w{j})!W%SQ`lQJY{=+t&7g^jA6kKwlMtTcZ_P8R!3_SUVqwOn zcHt5bwuN+QK+6>)>Xs~hKW_`D%a0r2O`6{`idSt#KfDC>a}_5+R%2d%ruPGKNDq%g zz#q9N0DH;_jZ%XliXOFFZ}hh-#{V^jiFrX&LIALP1@OJJHzv5tqNQJ+;(3_bvF7b* zUt!X7_td=wy12c^bu?P7G01F5M#HBodXxjX>vAKP>xJa`F_szcIg-$~>g~@`8tmbd z#2=;!MN`dA*JW0nl@88zaZ_u4RSQ*7Eyc@LGAKTO+fqr3Wd%-PpC$t)O)t7>wx zVizYb@CP>wjc94(-sFEE=+kxXfk&!9lBeOlnijI+^;=d)5}kiEn>pr9=KY{F$+Kq4 zI(jgZY@HlB;_t6itFKj``-k8~x0-LzM&u-J1YH2r`ycKvFhaRkelxzTv8w_cfE$L2KnetLvq{C{(t#X?$&>*C~x6h4;w!CiSsvG!)z1| zW4*3&Qy1SK?P^O+l@D;mDCnsg#^}CB>K=BG4O@Z0ciN(p`!^WfU0MMgmJD(tSJEg3 zW9T|FIYwU+A@3)F#uYCx-K7=M!0yB&CG>IxW29BgKMwx6r_7Cu(&vh` z6DEadFCx!!Ta&cE=dvU=Uz>bfUkukNk;3PWo#sW`^yWHW8JGibE9zJeb2;Dr`E>(# z61gT-n$L1xX(Fdkiobj$RUXs!@!7NCr61a3|_)R=*ZM0 zPDeegUE0NSbRk>kaa5h6=W+6n?3v~PQtRny4QJLUF|i|T$VbQ zv>I67Z?Li0>G5a(Vn~EBtB8k{@&Z{w`$)>%6tgGM)e~p_>q7Yky@eqRoyme_O2>i@ z@;29HK8fsFUeFx!ZSo91g4{9NfCoeZ({J^0OopRMQ|lw;kh$)U)uuD7H>hdF^m_$vG%UV=QyvzY z=jPoI!3m1eB@yOWaD?}CS(eILV=Z2Y%xSYo%gV|qerV&f6divGW-vD^me?KUd3T9f zpx7IhU7*2csctr4mzR^CDTCcLCoel!CuiC(#JsJ~UrqG5FI+sE?-}M1pYp!HCu7t& z-SZZ12_KLc(9()0tcB2vO6V(L0iv5lu9HA=?UVPr(l4_?s;HOzi4~ZYag|J%(~3I9 z%+O~hCT+CQH~~YRe?#lcl0_#vU0GTrLQ!>dNpz-l@u`}87z-)EvApOzkb$)Yr}}5X z<*R8NJfY$>)O3eJ9rvZXwHLPY*hi@2zQrcB4HUI*$0TkVsZPpTJ4W-W1R{7JvI}u|?B;G3?rD=;mY85|9_oxz{7lTk%wy2a z-E%23kC}-9@S<>sg#xenY)48rFiaL7X2wngKobbL9tfJ8YIt?OYR7O*t(LCZ{KkG4 z4{ok$iMYp&M;OyX&4Se!r1;_$pkZaSvRS@dd$ZWhrG`iQg}$C@hJh_W1ZN9E36VW9 zcH7QDy3j0C)b7xBp?e;@gLi(C;%oclq z)=HwO`l|Cs(;4r~Iqk`Ad3^Wxr0P4Hv-8mr7dQp>#~7%c!FG!D#A{kn;=#Kw8Tt6Z z-TGcD_hns{uha{yUY*o>JyB03uIk(l+ZmCu3_W%%W}g4`kp&ZNVfmWZ=m>(!z2c=a z%O(faajm~FI5E}B0Ehk!Lp@V6Di&E}+f-7Kr?0$}uByB8RMlZ=VZOP)q-Zkx?8zW$ zE^4gnV8n%23l#MV?^V*o8q}U2|LAz`5CZ0p}DyHHOfZs z0Q@v3RzJHt){nz_CSHX7VaJ>LeGyf9urmaJeESb_LcW_tNX9F9&Lrs-XN1B!5&<#a0O+ z6XhpKH~ZJt-6x~wwDMOuOVE5C26O~BC9eJ%;0z)(l0l;78`EY?Ow_VoD`IqX8} zokbSc5usavnFNreyr=8kfHX#h;AGh(OkWGpJzAN@}T|F#I*bKk`i=eHg zp6`5gW*44*BuE-CdF{b_D~d)K7xsB!JoRy3_^uycl`%8wV^RxWiMp3o6h%n8&&Ag$ zVyF){(QAG#l&NCdVC@repdmR9nwg9Rm*xz}`>k}Km{ZuHCpEg2N;3i=xPvGGd7ozo z^Y!25V8H%m>?UaX9FSD=Z&4P!Ozkm!lHubGk-+l9uFLY=tNP){enxg|lZQ>K#NvlM z4xu4AE(Q3R^>vN0kV4MfGR3-oniOJl0p_)gPG2&svnoWmg7Q(SeB=^3yeR!+Zu-*q znlYr0xAckQ!a;e##|W%XFj>dz0{la+^XlIJks(B0Z^5L+0KwwW2S~Ns^}?=D8^xaZaN?zHKB8q5OU(x+?p0U0bZH70w2f z*nnGwl~AT_Tv%pZOuJ-d0KI=Vm}<6_LEI+;D6m!@8(HW#WVG7JOeHZ*rN zPzF+%w23uB&kNU94c3T{jU&SS%U6_Fvo=1qSFCewBu`dsZg9|Ko>+6wW=kggv6ziGQL6#i{%0jaffD z2HsQf8?oTlWv}pOa`#JEFkN|%B0K>?AX2UoJ?AdBx*(jbX<3#A(Y(CZWxSAwl|{s! zn_JkM9@`(zASV zO9yH#s;-9-puNfrV3zGITN{>@)rPNjugi1;t1g1|>}~O<_B-&Nm!Lc++%CN;2KhG^ z7OWW-vNun2@A_{)-~QfIerL)0_d1ua1KGqd3uDQCA?;uQt~Wx1_t5JW1RrWWzdcw} z4R@xFbfpJQ;&krn^e50Gko^ao7%Q>W<${aLSk8eSHBg@1jIl_-tgKVSj-+-u!%KR;HFz#gFA7ih9BrWB1^*_alSqIHXHkZ+9 z#uJTto_`nOBkPD202nq85e)t`W;qoF*jJsud`ROwcbR{;L@TH$Z|{+8f_!uUGEHT^z3QC1_e-nr6I=#!CQPU~;!`lF?_v%<{# z!4uaqO0M#^iWA@ z6>8}fr_E>I(qsCtvcB#G_R3Sw&A;$x4L0b<$Zjys+HU>`#*WUNM>#ofM9q*3%Q8wp z@gZ_k7e1AD9}Z&347i~AQkYp@+*EO=@%eqR#d@g2%vPUk)oKDPf~pN$pr0VnR0;_g zZ7isAnxV)1RG0%I>m10Y;K&{@?@ti$G%n`|#0@0rq ztrzrud3`zTi|WQ$RI&Y_9r+$1`Z^DOUUU%K^jQ-KqBHE zFMoYep;9$w_G?;h!6IvY4x{WD?|*7#g~FxDW86rvX96dLx3g~so9%~TF|p5Jcnf|8 z3~3E|&eZDQU!HBxN`9njsp%yIBNAZZJ|oD82(u97<^aM#S(k9u595BeW`_ajQpZBz z<%-hbr)5X6u4XrcH+EOHnC!}IliYpmmC_nOAz=0(5F?{!V3(d%drXd47vK?-Z3)35 zA#^hZ-T|?X)7kYtx_`>#1c1vK zo!+OHd4nQuGfG~p%xIewYkEhb`` zj_&vMaQRs;6yhCAo|wqt#mE<8Tz=LB4+J+5^B#PACJxVCxl7C`SDEBoYfNu8=}``I zjcYqybCh`wD`QXmKoR{^p|aknjima33p^9Ieu`87yzRIz<&8K zv$h3`Qc2@}e!$s_0j2hre&0#tu;s?EW$|8!&{cW9L9&Dnx}=)Y0+@3~#p*Nw7zMvj z=$n6avvwxa%Ob)9u%^2*3*-;}5Cow;t>69E=Xq*jdHy7zKS~|Q%FI$JwOX0ibzhsS zkC9d%K9xGz4IYZxQ}9s48jin*>==)Qp{14{hh3^{`Snt_fjT3Zcrn$?+_{89I zLK`LBmOWSMc^%K{xXo<#kJikG4+BVxn}zcGUF$%J;f(s~xL%X*#;7l2;z~j zifF&HHKOGHL;$JzJLOpVe_qYM!=A35-*{2FPw5x#l+i#pmNyQsvsVt_Dv|_NF=Np; z?Y(T&ZR@iZGEH^Rv84wyjT?51EGZLFAw*%pzee`TK5!nn zzOl))gw!42oz04<_1R$cGtlp=Pw@tQcYG}`VYvpP3~`O$s5>L{*9OCJSs2{XqKk8gD>Lv1@ney8N<9v=6vedU_C4kZT!L;ms=Kj+F9&9_GZ{j_?Kd0C=*NE(nj-$- zYI2FIF7v6$dFPXmc3(TGEw{jFS#l~|)G|nO=PusUyzg4{0u95lIsZkpsoCADx$1() zh6b%kT&$>o-0$f%v#dSip>0gEsRd$wz7N3>!s&xF+FpJtinv944hX0Ohgai#nQ8NY zk*c&kX%$G(07@dC7wf(K8*W9*fVOw`#TnsokF&o(m1X*Bvch+z-Myk@!584%`iBAW zj@S__1-|q`N46{vY>6!YbpP&yrPLL9xc&m{9AL$TCg2fa;1}Es&8A0IYJ|3t7-rBq z<&#?U&UWxTv_o!|gggQIij~=|zS>RsqCA?|{U~@3; zSZRy$=_mu*>~O}(T=YUG();tMHzYREi*e!0Iy2O0&KoLj`O@QYB~=eBuuV77iNa8! zT=@!mY>rn6S6a3f`ljOGchSv6w0}RjJ@IZj-U>rGeU8>c6p1{j`~xZG2H`@17=_-9 zdWSBO8vEYnKXH&9WUMqn?;Tjx;IxXp)VZ&HhZjR!($o0g`i`M355QsjeGVWN^ICTW ziCF@~w%A}|+hA&$47RA*k5fDdju^{Mbz#^i)*4|Qx+Iw@F23uk!R6{bY8}sG?gOks z!PSGI@BW;+Tq>tLt~7UyJh_h|^kB^HoK0O_skx}dlLd}1T121EnIC0>u>;)B$HqQX zg+~Zcvzqz@JvyFM_A-}`;ziZxJrU}MQ7lXM9v62Y>qbP2Sp6fcEglZlRWv(HN`CYq z0IsTor~%&GiS8|=_v}Fk=xw>5ad;~x1)l}Y#YXn}n9CgGupWOw`#>#!<;&Z(ux9e& z1=RXi+4X-syPGUvQgNq&Mu3@9?GgBDfFf#c=FBrz>;XgBU+?y9YAlUx?73gAJ}@P` zgYg6ZVBA#@r2rFIZ%(HLHtCjQ_UlMj*Di`?fB5<-Vq3eOruae3QWtEay6y^KGw}My z!{I1EL*#;MCjoSnVQRiVO;)V5>!9E1g#R~K&pRRuwWTj zoYg%SmZ%tY>&G`L!fHz9Buog3D@3#|GJ+K8qxdGwZmLFL#yGAmAG>kRi?#1mRf83`?6|S)vaFi_KNsDJ5&5E55Igs@tF4vR+HH}w3xUBop4S4>0oFQQx z@b9N#i#x%*WC*a*c;_Ex+lot2XgUQ7Wr7q9@Tw4uC}edxFmjZ=+WVmP<)p23L@UNW zvhOhST34^*=WCpknZ0#qY-ZhI)IS^TvhBq{>=X?yyoc0QR$7b zwr<1Jq&0jA+|nSbI9jpIv|b5S^Br%U>gMkoZx0PrmCx`$jE#n4t{i+6aIk+1plfKZ z8aqap;CEw$D0o@@4EuC{ib&EYh!EEw&~jLhB-n_#QkU4teR`G?$&$XlfVH``ckC?} z;I64Qo@)>OP8_9f0d$+zWKT^Xw!u8JM?oH@AAMxAg&p7)_!DZOZzW#cJ``z%Hi*ne zcYa^CwqL5OBLcR=R}fBN#(PwC*qGvVTY2Jrs@RP=h=kv`_@Q0rUIR=0BoUs`o2m{Z z0=%+r427BX7w3Qr&R5XAi7nv09;-$DJ95poU=dqz%NuMO5r;-$=H|*+u=Fw$QZr+r2T%u^gxW|;FvHaAO3(9$l_O+i&()jqM{KkZy zWRdh3{_Cvlr@ZR%B(s^Q-tTwoPV%#U%4j^Q`ELQJrPUt*p1VM{MYrnCcw)eDFQ9E; zqy{rx5zr{W;%DW{Gb4E`AQu67ITx~0A$Gfky_5#E=duD~oZwE7SQv=I^sCO}X zp;f3uetnzy>bFNi2Q_8VZl6h^{8>@WN-4qAOS_E#kXDCTlpfXHWHGf-OhE~C3XrW( z^z!pwv&Gdb^`5A9W4Vn%+;o^|V36n%IeO9ETun=Xk@v{ZdjsOr`S_wh6=qBSTjsb= zcBDbm6sG2hWmMliXMlMg+Y2cpm%Jk|$Tl)rF|ynP$<=E4`RW?^(-JO=5>sV`!BFRg zgkHou3rym{Q)7bBA#heS_#eXNPTc$*EC_)7yJ;J!dS=xgDu*zlzA9j3zh#|Y>;fOF zI@jv4h1|FMJrp44ls&|o4Tuv^h`3{3eCLs!p*cw26kHh;bXF?|rmZP#k{vBB+6s2> zv*Z@M>U7+{@=sWrZxwYXeuBy@V>HMJNL>RST2L7Ompl-N(C({(0H@?e!p*HCqh~&v z4QLWCdu`U+50K&@z8MfUhvXJ@jh=;WDbRM_sKV1;9<%=_7GAk2n5gOYW^2V%TRz_) z`-&y~?SL*(MI7<8U0!C1RHD&XFw)-7&X#C55}oVVt%viNo2{Es*;9!f5N9| zQI@@$zN{t^m;d3Ua0oj-N-v+JaUSaE+H!`KHWmh2ny;urkF?fxF%^JHJ0L)%Q6p7; z);3LoZT`~-2Y>Av4hgc)79;gvBdZf0f3Rf=_&}o~6*;DgJ1lV10y0~d@UsF**9C#% zvK#50YgF&fWsvQGyVh|Ct46pyJWI7*x1jglt?heC1Wl_yelNEQC@u?fx!*yV0(L^} z6AqZ=n1W`Bp9aWEz~v&hTmvUaYQSido)ljnTd?of|AYAN*7~5P8t)+rXd(GY{^#TZ zx((JMV7c$oh)Fxy7pH?$dg}q2z~e~>u^4rnz5DABs8n-uFk*hfKd!=_xH&s@BqZ>q zeeUYJ6$Q6lI!Y~T{n6LwWVoax^{}^AYgu_nBJ)i-}XbW!U!By zg!HLhs{-Cx#{fFONQ>ER_7(8xH1brY5-42fmGU!ta&K4e*?-Ejv!>onR166Cx79af zQ}{EK<59bg1)U~axg?r4oJi*!79M#C+Q@jm6rgkV&+R2t{Ge7Ju8AH3R3{&)_c_9 z3a@yhn>$!IG+3Cq7l^9I z0th@JQvKH^Is8g8K_!Y?>G`x*RDZ@5cBCCOi>OF5XLM&8>CsKW^fK5s;E@5Wg-y30 z+&E6)F3i3RC2%STI`aU_-htTy9T#{P#-#yFM`Amue0lY7?m4RxPurF9RD)=1f!a%y zl=AV)E%|HANFgzaf8z≷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

    diff --git a/apps/server/src/assets/db/demo.zip b/apps/server/src/assets/db/demo.zip index ebf3f8a7c00ea48ce5d031a2b5e3c48b9c5105cb..b685648200496d9bd6e99fb8c9c91bbbdf112c72 100644 GIT binary patch delta 26619 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 delta 26099 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 Date: Wed, 5 Nov 2025 08:19:37 +0200 Subject: [PATCH 129/136] chore(edit-docs): set different port to edit-demo --- apps/edit-docs/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/edit-docs/package.json b/apps/edit-docs/package.json index cc664e81d..958a54f3d 100644 --- a/apps/edit-docs/package.json +++ b/apps/edit-docs/package.json @@ -17,6 +17,6 @@ }, "scripts": { "edit-docs": "cross-env TRILIUM_PORT=37741 TRILIUM_DATA_DIR=data TRILIUM_INTEGRATION_TEST=memory-no-store DOCS_ROOT=../../../docs USER_GUIDE_ROOT=\"../../server/src/assets/doc_notes/en/User Guide\" tsx ../../scripts/electron-start.mts src/edit-docs.ts", - "edit-demo": "cross-env TRILIUM_PORT=37741 TRILIUM_DATA_DIR=data TRILIUM_INTEGRATION_TEST=memory-no-store DOCS_ROOT=../../../docs USER_GUIDE_ROOT=\"../../server/src/assets/doc_notes/en/User Guide\" tsx ../../scripts/electron-start.mts src/edit-demo.ts" + "edit-demo": "cross-env TRILIUM_PORT=37744 TRILIUM_DATA_DIR=data TRILIUM_INTEGRATION_TEST=memory-no-store DOCS_ROOT=../../../docs USER_GUIDE_ROOT=\"../../server/src/assets/doc_notes/en/User Guide\" tsx ../../scripts/electron-start.mts src/edit-demo.ts" } } \ No newline at end of file From 88b9709f154d0efb5e2e5f1e220335fcdf4199e4 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Wed, 5 Nov 2025 08:26:34 +0200 Subject: [PATCH 130/136] docs(user): launch bar clarifications in the LLM doc --- .../en/User Guide/User Guide/AI.html | 72 +++++++++---------- docs/User Guide/!!!meta.json | 7 ++ docs/User Guide/User Guide/AI.md | 4 +- 3 files changed, 45 insertions(+), 38 deletions(-) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html index 0fc11a28d..11ad7e821 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html @@ -19,8 +19,7 @@ class="image image_resized" style="width:74.04%;"> - -

    Embeddings

    +

    Embeddings

    Embeddings are important as it allows us to have an compact AI “summary” (it's not human readable text) of each of your Notes, that we can then perform mathematical functions on (such as cosine similarity) @@ -80,59 +79,59 @@ class="image image_resized" style="width:74.04%;">

    These are the tools that currently exist, and will certainly be updated to be more effectively (and even more to be added!):

      -
    • search_notes +
    • search_notes
        -
      • Semantic search
      • +
      • Semantic search
    • -
    • keyword_search +
    • keyword_search
        -
      • Keyword-based search
      • +
      • Keyword-based search
    • -
    • attribute_search +
    • attribute_search
        -
      • Attribute-specific search
      • +
      • Attribute-specific search
    • -
    • search_suggestion +
    • search_suggestion
        -
      • Search syntax helper
      • +
      • Search syntax helper
    • -
    • read_note +
    • read_note
        -
      • Read note content (helps the LLM read Notes)
      • +
      • Read note content (helps the LLM read Notes)
    • -
    • create_note +
    • create_note
        -
      • Create a Note
      • +
      • Create a Note
    • -
    • update_note +
    • update_note
        -
      • Update a Note
      • +
      • Update a Note
    • -
    • manage_attributes +
    • manage_attributes
        -
      • Manage attributes on a Note
      • +
      • Manage attributes on a Note
    • -
    • manage_relationships +
    • manage_relationships
        -
      • Manage the various relationships between Notes
      • +
      • Manage the various relationships between Notes
    • -
    • extract_content +
    • extract_content
        -
      • Used to smartly extract content from a Note
      • +
      • Used to smartly extract content from a Note
    • -
    • calendar_integration +
    • calendar_integration
        -
      • Used to find date notes, create date notes, get the daily note, etc.
      • +
      • Used to find date notes, create date notes, get the daily note, etc.
    @@ -145,17 +144,18 @@ class="image image_resized" style="width:74.04%;">

    You don't need to tell the LLM to execute a certain tool, it should “smartly” call tools and automatically execute them as needed.

    Overview

    -

    Now that you know about embeddings and tools, you can just go ahead and - use the “Chat with Notes” button, where you can go ahead and start chatting!:

    -
    +

    To start, simply press the Chat with Notes button in the  + Launch Bar.

    +
    -
    -

    If you don't see the “Chat with Notes” button on your side launchbar, - you might need to move it from the “Available Launchers” section to the - “Visible Launchers” section:

    -
    - -
    \ No newline at end of file +
    +

    If you don't see the button in the Launch Bar, + you might need to move it from the Available Launchers section to + the Visible Launchers section:

    +
    + +
    \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index c0be59116..98c811ece 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -14187,6 +14187,13 @@ "value": "bx bx-bot", "isInheritable": false, "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "xYmIYSP6wE3F", + "isInheritable": false, + "position": 40 } ], "format": "markdown", diff --git a/docs/User Guide/User Guide/AI.md b/docs/User Guide/User Guide/AI.md index 57302d77d..f5818d915 100644 --- a/docs/User Guide/User Guide/AI.md +++ b/docs/User Guide/User Guide/AI.md @@ -80,10 +80,10 @@ You don't need to tell the LLM to execute a certain tool, it should “smartly ## Overview -Now that you know about embeddings and tools, you can just go ahead and use the “Chat with Notes” button, where you can go ahead and start chatting!: +To start, simply press the _Chat with Notes_ button in the Launch Bar.
    -If you don't see the “Chat with Notes” button on your side launchbar, you might need to move it from the “Available Launchers” section to the “Visible Launchers” section: +If you don't see the button in the Launch Bar, you might need to move it from the _Available Launchers_ section to the _Visible Launchers_ section:
    \ No newline at end of file From d271fe7fddf4fb4d2123fbaff6d32e5e542f6ef7 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Wed, 5 Nov 2025 09:26:14 +0200 Subject: [PATCH 131/136] docs(demo): clean up expansion state --- apps/edit-docs/demo/!!!meta.json | 2 +- apps/server/src/assets/db/demo.zip | Bin 916285 -> 916280 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/edit-docs/demo/!!!meta.json b/apps/edit-docs/demo/!!!meta.json index 92266fa4b..44b61171d 100644 --- a/apps/edit-docs/demo/!!!meta.json +++ b/apps/edit-docs/demo/!!!meta.json @@ -3879,7 +3879,7 @@ "title": "Scripting examples", "notePosition": 350, "prefix": null, - "isExpanded": true, + "isExpanded": false, "type": "text", "mime": "text/html", "attributes": [ diff --git a/apps/server/src/assets/db/demo.zip b/apps/server/src/assets/db/demo.zip index b685648200496d9bd6e99fb8c9c91bbbdf112c72..c4cbc6058fef77cc0e75f15d9246f36cdfeefebf 100644 GIT binary patch delta 16315 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 delta 15531 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ϒo3hR&^2t%6BAQVwI4u>By{; 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 From 16785a5c0bfdee71b4f5537cb44d188357bdb6ec Mon Sep 17 00:00:00 2001 From: SiriusXT <1160925501@qq.com> Date: Wed, 5 Nov 2025 15:40:12 +0800 Subject: [PATCH 132/136] fix(quick_search): enable Numpad Enter to trigger quick search --- apps/client/src/services/shortcuts.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/client/src/services/shortcuts.ts b/apps/client/src/services/shortcuts.ts index 94dd8893c..7d6a1e956 100644 --- a/apps/client/src/services/shortcuts.ts +++ b/apps/client/src/services/shortcuts.ts @@ -46,6 +46,7 @@ for (let i = 1; i <= 19; i++) { const KEYCODES_WITH_NO_MODIFIER = new Set([ "Delete", "Enter", + "NumpadEnter", ...functionKeyCodes ]); From 26ea43d604b53e9911c920c64c2b91ee6d358f9d Mon Sep 17 00:00:00 2001 From: SiriusXT <1160925501@qq.com> Date: Wed, 5 Nov 2025 16:01:26 +0800 Subject: [PATCH 133/136] chore(test): add vitest for NumpadEnter --- apps/client/src/services/shortcuts.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/client/src/services/shortcuts.spec.ts b/apps/client/src/services/shortcuts.spec.ts index 87f8ae489..b9576025f 100644 --- a/apps/client/src/services/shortcuts.spec.ts +++ b/apps/client/src/services/shortcuts.spec.ts @@ -159,7 +159,7 @@ describe("shortcuts", () => { expect(matchesShortcut(event, "Shift+F1")).toBeTruthy(); // Special keys - for (const keyCode of [ "Delete", "Enter" ]) { + for (const keyCode of [ "Delete", "Enter", "NumpadEnter" ]) { event = createKeyboardEvent({ key: keyCode, code: keyCode }); expect(matchesShortcut(event, keyCode), `Key ${keyCode}`).toBeTruthy(); } From 977284fe5749ac3f74ab80a457c558b1e2a0c449 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Wed, 5 Nov 2025 10:20:35 +0200 Subject: [PATCH 134/136] docs(user): document read-only database (closes #4341) --- .../doc_notes/en/User Guide/!!!meta.json | 2 +- .../Advanced Usage/Read-only database.html | 42 ++++++++++ docs/User Guide/!!!meta.json | 76 +++++++++++++++++++ .../Advanced Usage/Read-only database.md | 32 ++++++++ 4 files changed, 151 insertions(+), 1 deletion(-) create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Read-only database.html create mode 100644 docs/User Guide/User Guide/Advanced Usage/Read-only database.md diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index c9517ba7b..570196694 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]},{"id":"_help_HAIOFBoYIIdO","title":"Nightly release","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Nightly release"},{"name":"iconClass","value":"bx bx-moon","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-window","type":"label"}],"children":[{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_M8IppdwVHSjG","title":"Right pane widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_VqGQnnPGnqAU","title":"CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_SPirpZypehBG","title":"Backend scripts","type":"book","attributes":[{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_fZ2IGYFXjkEy","title":"Server-side imports","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Server-side imports"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]},{"id":"_help_HAIOFBoYIIdO","title":"Nightly release","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Nightly release"},{"name":"iconClass","value":"bx bx-moon","type":"label"}]},{"id":"_help_ZmT9ln8XJX2o","title":"Read-only database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Read-only database"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-window","type":"label"}],"children":[{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_M8IppdwVHSjG","title":"Right pane widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_VqGQnnPGnqAU","title":"CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_SPirpZypehBG","title":"Backend scripts","type":"book","attributes":[{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_fZ2IGYFXjkEy","title":"Server-side imports","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Server-side imports"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Read-only database.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Read-only database.html new file mode 100644 index 000000000..e170c6fe9 --- /dev/null +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Read-only database.html @@ -0,0 +1,42 @@ + +

    The read-only database is an alternative to Sharing notes. + Although the share functionality works pretty well to publish pages to + the Internet in a wiki, blog-like format it does not offer the full functionality + behind Trilium (such as the advanced Search or + the interactivity behind Collections or + the various Note Types).

    +

    When the database is in read-only mode, the Trilium application can be + used as normal, but editing is disabled and changes are made in-memory + only.

    +

    What it does

    +
      +
    • All notes are read-only, without the possibility of editing them.
    • +
    • Features that would normally alter the database such as the list of recent + notes are disabled.
    • +
    +

    Limitations

    +
      +
    • Some features might “slip through” and still end up creating a note, for + example. +
        +
      • However, the database is still read-only, so all modifications will be + reset if the server is restarted.
      • +
      • Whenever this occurs, ERROR: read-only DB ignored will be shown + in the logs.
      • +
      +
    • +
    +

    Setting a database as read-only

    +

    First, make sure the database is initialized (e.g. the first set up is + complete). Then modify the config.ini by + looking for the [General] section and adding a new readOnly field:

    [General]
    +readOnly=true
    +

    If your server is already running, restart it to apply the changes.

    +

    Similarly, to disable read-only remove the line or set it to false.

    \ No newline at end of file diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index 98c811ece..c046fac03 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -14150,6 +14150,82 @@ "format": "markdown", "dataFileName": "Nightly release.md", "attachments": [] + }, + { + "isClone": false, + "noteId": "ZmT9ln8XJX2o", + "notePath": [ + "pOsGYCXsbNQG", + "tC7s2alapj8V", + "ZmT9ln8XJX2o" + ], + "title": "Read-only database", + "notePosition": 270, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-book-reader", + "isInheritable": false, + "position": 30 + }, + { + "type": "label", + "name": "shareAlias", + "value": "read-only-db", + "isInheritable": false, + "position": 40 + }, + { + "type": "relation", + "name": "internalLink", + "value": "wy8So3yZZlH9", + "isInheritable": false, + "position": 50 + }, + { + "type": "relation", + "name": "internalLink", + "value": "R9pX4DGra2Vt", + "isInheritable": false, + "position": 60 + }, + { + "type": "relation", + "name": "internalLink", + "value": "Gzjqa934BdH4", + "isInheritable": false, + "position": 70 + }, + { + "type": "relation", + "name": "internalLink", + "value": "eIg8jdvaoNNd", + "isInheritable": false, + "position": 80 + }, + { + "type": "relation", + "name": "internalLink", + "value": "GTwFsgaA0lCt", + "isInheritable": false, + "position": 90 + }, + { + "type": "relation", + "name": "internalLink", + "value": "KSZ04uQ2D1St", + "isInheritable": false, + "position": 100 + } + ], + "format": "markdown", + "dataFileName": "Read-only database.md", + "attachments": [] } ] }, diff --git a/docs/User Guide/User Guide/Advanced Usage/Read-only database.md b/docs/User Guide/User Guide/Advanced Usage/Read-only database.md new file mode 100644 index 000000000..cacdc9675 --- /dev/null +++ b/docs/User Guide/User Guide/Advanced Usage/Read-only database.md @@ -0,0 +1,32 @@ +# Read-only database +> [!WARNING] +> This functionality is still in preview, expect possible issues or even the feature disappearing completely. +> Feel free to [report](../Troubleshooting/Reporting%20issues.md) any issues you might have. + +The read-only database is an alternative to Sharing notes. Although the share functionality works pretty well to publish pages to the Internet in a wiki, blog-like format it does not offer the full functionality behind Trilium (such as the advanced Search or the interactivity behind Collections or the various Note Types). + +When the database is in read-only mode, the Trilium application can be used as normal, but editing is disabled and changes are made in-memory only. + +## What it does + +* All notes are read-only, without the possibility of editing them. +* Features that would normally alter the database such as the list of recent notes are disabled. + +## Limitations + +* Some features might “slip through” and still end up creating a note, for example. + * However, the database is still read-only, so all modifications will be reset if the server is restarted. + * Whenever this occurs, `ERROR: read-only DB ignored` will be shown in the logs. + +## Setting a database as read-only + +First, make sure the database is initialized (e.g. the first set up is complete). Then modify the [config.ini](Configuration%20\(config.ini%20or%20e.md) by looking for the `[General]` section and adding a new `readOnly` field: + +``` +[General] +readOnly=true +``` + +If your server is already running, restart it to apply the changes. + +Similarly, to disable read-only remove the line or set it to `false`. \ No newline at end of file From 4ae38ac5d6365835e4dd4b5513cb913ae1af42d5 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Wed, 5 Nov 2025 18:32:34 +0200 Subject: [PATCH 135/136] docs(user): widget basics missing template (closes #6148) --- .../en/User Guide/User Guide/AI.html | 51 +++--- .../Advanced Usage/Read-only database.html | 29 ++-- .../Installation & Setup/Data directory.html | 157 +++++++++--------- .../Custom Widgets/Widget Basics.html | 23 +-- .../Developer Guide/Documentation.md | 2 +- docs/User Guide/!!!meta.json | 98 +++++------ .../Custom Widgets/Widget Basics.md | 8 +- 7 files changed, 181 insertions(+), 187 deletions(-) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html index 11ad7e821..6d9c62f15 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/AI.html @@ -19,7 +19,8 @@ class="image image_resized" style="width:74.04%;"> -

    Embeddings

    + +

    Embeddings

    Embeddings are important as it allows us to have an compact AI “summary” (it's not human readable text) of each of your Notes, that we can then perform mathematical functions on (such as cosine similarity) @@ -79,59 +80,59 @@ class="image image_resized" style="width:74.04%;">

    These are the tools that currently exist, and will certainly be updated to be more effectively (and even more to be added!):

      -
    • search_notes +
    • search_notes
        -
      • Semantic search
      • +
      • Semantic search
    • -
    • keyword_search +
    • keyword_search
        -
      • Keyword-based search
      • +
      • Keyword-based search
    • -
    • attribute_search +
    • attribute_search
        -
      • Attribute-specific search
      • +
      • Attribute-specific search
    • -
    • search_suggestion +
    • search_suggestion
        -
      • Search syntax helper
      • +
      • Search syntax helper
    • -
    • read_note +
    • read_note
        -
      • Read note content (helps the LLM read Notes)
      • +
      • Read note content (helps the LLM read Notes)
    • -
    • create_note +
    • create_note
        -
      • Create a Note
      • +
      • Create a Note
    • -
    • update_note +
    • update_note
        -
      • Update a Note
      • +
      • Update a Note
    • -
    • manage_attributes +
    • manage_attributes
        -
      • Manage attributes on a Note
      • +
      • Manage attributes on a Note
    • -
    • manage_relationships +
    • manage_relationships
        -
      • Manage the various relationships between Notes
      • +
      • Manage the various relationships between Notes
    • -
    • extract_content +
    • extract_content
        -
      • Used to smartly extract content from a Note
      • +
      • Used to smartly extract content from a Note
    • -
    • calendar_integration +
    • calendar_integration
        -
      • Used to find date notes, create date notes, get the daily note, etc.
      • +
      • Used to find date notes, create date notes, get the daily note, etc.
    @@ -146,12 +147,12 @@ class="image image_resized" style="width:74.04%;">

    Overview

    To start, simply press the Chat with Notes button in the  Launch Bar.

    + class="reference-link" href="#root/_help_xYmIYSP6wE3F">Launch Bar.

    -

    If you don't see the button in the Launch Bar, +

    If you don't see the button in the Launch Bar, you might need to move it from the Available Launchers section to the Visible Launchers section:

    This functionality is still in preview, expect possible issues or even the feature disappearing completely. -
    Feel free to report any - issues you might have.

    +
    Feel free to report any issues you might + have.

    The read-only database is an alternative to Sharing notes. - Although the share functionality works pretty well to publish pages to - the Internet in a wiki, blog-like format it does not offer the full functionality - behind Trilium (such as the advanced Search or - the interactivity behind Collections or - the various Note Types).

    + href="#root/_help_R9pX4DGra2Vt">Sharing notes. Although the share functionality + works pretty well to publish pages to the Internet in a wiki, blog-like + format it does not offer the full functionality behind Trilium (such as + the advanced Search or + the interactivity behind Collections or + the various Note Types).

    When the database is in read-only mode, the Trilium application can be used as normal, but editing is disabled and changes are made in-memory only.

    What it does

      -
    • All notes are read-only, without the possibility of editing them.
    • -
    • Features that would normally alter the database such as the list of recent +
    • All notes are read-only, without the possibility of editing them.
    • +
    • Features that would normally alter the database such as the list of recent notes are disabled.

    Limitations

      -
    • Some features might “slip through” and still end up creating a note, for +
    • Some features might “slip through” and still end up creating a note, for example.
        -
      • However, the database is still read-only, so all modifications will be +
      • However, the database is still read-only, so all modifications will be reset if the server is restarted.
      • -
      • Whenever this occurs, ERROR: read-only DB ignored will be shown +
      • Whenever this occurs, ERROR: read-only DB ignored will be shown in the logs.

    Setting a database as read-only

    First, make sure the database is initialized (e.g. the first set up is - complete). Then modify the config.ini by + complete). Then modify the config.ini by looking for the [General] section and adding a new readOnly field:

    [General]
     readOnly=true

    If your server is already running, restart it to apply the changes.

    diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Data directory.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Data directory.html index ad81d00c1..9f2de8853 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Data directory.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Installation & Setup/Data directory.html @@ -1,12 +1,12 @@

    Data directory contains:

      -
    • document.db - database +
    • document.db - database
    • -
    • config.ini - instance level settings like port on which the +
    • config.ini - instance level settings like port on which the Trilium application runs
    • -
    • backup - contains automatically backup of +
    • backup - contains automatically backup of documents
    • -
    • log - contains application log files
    • +
    • log - contains application log files

    Location of the data directory

    Easy way how to find out which data directory Trilium uses is to look @@ -18,14 +18,11 @@

    Data directory is normally named trilium-data and it is stored in:

      -
    • /home/[user]/.local/share for Linux
    • -
    • C:\Users\[user]\AppData\Roaming for Windows Vista and up
    • -
    • /Users/[user]/Library/Application Support for Mac OS
    • -
    • user's home is a fallback if some of the paths above don't exist
    • -
    • user's home is also a default setup for [[docker|Docker server installation]]
    • +
    • /home/[user]/.local/share for Linux
    • +
    • C:\Users\[user]\AppData\Roaming for Windows Vista and up
    • +
    • /Users/[user]/Library/Application Support for Mac OS
    • +
    • user's home is a fallback if some of the paths above don't exist
    • +
    • user's home is also a default setup for [[docker|Docker server installation]]

    If you want to back up your Trilium data, just backup this single directory - it contains everything you need.

    @@ -35,17 +32,15 @@ variable to some other location:

    Windows

      -
    1. Press the Windows key on your keyboard.
    2. -
    3. Search and select “Edit the system variables”.
    4. -
    5. Press the “Environment Variables…” button in the bottom-right of the newly +
    6. Press the Windows key on your keyboard.
    7. +
    8. Search and select “Edit the system variables”.
    9. +
    10. Press the “Environment Variables…” button in the bottom-right of the newly opened screen.
    11. -
    12. On the top section ("User variables for [user]"), press the “New…” button.
    13. -
    14. In the Variable name field insert TRILIUM_DATA_DIR.
    15. -
    16. Press the Browse Directory… button and select the new directory - where to store the database.
    17. -
    18. Close all the windows by pressing the OK button for each of them.
    19. +
    20. On the top section ("User variables for [user]"), press the “New…” button.
    21. +
    22. In the Variable name field insert TRILIUM_DATA_DIR.
    23. +
    24. Press the Browse Directory… button and select the new directory + where to store the database.
    25. +
    26. Close all the windows by pressing the OK button for each of them.

    Linux

    export TRILIUM_DATA_DIR=/home/myuser/data/my-trilium-data

    Mac OS X

    @@ -74,63 +69,61 @@

    Fine-grained directory/path location

    Apart from the data directory, some of the subdirectories of it can be moved elsewhere by changing an environment variable:

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Environment variableDefault valueDescription
    TRILIUM_DOCUMENT_PATH - ${TRILIUM_DATA_DIR}/document.db - Path to the Database (storing - all notes and metadata).
    TRILIUM_BACKUP_DIR - ${TRILIUM_DATA_DIR}/backup - Directory where automated Backup databases - are stored.
    TRILIUM_LOG_DIR - ${TRILIUM_DATA_DIR}/log - Directory where daily Backend (server) logs are - stored.
    TRILIUM_TMP_DIR - ${TRILIUM_DATA_DIR}/tmp - Directory where temporary files are stored (for example when opening in - an external app).
    TRILIUM_ANONYMIZED_DB_DIR - ${TRILIUM_DATA_DIR}/anonymized-db - Directory where a Anonymized Database is - stored.
    TRILIUM_CONFIG_INI_PATH - ${TRILIUM_DATA_DIR}/config.ini - Path to Configuration (config.ini or environment variables) file.
    -
    \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Environment variableDefault valueDescription
    TRILIUM_DOCUMENT_PATH + ${TRILIUM_DATA_DIR}/document.db + Path to the Database (storing + all notes and metadata).
    TRILIUM_BACKUP_DIR + ${TRILIUM_DATA_DIR}/backup + Directory where automated Backup databases + are stored.
    TRILIUM_LOG_DIR + ${TRILIUM_DATA_DIR}/log + Directory where daily Backend (server) logs are + stored.
    TRILIUM_TMP_DIR + ${TRILIUM_DATA_DIR}/tmp + Directory where temporary files are stored (for example when opening in + an external app).
    TRILIUM_ANONYMIZED_DB_DIR + ${TRILIUM_DATA_DIR}/anonymized-db + Directory where a Anonymized Database is + stored.
    TRILIUM_CONFIG_INI_PATH + ${TRILIUM_DATA_DIR}/config.ini + Path to Configuration (config.ini or environment variables) file.
    \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html index 84a15c29e..6048e6f11 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html @@ -8,7 +8,7 @@ get parentWidget() { return "left-pane"; } doRender() { - this.$widget = $(""); + this.$widget = $("<div id='my-widget'>"); return this.$widget; } } @@ -16,19 +16,19 @@ module.exports = new MyWidget();

    To implement this widget:

      -
    1. Create a new JS Frontend note in Trilium and paste in the code +
    2. Create a new JS Frontend note in Trilium and paste in the code above.
    3. -
    4. Assign the #widget attribute to +
    5. Assign the #widget attribute to the note.
    6. -
    7. Restart Trilium or reload the window.
    8. +
    9. Restart Trilium or reload the window.
    -

    To verify that the widget is working, open the developer tools (Cmd + Shift + I) +

    To verify that the widget is working, open the developer tools (Ctrl + Shift + I) and run document.querySelector("#my-widget"). If the element is found, the widget is functioning correctly. If undefined is returned, double-check that the note has the #widget attribute.

    Step 2: Adding an UI Element

    -

    Next, let's improve the widget by adding a button to it.

    const template = ``;
    +

    Next, let's improve the widget by adding a button to it.

    const template = `<div id="my-widget"><button>Click Me!</button></div>`;
     
     class MyWidget extends api.BasicWidget {
         get position() {return 1;}
    @@ -47,7 +47,7 @@ module.exports = new MyWidget();

    To make the button more visually appealing and position it correctly, we'll apply some custom styling. Trilium includes Box Icons, which we'll use to replace the button text with an icon. For example the bx bxs-magic-wand icon.

    -

    Here's the updated template:

    const template = ``;
    +

    Here's the updated template:

    const template = `<div id="my-widget"><button class="tree-floating-button bx bxs-magic-wand tree-settings-button"></button></div>`;

    Next, we'll adjust the button's position using CSS:

    class MyWidget extends api.BasicWidget {
         get position() { return 1; }
         get parentWidget() { return "left-pane"; }
    @@ -89,13 +89,14 @@ module.exports = new MyWidget();
    module.exports = new MyWidget();

    parentWidget() can be given the following values:

      -
    • left-pane - This renders the widget on the left side of the +
    • left-pane - This renders the widget on the left side of the screen where the note tree lives.
    • -
    • center-pane - This renders the widget in the center of the +
    • center-pane - This renders the widget in the center of the layout in the same location that notes and splits appear.
    • -
    • note-detail-pane - This renders the widget with the +
    • note-detail-pane - This renders the widget with the note in the center pane. This means it can appear multiple times with splits.
    • -
    • right-pane - This renders the widget to the right of any opened +
    • right-pane - This renders the widget to the right of any opened notes.

    Reload the application one last time. diff --git a/docs/Developer Guide/Developer Guide/Documentation.md b/docs/Developer Guide/Developer Guide/Documentation.md index c11d3164c..5d7b25eac 100644 --- a/docs/Developer Guide/Developer Guide/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Documentation.md @@ -1,5 +1,5 @@ # Documentation -There are multiple types of documentation for Trilium: +There are multiple types of documentation for Trilium: * The _User Guide_ represents the user-facing documentation. This documentation can be browsed by users directly from within Trilium, by pressing F1. * The _Developer's Guide_ represents a set of Markdown documents that present the internals of Trilium, for developers. diff --git a/docs/User Guide/!!!meta.json b/docs/User Guide/!!!meta.json index c046fac03..12f9549ca 100644 --- a/docs/User Guide/!!!meta.json +++ b/docs/User Guide/!!!meta.json @@ -14166,6 +14166,48 @@ "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "Gzjqa934BdH4", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "wy8So3yZZlH9", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "R9pX4DGra2Vt", + "isInheritable": false, + "position": 30 + }, + { + "type": "relation", + "name": "internalLink", + "value": "eIg8jdvaoNNd", + "isInheritable": false, + "position": 40 + }, + { + "type": "relation", + "name": "internalLink", + "value": "GTwFsgaA0lCt", + "isInheritable": false, + "position": 50 + }, + { + "type": "relation", + "name": "internalLink", + "value": "KSZ04uQ2D1St", + "isInheritable": false, + "position": 60 + }, { "type": "label", "name": "iconClass", @@ -14179,48 +14221,6 @@ "value": "read-only-db", "isInheritable": false, "position": 40 - }, - { - "type": "relation", - "name": "internalLink", - "value": "wy8So3yZZlH9", - "isInheritable": false, - "position": 50 - }, - { - "type": "relation", - "name": "internalLink", - "value": "R9pX4DGra2Vt", - "isInheritable": false, - "position": 60 - }, - { - "type": "relation", - "name": "internalLink", - "value": "Gzjqa934BdH4", - "isInheritable": false, - "position": 70 - }, - { - "type": "relation", - "name": "internalLink", - "value": "eIg8jdvaoNNd", - "isInheritable": false, - "position": 80 - }, - { - "type": "relation", - "name": "internalLink", - "value": "GTwFsgaA0lCt", - "isInheritable": false, - "position": 90 - }, - { - "type": "relation", - "name": "internalLink", - "value": "KSZ04uQ2D1St", - "isInheritable": false, - "position": 100 } ], "format": "markdown", @@ -14250,6 +14250,13 @@ "isInheritable": false, "position": 10 }, + { + "type": "relation", + "name": "internalLink", + "value": "xYmIYSP6wE3F", + "isInheritable": false, + "position": 20 + }, { "type": "label", "name": "shareAlias", @@ -14263,13 +14270,6 @@ "value": "bx bx-bot", "isInheritable": false, "position": 30 - }, - { - "type": "relation", - "name": "internalLink", - "value": "xYmIYSP6wE3F", - "isInheritable": false, - "position": 40 } ], "format": "markdown", diff --git a/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.md b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.md index 474cba983..39867172f 100644 --- a/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.md +++ b/docs/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.md @@ -11,7 +11,7 @@ class MyWidget extends api.BasicWidget { get parentWidget() { return "left-pane"; } doRender() { - this.$widget = $(""); + this.$widget = $("

    "); return this.$widget; } } @@ -25,14 +25,14 @@ To implement this widget: 2. Assign the `#widget` [attribute](../../../Advanced%20Usage/Attributes.md) to the [note](../../../Basic%20Concepts%20and%20Features/Notes.md). 3. Restart Trilium or reload the window. -To verify that the widget is working, open the developer tools (`Cmd` + `Shift` + `I`) and run `document.querySelector("#my-widget")`. If the element is found, the widget is functioning correctly. If `undefined` is returned, double-check that the [note](../../../Basic%20Concepts%20and%20Features/Notes.md) has the `#widget` [attribute](../../../Advanced%20Usage/Attributes.md). +To verify that the widget is working, open the developer tools (Ctrl + Shift + I) and run `document.querySelector("#my-widget")`. If the element is found, the widget is functioning correctly. If `undefined` is returned, double-check that the [note](../../../Basic%20Concepts%20and%20Features/Notes.md) has the `#widget` [attribute](../../../Advanced%20Usage/Attributes.md). ### Step 2: Adding an UI Element Next, let's improve the widget by adding a button to it. ``` -const template = ``; +const template = `
    `; class MyWidget extends api.BasicWidget { get position() {return 1;} @@ -56,7 +56,7 @@ To make the button more visually appealing and position it correctly, we'll appl Here's the updated template: ``` -const template = ``; +const template = `
    `; ``` Next, we'll adjust the button's position using CSS: From ba61ab18ffeff236ef4592dbb9acb3abf1538dca Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Wed, 5 Nov 2025 21:01:39 +0200 Subject: [PATCH 136/136] docs: sync --- .../doc_notes/en/User Guide/!!!meta.json | 2 +- .../Exporting static HTML for web .html | 36 +++++++++---------- .../Custom Widgets/Widget Basics.html | 15 ++++---- docs/Developer Guide/!!!meta.json | 14 ++++---- .../Developer Guide/Documentation.md | 2 +- 5 files changed, 33 insertions(+), 36 deletions(-) diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index c9af45e27..ef9d57e30 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]},{"id":"_help_HAIOFBoYIIdO","title":"Nightly release","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Nightly release"},{"name":"iconClass","value":"bx bx-moon","type":"label"}]},{"id":"_help_ZmT9ln8XJX2o","title":"Read-only database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Read-only database"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-window","type":"label"}],"children":[{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_M8IppdwVHSjG","title":"Right pane widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_VqGQnnPGnqAU","title":"CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_SPirpZypehBG","title":"Backend scripts","type":"book","attributes":[{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_fZ2IGYFXjkEy","title":"Server-side imports","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Server-side imports"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_Rp0q8bSP6Ayl","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Nix flake"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_Un4wj2Mak2Ky","title":"Nix flake","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Nix flake.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]},{"id":"_help_iGTnKjubbXkA","title":"System Requirements","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/System Requirements"},{"name":"iconClass","value":"bx bx-chip","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_WWgeUaBb7UfC","title":"Syntax reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://mermaid.js.org/intro/syntax-reference.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting static HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web "},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/etapi/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/rest-api/internal/"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_64ZTlUPgEPtW","title":"Safe mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Safe mode"},{"name":"iconClass","value":"bx bxs-virus-block","type":"label"}]},{"id":"_help_HAIOFBoYIIdO","title":"Nightly release","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Nightly release"},{"name":"iconClass","value":"bx bx-moon","type":"label"}]},{"id":"_help_ZmT9ln8XJX2o","title":"Read-only database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Read-only database"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-window","type":"label"}],"children":[{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_M8IppdwVHSjG","title":"Right pane widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Right pane widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_VqGQnnPGnqAU","title":"CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/CSS"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_SPirpZypehBG","title":"Backend scripts","type":"book","attributes":[{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_fZ2IGYFXjkEy","title":"Server-side imports","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Server-side imports"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Backend scripts/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"enforceAttributes":true,"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/frontend/interfaces/FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://docs.triliumnotes.org/script-api/backend"},{"name":"iconClass","value":"bx bx-file","type":"label"}],"enforceAttributes":true}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_NcsmUYZRWEW4","title":"Patterns of personal knowledge","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Patterns of personal knowledge"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .html index f4ddcabc9..f36ee6be7 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing/Exporting static HTML for web .html @@ -24,33 +24,31 @@

    Apart from normal Sharing, exporting to static HTML files comes with a few subtle differences:

      -
    • The URL structure is different. Where in normal sharing it's something +
    • The URL structure is different. Where in normal sharing it's something along the way of example.com/share/noteid, the notes follow an hierarchical structure, such as docs.triliumnotes.org/user-guide/concepts/navigation/tree-concepts.
    • -
    • The favicon.ico is not handled automatically, it needs to be +
    • The favicon.ico is not handled automatically, it needs to be manually added on the server after the export is generated.
    • -
    • The “Last updated” for notes is not available.
    • -
    • The search functionality works slightly different since the normal one - requires an active API to work. In the static export, search still works - but uses a different mechanism so results might be different.
    • +
    • The “Last updated” for notes is not available.
    • +
    • The search functionality works slightly different since the normal one + requires an active API to work. In the static export, search still works + but uses a different mechanism so results might be different.

    Differences from normal .zip export

      -
    • The name of the files/URLs will prefer shareAlias to allow +
    • The name of the files/URLs will prefer shareAlias to allow for clean URLs.
    • -
    • The export requires a functional web server as the pages will not render +
    • The export requires a functional web server as the pages will not render properly if accessed locally via a web browser due to the use of module scripts.
    • -
    • The directory structure is also slightly different: +
    • The directory structure is also slightly different:
        -
      • A normal HTML export results in an index file and a single directory.
      • -
      • Instead, for static exporting the top-root level becomes the index file +
      • A normal HTML export results in an index file and a single directory.
      • +
      • Instead, for static exporting the top-root level becomes the index file and the child directories are on the root instead.
      • -
      • This makes it possible to easily publish to a website, without forcing - everything but the root note to be in a sub-directory.
      • -
      +
    • This makes it possible to easily publish to a website, without forcing + everything but the root note to be in a sub-directory.
    • +

    Testing locally

    @@ -60,9 +58,9 @@ can be installed via:

    npm i -g http-server

    Once installed simply:

      -
    1. Extract the exported .zip file.
    2. -
    3. Inside the extracted directory, run http-server.
    4. -
    5. Access the indicated address (e.g. http://localhost:8080).
    6. +
    7. Extract the exported .zip file.
    8. +
    9. Inside the extracted directory, run http-server.
    10. +
    11. Access the indicated address (e.g. http://localhost:8080).

    Automation

    ETAPI (REST API) could diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html index 6048e6f11..5ed3518e6 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Scripting/Frontend Basics/Custom Widgets/Widget Basics.html @@ -16,11 +16,11 @@ module.exports = new MyWidget();

    To implement this widget:

      -
    1. Create a new JS Frontend note in Trilium and paste in the code +
    2. Create a new JS Frontend note in Trilium and paste in the code above.
    3. -
    4. Assign the #widget attribute to +
    5. Assign the #widget attribute to the note.
    6. -
    7. Restart Trilium or reload the window.
    8. +
    9. Restart Trilium or reload the window.

    To verify that the widget is working, open the developer tools (Ctrl + Shift + I) and run document.querySelector("#my-widget"). If the element @@ -89,14 +89,13 @@ module.exports = new MyWidget(); module.exports = new MyWidget();

    parentWidget() can be given the following values:

      -
    • left-pane - This renders the widget on the left side of the +
    • left-pane - This renders the widget on the left side of the screen where the note tree lives.
    • -
    • center-pane - This renders the widget in the center of the +
    • center-pane - This renders the widget in the center of the layout in the same location that notes and splits appear.
    • -
    • note-detail-pane - This renders the widget with the +
    • note-detail-pane - This renders the widget with the note in the center pane. This means it can appear multiple times with splits.
    • -
    • right-pane - This renders the widget to the right of any opened +
    • right-pane - This renders the widget to the right of any opened notes.

    Reload the application one last time. diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index a6c26628d..0c39870f6 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -597,6 +597,13 @@ "type": "text", "mime": "text/html", "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "VIcWnKGs0sMh", + "isInheritable": false, + "position": 10 + }, { "type": "relation", "name": "internalLink", @@ -624,13 +631,6 @@ "value": "notes", "isInheritable": false, "position": 40 - }, - { - "type": "relation", - "name": "internalLink", - "value": "VIcWnKGs0sMh", - "isInheritable": false, - "position": 50 } ], "format": "markdown", diff --git a/docs/Developer Guide/Developer Guide/Documentation.md b/docs/Developer Guide/Developer Guide/Documentation.md index 5d7b25eac..f5956d744 100644 --- a/docs/Developer Guide/Developer Guide/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Documentation.md @@ -1,5 +1,5 @@ # Documentation -There are multiple types of documentation for Trilium: +There are multiple types of documentation for Trilium: * The _User Guide_ represents the user-facing documentation. This documentation can be browsed by users directly from within Trilium, by pressing F1. * The _Developer's Guide_ represents a set of Markdown documents that present the internals of Trilium, for developers.

    53ki9We7g!ReU-8AJJnj+LQ+w7|W0l@}9OPw$+Q`AIDVTG5y^vm+U_v(*(zZVESF z-3^hZBa3x54z-+_+_&q!YtE6MxHw3M$pc+i(|Juxhyi_Zm=-%=CwvOlbas@QpL_LyO&sCMqG@sd zuDRdkuvzQPOf%Qyz{G7cOFco+n4uNHz@$J!vF%Gg{h1>AoI?GF>m|O&w>hH*+Uai& z-XZ8&xRwh^Jq5)}>Ep^j9Ql8kd+WHUwl-{dXe33t6%c8pyF@@hN~B8~grOT@2m$E^ z>F$yi5D<};Mq=phl#cP;p6BS%b3FBY&-?w}zjO~Xd)A(Huew-1vg;e^=lyWy`TRVemS7|F?y|&ER11C9}EHVQU33WplD;G<{nQ6 zn#3+TTMJ(SrF)57-Np~rnC%2R2sOr(S=ff6g!w<*+cGkHu*!}O;NW<~j+&0~I>&?J zam{PHQF*6U4hln|$nd<3OF9J2ug~*+K!cVTx;qYbE{sp;e2_)1(=P^dSA;jO(bKPn zZc(_Ben=H%YwTA(1X>K!(PMs8&2YNMeWVvAK2MyIuXo#Yw`L)X`_6bVjO%u?kjghv zZ%39c+uXgQup16h8o$61C3y@2$h1F$iYRx>V9)8`Wk4;!C|`I2WLBili}SY!LX}G? z=i}asf{f#V&;=Cjm@`nWT10VwiBx|LSbz5qobFCH`iRO)>4W4VDQd~qwQe!W6oL(S zjd88mPJ_QevF|`jJ0>ibXA(k86+dWXeNo$*qoz%{bGYSA3$KVfp zKG#Hln)?~l>PCj1TN^7h;)gNbC4q2<;xGX>T2|cm)P50Dce7p9sXlgOY`>fMdf#%$ z{qQ#;Odi*=6Rt-$hPxJWe=k43{BQ^%r)gN(FdX+#ng=Z4r5l_P$qypu{28RE%XqgF zA12H|uU|6jU1tq2h0R>(E^32(pd%8w%c zS66Teh4!wwWmkfx2fxB&eS0^uXC2bVK0gnnX#Bb;0`*SbRlI9k&*n4M_?L9)DucJ; zxodHz0D7o<8CdSoZPGsStHVc9qCZGD9DduIFJp=O0fFtr3T~he)u~_>fQefB4VKfS zb}i(X==>ZQM$ke~aY7xSO<=nu>Io!sA#pio<~LiF_`7SYR7 zl)F<$=?5cQOT};GscCl)F2>ieA|m%X0vd$dW1pu-jt$d&e^}$`SL(o7YO4aucY}k4M_v;^YM*rca@LsoGH`G*#p77w@dp^e*hKGAPX!B}~ z2J-liWBbo@p?~#G;=};{nz-iey34pf zfYQU07MYbXXV)f(OD-ZRA_=jt+>bomtnK|k%`p3ERJiwO%M9V03Hf!URCP7}JHJeI zFCvnFGAwMFL*J?E*4a#HP4Vml{rR)o5I|3S0r~oMRVXr`4io;Rk{dTTM|dMUE^Da^ z!;d`_JX5RSN(*uB<->`-1=%3|;QW63EHO~*ZW?uH@a!JazI&`PdAURx`^&xmJ=X(u zDqdY})HN}-&Kx3mu@)l1Fo}nm*~RTi@@w;#)DXu!m$;L6<$dR=DP|3s4Jfo@u!IM0 zHv|j;LOz@50u*|y`V(4G}NJSNrm{IVtzf zcc4TiOX1tm2^zAi{|b*PM>Ei ztIKTt<)EzT8o(4_s6C}I$%$#mQjXuMKoZcvbB~FD)R)-vAx`9GvSDKWr8K~He^oNp zz0@;reGUvx>@Hb$<Q2on^u#6^LZKUWUnWq0Nn;JXv2qMw!~1DD%qZYyrK0K823Ay_lt1; z4I%iCTIQcz!6mr%HRguz6z3iOUO#>jQKgZsnFY?&2_K!e&i7}U3OzzWviffE$3^V$ zdAD^)3-4}Vf;4`!%fGA<)e4;Prq<<-++eNJ`i>ALNU5qmZU~@-S)Br0R*Dl8m}a;* zY~cH0ZMIShIg|OV?dhm)j+zByUKYq|V%iD>s}aPN8F(v@DiEJq6kkOWL=giz|GA3k z@jaQLX^5_Fd}E7!@-ohP;PyW}LOcFO6UE;(CjnSrG^~OfG1dzQZm0~ zqQhMNUq;|b(rhfQg-U!ZCKa48WJu~lPqTxAsqjy84d$J2cCU>&jLih8MOcu;Cf6uy zsZX}?$GARPUNTl5Lo?J)cHft?N?IGfsK%eYr%?G+RgH(Xh1tY^{<62Sd+_BXh)iG0 zhPRJ*w?DniN^esQ((4zydu5)tB#ssBn#ZX|V2yD?N^C`7V5lL>=keBS(&od|lRXFt z_aNA)Y4_6x>Bh;}{`x5+=IcQg>una;=stRIojyx>1JZ-R7APqwI<$kAEOkUfgY^qH zsU3QwUbJ4?Ssboxl0u^1R#lCxhVn{n^ey~$01aXer{x@BGip0GwRyDYd~-9yI7@HL zdb2izB0i_rBA=^cf@zD2E#|I9r-qS%*p%c)PzcWOojZvZ_ko}Z5+S5f{otG5`J*ZO z-+Q4(m#0Ak5GO*;pHUgXMY`n4Ho^u&aII+x)={jbE(Id)4}9Xvg{3?QV6*=0-+`E@XQ+jPj&@?VPQc| zW_gQgiT(ze_7v+Lfbx-dF>{rVAc;y<<9*8yUeXsWD;*E+_Rp=iEd)oXpj9faRVFDt{m-D$>@!R=G$>qHzbUA)TGfzNOLHmG(AI7dCsX(>}^vkDUBK!;xdgT)0EEMkTXudsOoT@0-nvc;UeHmE1 zQfAheBpK7hcqYa31YSqNdaC6+|og zQm`TQ)7wPtS`3YMobKU|3fsgky-Er<8Bb&nIDD!XYUEOcOw@n#EB?yq`TgHC!W%)q zmcsu;Tz?eazrDg}Uwz*x(qN_l6Z*9u`p2(C?IxFbh4i2Wr4eMTUTGc=nW#uRbndFQ zgK%C7xGVl~G!KYGyGbt$G2SlnsVe(RlB512kmm^%tQJLbWRE0s;^sRa$D%wtM0BPM z1sP)pdSdhFnUaiXeF~k?+5)_!n#H3WJJ$vCsafvag?^b7nF?R7DI@mwyoS@2tp!3qLZu71(ezIz;ER$O_`-n z)H#TE5wD9a;XKUb+j&wgcY@o2262-@114ay08%pKRDc0{m!{UVc0%7(3`pzKQ6Hrv z!Ujf6fan-ZAwizFVH`qvv1)ro2Rd*pXu6tCsW_Lo7TLU;dlRx)1%em^0!V&J&99Fr zoMS}j-VGr01U6Bc!EOz~K9rZFbf*kXWm-LfK>L}50yCoNrioJVPNgj}^pZ9=&sbI! z@87$wj}v{Vfx>rLKtuNqnvyr+s3i=xzOlph8N^iDPP!K<^-1|CR~-WGux`(><_g@U z@paHUfi7X6641e$juaacti?xgOx?YkA7LVjEg+>FLUu(5e*}6m1?l+EyqmWAOX&ZL zTMCD?9ov*;C=@$lAnQ7i{X(7{lU_nvBa}O3ushtJf*1scG>(u?Xa@;pgFDrqkGiYh zKn-hJ0x&K>8qqDLOO+&e|f$560 zFC=guD6XQU^P+@z7my5lV5`8O$|nw263yG=;j2L=8CPZW7xluKvwK7xpKJjnvXuFY zdZ1zS672yBY$P3F`#kcZo+;~U^TmIt2RBx8qftMD+;%CuDFD$F&jrZ&nonMSDqz(5DF%h5|q=!DWvN8NzY-d^LU9yGDFpsJP)%qph<-NJ#bVhl4B=p{5jbzb6X}Y+EeL@>5x73RfR_0s9 zgOP{gLqEY=z$)@qt*TBh`l8p=F%-Q4Nrjju8AQ(m?x@ooR({oNq9w3t;ja{Ty}MLu z3^~~GOT*_ckR+Z)Ni{p@2N{M@qGWKXxnVW%GC*~M_m1pKRkIUItE8BM%P`bG>r8;} z21xn_z8#Ps)$)IH1(#sm|H2ykL|+VW%H{tc*T2N{e6#qvm}nn1H@b7j4esBBon5CjpoQ`dGk!?SB4xvt-XcJ@?l{{TR;1y~?9D1Ea(-)T@_BBTSWnCyq&y@EHPyHEP zi%oqm9!*_mP82O+r+AAy7A8U>hr>H-*g7oN6lHyznbs70IpX@&)*@brtHzEV+9eON zw}oIlVO+)2c*aj+c-`AK5C-Os`t{`Lv%#q2hi=Ax-#I17`g=P;(16LlXalQH4SffM zo*wpLO^0Zm!|5i^ptqk7CB)$(t`?7O8Q32&hQRpJv7FoF7D@=k>*@yqPOVU2Uq%G; zIeOqY#S==wKeuNAc#L}s~{12Ug~n&UD1cRx?n(2@vG7PC%Mxf zwHLB1jm^7*?v2RII446d(1sj6XIz$at&xo|T9|A&?o-V$|4@thz`*x**m156Z)7hS zff7%wvOMQDYrI2XlDy~cheHx^zBGb;_xa`vbg9pvbRoRYppeGfXNb-IS86MPR)W~` z?nMPGrbEoB=GqN)eX_VwZiAFgQ;o>eC%5)Wk*gO%9AJZ#=k#;|duqka>_#OjIZ%LLvxSn7bJqVS;&4Y4Y;rKYyL9eXscS9o^pk|#ljWJgV_BWju1nwg?|L&DhKfsraY zBqBsg8)H7klzd;oeOya(8IwpT{&{+w+#_R55+qk@$%6x1KeQ~GRRq3OGK%N!60WSB z5G&oXPX?3I{ahbEdNnsil8kppD?Fu&MCH9{!ljBreJam)gpbdaC&D@k0DJJR^PbJ_ z)t&_!jB!)o3}Npwen^zr6J z0~anh5UD=N`C({XL_&nK6!92j)mA#ca_FNF`}s78%O9bHLa3lfCl zZ0sFXD@0d#6#S0cGcVSW0D@LM!k!}|Rp(l0j4Jo0(-YU5<|`>UvdP>7c-J30F3laD z^rEYHc8j>{?GedJjwOFFjB}Y5yW6A!F1XwA?C*_*!5;`VK2aHl$IzpsX0ysquQk;l zU%Gh`o?W#J-#d=yS1_$()!ntgXQe{4fz)?{S}4Wj4so0!-u>ZdR-~-K9e$^9|C`hQ z!^cfDK9z2m4&46=#rsY3{+8H7<8O~PFEzJcAItAWY{jga3%Btw!&MttJWN9zKb2CZ zH@9~tZyZO97k1vgp|BGHdXzUsVfHEuuZBO3N44TJNDI$-FMKiJ#4fxrx(bHqK}VN5 zsb1a?aWC33?G3w66!z)06)zT=@~#HMA~3Ijyp0*$$hSqJ2rRhn5>PUb@{x$d6lX+Z z((_8RST6F?%w4#Hq^xsvSkjPQSD7{Sn$^s5ltuFo7SyM?B2f7Vn^(Q{;sM$kLKj7BnTPjH*(qpg{+ulUW z_k|PPLV21y`O!y}@&T56I|ZpVuDOj?)>|5%dDF+Q?+tc&NsfYi!`w-d+`Dy~1Etr- z>;WbYKSvK>*s}TBXV7eLIE?SH^ysOwc+$OBiPuUF$BCC`2wKP$_fQ17_!bHpvIAvj zEGOz}3GWhxM71Sf-{(_Bgro-e&ZK7+ljy}e#Pbl2sYOX*$FEw#akSi|%J1Xt>fe+z z!+yjyu&AY4bD=Z%oc|4D%vB5KYp{Tw4Wu!VAkY;O+kDfl<^m{8z}%v=)@3o*-^A^# ztQg`1u*bGf`3^qDnq3W2RkdhdhkU{+IKBeI#BU8gV#KeoXh?V>8S=iY@(8wm69%k?_C348Ac-p=xOe{s78$sm=z;jNHZCxh6cj{q8X zb;Iow_R+>L?JpcD+&U|X4J_|B@pE7CyIpsSu_PvP*rof7wYbvz5h1G~U zH?Z@8p){S5C`PCb*fR^@2o{hf26CRDCw^Jh9sKqXI?%iUU4YI2W|d zcZ9WLgd{;z!QRy>cwuK#_A^oUCAkF(f3uv%Gmsn$Rj0;B*R5zSd6mwRVR(N_gz$?~ z|L=3vKhY~cn#CWl(4}X*zTm$7@@@Z%e~?XLdq=Zp5BH>&e&we4F?sUq6#~a&p9eES zk`wlV2&+n?4=&1%07@XwYm0S0d<)>gdVl2~JG710Mb>e3XVcEWtnmPGu|6-%J^wE- zDZl&9zilQ*{g4mzKV}u&$pP7V(v4jz%?B57Aq{VHkz+i06>KMqdSnRtQkvY`v;h^)U9+gvcvA>KF_^#3T^mner_sZy51r9# zBt8@pi71S5)rn+tR%027`R{&fg6PJdO|gIXr2lg3F?vbUYHLfD0GP_3GYeIgZpdncKu>~$J@yX$rHfa8lUdE@7NfpF9vxWul2zaC^ z?;oDHX)7eTi?DgAY+d8)&jYD2JH{2qL;0!829Np!G%?&AdK&qs7LnfG?*I6r>vFx0 zO@q9o`aO@+p!Q@ZjsIh;utwqsot&J*m59S1Z+xZwf+O46pX{PhA~sUFZHNfJN`{e& z{L~04m(3aNWTFrtC~dL8$m23tvNLDRvNELCjDAjOEv`CL5##tUso|ipw^01T0gTmLR;deA+1MCA|R5sMqDO)0SgrmK)}B!z`K8DkC=F z9`?G&mgDD@i&8 zZeGMW+@tJWFmmmPr34huT#?34%oy`E{SHU_)0DCdM(~51Z$6dnlstRmk!ISP*7({q z@2TwL+5a#ZHj)IE!8+Fytvi3RQ!sk^{3tu_zzCV_3t1R2wS04EmnM~`w(f01t-x)B<}7Rjpf;-a z)ofxk%pR7QbdMEEBn66K5dy~gA6gWozpqr|#Ok2&`vbt$AwG2QWyh*1z~F4A}*M2mL^r_tgiLzK~NX-UaH|Xcu13WH=X23tDTIT52e-0kD#rTaF-Q1u}~3d2QBY zN~ESAX~P~ziId<@T|AD!f_suhwCX+Mx63@C;i^g1lKlEHE6}EbGYwJo>CG2JK9@(4$T*l1NMr!6?Vp z^yQjOu@w$r&GUhWsM{H%j`?89yB#z#cx1(<)(lN=kGDIwl?dIOKS5&TZfC<}KSest z!Xzy|gU*j?0l4Ix97?})SR~3o(EQNqdqpNh4$T(U)SgR$nr-DB+hlk55rw&=b&F>} z$Y^mAex{~1yKD-x*g4<;N0Ih&NLGNkp~p&3qPFWj$_wWuZL2FLju%HvQwkYJ;^Q|V z2R8;;1z?nWOWc-~6PlVjM5AvvaPO@}5rl(kI!~S$+qd84huePCxTAVBcnNjVt=G9M zr8ip!bLr81oL#hj(}xx^?CO7bT zT3c^^h-#;NbsE0aWo&Fzp&?D(YR)2ly&FGhOPfO7w0T}x$o%mcWcyuhBjM&b-q?ex z;1*RLwmb3eOOugKZyxgCqpWU*++Z8VuR1KU=4`YA{N1vbWjkHRa#vkd7P5xsxlijY zG{nejQ>fcm<1(JL9ZWP?KSJ}3?$=Y+m{qOUfLUC&j|Pt&8p{cfGBYf6<&{^&u0U9X zB$1Id)P0#`MKD^i4RGT(9gI#2UIa6fUqqeUs% zT{hp3rBd(Xcg3k*Fx}v^kw}XbAjf;V(mcH9DdG8V zn2X8XTb(qc^EGHg2oWlsi}>j&N3f zIwq<~*aBW6EjFoFckAn~=|s5r?9ZTVZQa?_sIKL9$hf@7A@j&T3jzLt!v3k*;y4N= z8P=+jb;hEJGN=&)uCl0U-eg@$HJJBa&z;&2%+acK5 z&)T}ww`O}R9+Lx$%}YUSTmD>Kb#!^1S~|;YS;9ddfcM9qe_)soPYs6io4+e*5D~Se z2(~=x+)Y$feWj-rDV95~*+N5btU4%8>)b&mQ+R0@fsBoJ>20fi&TT{(K!(uC?uz1w`Us!$ThNE~BJ zJ^M|qvBXe%0@ZFFkzwnLf7I|9oYE*}+5r#ExIeh<$5z8fjZqZ#62)8mRcrilkY<8 zl+v+D-TdX*MR24y(C^j6X9lB(^Y!L4_)&)qjdg~KUsqqWH%ck$b63$5(^8h&8t_P- zJi|Fd1hZ|C+OCJilz5=5NLlA;Xp&88Oun;`Gz?Vp4LPJ}J-`!E@rvKtb45pqri@BQ z3O9p-*1d;A&`29zyJDFwI!QXH8u8telu0(E9`=!16va;;s@k;hwYAo_z+2^u;#E;! zExT#rmsx>QT3jni5dXgmBuIA3Gn}6kBFnP9#e;hZZP2-qs8ghK{ORS^bI9A~U>H0m z=-I_$8tR5H*(hzCOD(i-dB|mCt81yOyujo}Xo7dnx*8NfSau@V73{P1Bg3|H$9B7) zW4}&$E!&MC+&DvrT5I}#lBoSbw|lHr!1@@pcul6eL-vPm(BDNCo1zpvWzUrA_GTJg zbIp!xK54encfH22fxKWrecNBw$e19LlNylaBL05wwDO+ZJ-QHiqU`eMlwu)l+lNCe z8!JZu9!pMthqS21U2>IW$mW_qfJ*izU{xDl~N)tU^+PaBHsVXgufsIV{n9 zk;QN7n6vFLm~2BrJa#;rb3pd|x_MWj1^Lxs(+JVHbRjI)6kB;MBh&Pc(y@wEM`*Md zgWW$?$HrrD5a2iI%(mTZp{N5Ix_K_#9}iuoG0(s8UP3?S>8e*@jCj1dLa79xYzz*+ z5qBCLSByc%aFBr{?Z^V3gVP_FRf`o90d? z_?fIVlLeyB{If|2U9t`GU3Q-95VQv`xKD&w67>IBg63Z*Q@=j;J%1i#fW2jR}+N+3%;o8IGI-T%>rO6Zx~YhL+5kA_x0U*|@MR4+y&m2`CDa0x8zC z-uX=(S>PQ$C}cu6_!JE^_{-{g$6kh#*znhUqy$iFGPueTxXUclTxcFi9iam~G3l5^ zjNZ=17>lO^xJSF9m=;77OWHgy`|@rQYv&6$*w>2qfyAA2vWGo#p_0{a5Uwl@cinl{ zS~o>;BnqX$RFfN##W&cX(X8hM*yS+XEr{k%x!8aG`Fe(%2f5H25Z*#FbwOb$!RWYNuB5oh6;r6+brrmO`X4;K zZx8fg6lTV3@EMdE&sKH>&^X@dTF{WXJgmk%h;f-f6} zEQ@Dqv({Ab>mDklq{?un)Od z@U|ZXlaaoH(K7%k~{fOaXz$IrVu;B6OYnz73w9}-_bz8;e|m{hO=jIuiy;(dztu+P@|F~@wG&r$roL}`Juu~1G)7U48M9spJZ zauqVCc}TTuKT{a$^P4gFFw*29^)Pr;72y4Z9Ib)UmiFgk|!z)d5*Z3Wv9?5PxxmiM0$N6}ZQw-hDA+9bM0Om*5?++Wv5 z5fZCC$_Co`Nle}0F!DIG*!(_i55TCAy{Mak%)&=Y%kx59+ndLF4M0%@=S=Z$xHW$h zM>x^{`=tz7QLH~RUB8L#&um@CXkRV~u6~2*KDa~g*>M>w+xhh3kw@4Yp7P4$TurT{ zGh$U~M|0`3rPtt^a!S!6FQ8nAJ))L_eozYTQ?pnz6Uu3dCDGBrb#_gOpa+3EGTXEK zD6VX0@+G#pyS5`&>hy0fbvTsrV@m*(;jBNL8n^`8PpAI9kkw>)fRh9d^i+hlAXj>w zI&Y;4j-?zyAy>BY$_VmCeCN#oQn1G8#t{8jb`a^hC|Og&-lqpcmr5*+c=6Z*amJzJ zc=y~Q+s)Nu@lyKge`yeTG{U*mBw=ii`9X^9VT$5skkSSnya47sX&P?le5yvVD3s|4 zh^t3qgCcSu(489rbQd}#5+olG-Y*$ee8Kl^OhWX@;>I2Y`dN2uw?mo+%iYW1bUcfs9_$~a`IWL?> z(CMV#buFhyDwwqNBl>paFh*?9Xz!W6*Wq}txwLLesxhmL^uW+*DjQ>uG|bKe^LJ zd}1SmIN}qY!D*j{s0a!^F65AToTmc4P0qk~bgi$zout%`*$^|0SxDhRvO14?Z{yN}-`eSIfPWj?Y|EFJCG`2Y|N{bsayQDZWjN^F&rBRsgQ|9HAc zvL!6<4p&yXXH>WPiD*2qH9;j;fq0PpO;-<#t>}0qU@Fj~^)MY_>-+=d#%@We+C}AC zmGH}J@?Y934vHWzDDGOn5Sb_;>7s;UNVXX&ayC%d5ol8i z;N|Z!2U8An!u6Y{-6-KwAm#~J9NwWmOHg&i8hSv?caNQ3+fT^S`BzqsKata4)!6@w z;)+_z@}$Zy_jN2)s9Pl&8mRYE*^w@D>-a?4ndRoi*k_QV!ZgKdn!e}_@pN@DcA0`( zj!T3QH3|j&nhUW0)(br_SU$XXWNE3%KgB6|S!-K(Rx$L^yfm5}Dlb*tKCh?)zC<8%Y8Rif#B0=dn3(x{S@e@ z?pMOfh3OVJGv#k7ijlEPSjpS^ynlAN-_-(8=CSRYzLPETkTV)s4xFotcwQS>Q$g_> zB?F(E-QnWKso^|lxdoh{m<_c)WdepG_x5{=ElJ+RAScw}9XAYTk|sZf7JI5GQTcJG z>P?$cLup%g)VQa zHj@n5l@@Wjszf*PPn6y7btU)xnU^RiH^bkqc#$SFuO>rICcgaG#ZWr|LQ{d4OAG&< zZv0U-{c^=z^7B!^->>M~q9@1=LbL7t6s3hfvPXqzr*@iiZ-tnS&8){UGxW(O1fB(7 z1`-|JImfa{!wks@Y_43hP<_6x^|I1B2V2OhEQiNge5VqF2C~B{cC@*xBS{n(xNcD$<#}YhH91$YU={SKJoB-jjM?#ESQU z^QeyRd)3zHRZy=RQ%tUVK)`rqrpq zUV@t)BvwW9FZF{)yGfHQ0+);js%G%ITJ=2f^`wb^D&kV=f0D(IUx29?IB0L8FX@) zp%r!5fjE0Pr5EQl&R(>CawPEJ{-hcBul>}YiF^>yiSd)y|LjI^rNLC}yxp%_C^BO* zvy*i{m{;ut9lJS}ctI*VY9ZQD7HQbea{`(xRqJwOh70!DKRP7*^!SkVj)lJwGA^qL zwRJJ9*CnbT_c|vy%3S)yINnV70$jR?Z3uRE$;*<0QxVy_0~OIkqc^L3`pNuauCgZZ zc4XSKPd8ivvZT+TN=1~g%SQuTTG%+!1-eLy=;^4bblvG9(=B%>Q)Jl^N0$}+YuIap zwjBwv;+#U8G<>3p#u36sZizkhpg@x)y6G=TcHIuOkcXq{kwK6!T+vnxb9okfKD6>VXT&^&u~M;Vj#%4F0lR=EsnZEsFt2O;+BBEs!L9iXA*d zn5KL|agjglG-$W)O?||Zo>hFQ`f2Xak)_oWS!r?kPm=qYWi}n=Z-w|DXVK-^ zuOW@z4i(o~uT{z*{`3UifqKO9ta%@rW!GC;r0+J#ytCknqJE;^@lk=wi{*zn<)>l& zZ*t7Ap;nZ;?(E#>Hwq<;$rpU3C@&(D&=aej-;pRy2Cj~OacN$z? zW`fZ@cAic*+i}l(DGv@L>Yk2GJv8mzTXPKvXri^4A&(F}xN7Q>7fkY}@rLyrQRW{P zKB_gDefO|un!4rtw1isdc;MvcQx@+>@=Zpa?^gDpYt7* z)V@MGR?OMzv|kL+{XFheA^{>eN0i$ZU_zBh)0&rCLHE)*!AIm0*Pff~nz+5$s6Ah@ zVfXj{DA<8$L}=xEu#%9!EkE!+at7MoWc->h1dBpsK^uS{L{x0dMt9GOIJV-c&ax5C zhdjS2f;idp*_xo^(m7S_DHZhG%=j{0nzE#vtOSkH=dhr_LqcjcAx3AE)~+wHHLNC1aT6 zuQB~9av}E$3=t7WpaFdEXzPaN_`}mu7Vz4LKJ(VR;A6tSxs_wSZ9qY3j~Syy*Dl zISFX_nciH{)vTaX04<>+Wb;>FSK;c^&SH2YVl5{j=;?STY|` zh_*FEAuHTL2r>++82JH3^qWud+o8c*`&D}2NgIsbRHlw9y<7>+vd$pl;t1!|mU&)h zlrz3}?HL##Y)6xyq2y7@98bF?E}Fefj`d&(CqzZ;!ouEh5OyyHpL>WujnIX#RnsG< zBsIzW)@U`cs(>*^C3ux-$uylfgKKVj# z1+a0M^Eu;D_uvI?$o!iF@tdfl{}&iPe-gzo%xn-GqhfrJEq^EJYhQN=vNJRn|N5`A&X}3z5s7`OqcM;1Rl-5Z*cq;>O z6sc(5t1a&o9_azfkH+SOEspfHHpeHTMlE++J)}%17QEy0f8A{ab{&1A*!1BHo@n}3 zJl;_33x(l5V&M_cV0M>__{MOs_lQ>dB-)jfD$ot#dC!XrUj>iB3l9T?0{^`yoL8i9 z45r<%+9YlR$r__fSTb*a2Cc?CO^ayz4;J^Y3K`D3q>UvKsjo7xA|nu^mSE{wEeInm z>xp9<=#b8Zw1a-}K^c)cSJouEk6`b-uPNCafEoR==jCR>-!-Bl@qhCy5Tf@3yc}i; z3P0?O)~?-+r>pBc)SvQ{%(+8sFJ)I(THGT{xfi1;HGw!325Q+*Cza&Wx;Q*YuQyhzaYFP;0}4&wKBM0OJUVKX6NX ziU`$;$r>Y7g)mAeaI<38xn0F`2k# zPd46=o(lDbdJCde#@bXAn&_DvpNo=~?xb{E03LJMRVC z{@T|kxf%-;jAPFvGEXywP_<=+V%S+HM%D3CMout8Cr(f}lh|VtorKgBMy#T44)k1Q zp?R;|_tbi+kby$lOh#G4p={CzgTmO45B#Av-7ZGL&nd*x(K+GLY>QgS+MyE^J8O^8PbT~!T~XiiYE>wTloe~7>VH3dg3POl0oAi8-1q>J1<;!;E6RGp4HJM5X*5E0Ll z(cs&@4!1E&uvOILluhxS#0x@5SryvV!(A%zJ+E!CU$@4T)yY;%CAM zICe*Uj7bv{CF7BUvnS0*+dgow0aH)WN9pDo>cJWbu)a8(WCe#A&9t4eeag2Geq@z> ztV)#UZ#bAwqKwq>Xl#8$JJP$-^9z00&p6k*Lh%mkO zi@u!?hm&Qeu^aGbF4f7;Uz0~1L)Od_uRmp(p$yWI{OAm&Ow@Yfp0=PMz6~%CuDLY@ zyOh9;taIG~&L*^US#1 zvSXdzT7J(g&L<8*izi*@DXp;c^i0ygorla=McHQquUeu;&ax3HXjTq)1BLAzPn3cu6-Kf?-ia_EtcgJP5}DO5!Zra$*!j5J zCrq_;Jf)d4*B(vF2tbX&6^DZRsNxLZrp#di=!zu zB8J=T5%?~AAo2UO&p)+|7&=tk;j%T;99=IJL+3s9Vr=fB0I2p~O~8NaHU8&w|1&SN z2vRV-Fiub=)-$(WLUE%;}a=9l0XW1zE?d-Uci&gx$O6iO4#m4#9HH zGHLRSj|Lvz1yJogq#EI$ZggPJ?fReV1}vZ_wWnGXlu%wj^8(e8yKDf32E>&9`*Ad> zcY-7^!tTC3!Rz5`7j4vHJW;Jp~H zLU&v$t3EoVomn^+^rHdOTDN*UpC}^B7wio&gH0^9N7CFD3jw$oas{Ug!>8Yx|pfTV|)SyKrW>KLUo{?}rP@H?2`w(pU14hab-WF#0KY`P_$pIM6RCW4|LH$=@K z1AZ3YO(?J%dNg*(jZX?SsVf|_wwEK9%k+cfzF)NNOzd!o|I^PgdP>#{od6`A?aquZH zu}f7~=hFw3O-gt~NA;+mIvI%~dkD;|K4g90wmv*8_2g0Y@G~l=BY^~^oY?84o0$vxpRI)V3>N}T8_e-fDs75lV|D)gN&DXg>7LJP&(;v zG>nj1zyVd@NKxXUHBHMXVuEoo`pw%7L@!|sl4fve6Xzk6`m4`EP?khhE&GYK~8BZt;6u%hK3juM!JC8Nh6Et1@b!=5>}r9 z`asCr+~TO}$qCPZPp zn)x#nro*{P#ZkPNxfpHpXEtlcpxIu6nlT((IFPZs&2)PGdqoz}^TX#G_nyrXlGg|}DrjfS)DvMh z+ErEP-#HK{s&$to4J-i*o~dYzBHnr!x}KUKT%BAqo?UvxTju|%&stE*>{!kaPtE6k zwJGLOWk`h&@0JMv>$0g1t%>S```xgQXFxan+-2W+w!SD?+WQvZDf?qgO`=KJoNd&2qddpO@nYi zuhk1lc;pl+U*n`3a_m4PK^pwTQE1IQh@Xb}R{WoZ6MuWQ|7g+~X2-?zwTN;$pE%P5 zw^BRZ96$-&q+lJP+1DQ;Hgr{LOK5snz{%P<6C#zn;9~SCrl84Fp(CZ=+C|7r@9TV~!AC5Xlaw@-X(@=+` zGGI9sJBy$m$~Mg6cN8#LGBd-m((*D%!iT$=y=J!ZKzMBVmtXR;Z&v=z-{C8}ajH=* zz3`E|kmPq=g@ooA2PJx2#*c`{oX=lB$qlsEa(_w2`o_l*AX9KETJ=>g#2J`Oi znmmSWSgnXi2<|sf9=Zb0Tr2BlSnyR}kG4p<8}`Qd#@5B(l$-z(XNf)i6HJ zX@#wW_rr=3MhiTvI0x zmHsI`r9NbS6;@Xbi>32t7oOP-9cp=rKqteh^}GVc#wc#9qpKjlW7U&0H#whhCL=@k zy5-69lcL62XNb=s?bw9YCjl8BAE5L$FHuuA7b>$MCn6vJc)%)$gVf#Aq}u+Zrfi@7 zkP=pn(u04^vc^*<;C3&IW5euax0`9mGbMMhGZ-bndbufT8P?A{0*|Wy;%a)e4zRpc zBU;Z@wzi8tgKmQ9d4@Cjo6*fsTF;dwI6s5T8ed1|HKf7Z9!%SAkE;mKWRXWQY}d&; zfk#5<5E$RP;R#a@nhfVgW-^IOF@(IFBJ;;fbbh3jXPX;4JdrF}WKm?M=2U*_!@aK> z%YAIZZ{y0mj1ZcR>*aD~&RwlK3KbdjONmyHZyq~3jarA{k3Eyio|G+lYVz)#K?!Xr zQhF!>mt~=2_hGNOG4Y){PSs~XWsvqnPD(x?3n+UO-UYpd&uQ4WMpNvUZruIv-QGVt zg@`7PC7pNyNT6eYtZTiAVrbVoO|Nda1bSf3(?)%>JAaO{tP#FqYTfJ`L+LjQ_nQ%c z>+iQM>~QP!cM3G(6;_)ebGwDo{HR$IH2TIpr~38Xd@S4(%VxIz3jn8^1hjfY&T}EZ ztoLYe+e($U#wzin@mVc)T9|FfW%~I5Z8Qg`Y*O$48GrPSOUYZiv^{V5=1Se(#5}o; z%lOj=;}Z+gZoQJ)bXL0~vNPm>*`?OtHkD+R$rn-zfm^RlZvT8Ad-zz_#{N0$zxVO6 z+qx_C?X|@`JeNT8g9+F92H5f}zDy3?*Na(@5pV!D4QH;!F74CiIH$5JcS+v~%jBPh zKQ6F!DIJ$u#G}=~@I{1}<;Rxy#iA{?ZNIX>I&Jd=v-jU>|L&3pUNiFL_LD1HUgTYr zWNDs~cxpm{;~(GvRSBt{MJl|=@E#(4q8|=Vsyh%7!r;f|4?OkwvWisS($W=wqwaAm|j6@R*_L3BEp&JDV{PNkxwxlfFZ|tq$Z-wpE2fb z($0yD2amZ`1*P~W$+z&Gf8ep*Fn99_HopSnODzI7-e(f!SH`J{$M&vbyqu#h_alqp SDx!izxE)(+hb0H*|2F{*ZEHIK literal 0 HcmV?d00001 diff --git a/docs/Release Notes/Release Notes/v0.48_screenshot.png b/docs/Release Notes/Release Notes/v0.48_screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..78f589fd9cc6374702699853972007e1f42eb189 GIT binary patch literal 105337 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
    ~0IVY_I)It_(`TU;DF&ohuPK$tFW_qN|5^L0F7 zFjF?Wc7TEM#>J>mi$BSAP0b}W%J@u2vz=0s8clV z{X|nImavWq!X{Jj=~3rNaXNIQwLkn5w$K+1~TNn83IGFoAdenpMyq-FwUk zARso31MAq*s zU{#oi$XePqe=J;N>akscnZkA~K3g30db9>_X(Gx8(zJ+a@6JFikF*-J5uP(>nb#QiiEZ=u%6MLZ`mh!S{7tFeWJAkVABtq0I_ zZGIQ2UuFc&vDt#llFO?LqHbsynj7AyEKVDLtI!S z%v+IDzkBO!77+Upm;5qzmk6`jyqtR`@)UI9i9X!}n%R^=^mf&NrElutY8t`j!R#&| zWkL%Dc{X9r+`Z>>e6FD}-b1RVPQ!QyCw51G?qGNVNaFwR_ov1$&<2hldHv2zmcw1j zEF>Jvyq`u0MD9BDT#BD46b^Td<4%3z{?WI)m9ootUn7EtYugDe9Z>4o zNO=dMXR!8Oz2ouIZ1m2!D2i@}G#YyW*3BfGk4(zX`Kr47l{AS-FlOL|uN_m>IJBIt zQa&xJo~wdCpog-Dc{%4f6ecX~(m1`IdxW15I`5(9!uVW!Os?VeR`EjQQcyt`o3(Fq zibR!yiu3JJ56R(}T8kb*^n?6JBd~B|ZiuD$YF8ac z2|&?`%Ldx##du_~crD#THAGATRbcQnk7pbO9LB4NN`3(Wr<)4s$bm~8BONs)0Gt3h z)()w8=!g@Ubx+ovc@C^|HaYE$?eNUtWQLqw@jnnI+)nQgHxmuKFjen=XcF9;L>tB8 zNgv&G;+0d8FsU&8?K{XBXgi~Y0E!>iD*EgRW=IIwi8fBju%5(&*U%rev>{PP$U|@X z^|GU3GZjcPx#GZ)?aCC5p!sOMaFNUV`NibGTC!op&Nd(@@o9W| zx~J|K%sqeO9_!~h^Cg&=NwwQj4*wGJtJjxan)1Ui_JshWSxfw-o0ktZ@_bu8`)fd@ z>Jfdxog9Ycxi%VtD8td@y{82goswnWLGGz_l9K%rsxzpeT$+iR<{69Tqw86X11{eI z5m3{hwb(VYFqx75p#BziaIW~do2pY?%0+AfLtL&k3ATNrm^d)tj&yg#&$Qn(>G~!1 zgD!n%J6OK#v1IBe(oJIMCc5u4*FF14%LFAyYPQTkn*}LGGo{F+^2ees0!bM-;VPHu z^)qcKLcw08cPKseauC#G!Q5yQdS4Sb1z(65+Aq#Ztqj@mP7k)4>TxR_kI{WM81d93 zfd*6LCu5;yuuTG(5Y8Rshb-oE7H?=6j!&e#hpeZy43FmMX4T>t?%HG%aD^gs3D$Kd z!$#k(HS_DM49r$s;nv)>HHp!>Cr~e2vJ9fT(6c#4A4Z0HYhm4n(y?e9@tT&mv8{Z{ zToX{qAJ1%NuZ3sUH855#8D;`qq(Uk>S>4KHV?B8C0>Ut|9hvM}IYNeTgUuo(B`2$q zUZXrcXMylibC#uMgq{hxhYE5T;xzBqs?y;wRqFjo~HMc2nrZ^FUZqxge6buWy?|nQj_KqciXnYzmbCs*TBux>$v!2Zw@Bu3p8^CfA;8LUy>R5FC(aQf1 zoJ;=tCqEp+{yjAK37q~BHW*fZ2WfiGq+R;+|BxVgM)uA|e^26?%|9!C}*|B2=KR9|_|-==;?F0J2wSxBvhE literal 0 HcmV?d00001 From 1784b50990c07419341bce8d33704480dc37654a Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Thu, 30 Oct 2025 22:37:59 +0200 Subject: [PATCH 002/136] docs(user): port privacy policy --- .../doc_notes/en/User Guide/!!!meta.json | 2 +- .../User Guide/Advanced Usage/Sharing.html | 695 +++++++++--------- .../Sharing/Reverse proxy configuration.html | 19 +- .../Miscellaneous/Privacy Policy.html | 20 + docs/User Guide/!!!meta.json | 62 ++ .../Miscellaneous/Privacy Policy.md | 17 + 6 files changed, 447 insertions(+), 368 deletions(-) create mode 100644 apps/server/src/assets/doc_notes/en/User Guide/User Guide/Miscellaneous/Privacy Policy.html create mode 100644 docs/User Guide/User Guide/Miscellaneous/Privacy Policy.md diff --git a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json index 4ff767a1a..5a007d630 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json +++ b/apps/server/src/assets/doc_notes/en/User Guide/!!!meta.json @@ -1 +1 @@ -[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/etapi/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Frontend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/classes/Frontend_Script_API.FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Backend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]}] \ No newline at end of file +[{"id":"_help_BOCnjTMBCoxW","title":"Feature Highlights","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Feature Highlights"},{"name":"iconClass","value":"bx bx-star","type":"label"}]},{"id":"_help_Otzi9La2YAUX","title":"Installation & Setup","type":"book","attributes":[{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_poXkQfguuA0U","title":"Desktop Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation"},{"name":"iconClass","value":"bx bx-desktop","type":"label"}],"children":[{"id":"_help_nRqcgfTb97uV","title":"Using the desktop application as a server","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Desktop Installation/Using the desktop application "},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_WOcw2SLH6tbX","title":"Server Installation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation"},{"name":"iconClass","value":"bx bx-server","type":"label"}],"children":[{"id":"_help_Dgg7bR3b6K9j","title":"1. Installing the server","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_3tW6mORuTHnB","title":"Packaged version for Linux","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Packaged version for Linux"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_rWX5eY045zbE","title":"Using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Docker"},{"name":"iconClass","value":"bx bxl-docker","type":"label"}]},{"id":"_help_moVgBcoxE3EK","title":"On NixOS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/On NixOS"},{"name":"iconClass","value":"bx bxl-tux","type":"label"}]},{"id":"_help_J1Bb6lVlwU5T","title":"Manually","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Manually"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]},{"id":"_help_DCmT6e7clMoP","title":"Using Kubernetes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Using Kubernetes"},{"name":"iconClass","value":"bx bxl-kubernetes","type":"label"}]},{"id":"_help_klCWNks3ReaQ","title":"Multiple server instances","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/1. Installing the server/Multiple server instances"},{"name":"iconClass","value":"bx bxs-user-account","type":"label"}]}]},{"id":"_help_vcjrb3VVYPZI","title":"2. Reverse proxy","type":"book","attributes":[{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_ud6MShXL4WpO","title":"Nginx","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Nginx"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_fDLvzOx29Pfg","title":"Apache using Docker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Apache using Docker"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_LLzSMXACKhUs","title":"Trusted proxy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/2. Reverse proxy/Trusted proxy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_l2VkvOwUNfZj","title":"HTTPS (TLS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/HTTPS (TLS)"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_0hzsNCP31IAB","title":"Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Authentication"},{"name":"iconClass","value":"bx bx-user","type":"label"}]},{"id":"_help_7DAiwaf8Z7Rz","title":"Multi-Factor Authentication","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Multi-Factor Authentication"},{"name":"iconClass","value":"bx bx-stopwatch","type":"label"}]},{"id":"_help_yeEaYqosGLSh","title":"Third-party cloud hosting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Server Installation/Third-party cloud hosting"},{"name":"iconClass","value":"bx bx-cloud","type":"label"}]}]},{"id":"_help_cbkrhQjrkKrh","title":"Synchronization","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Synchronization"},{"name":"iconClass","value":"bx bx-sync","type":"label"}]},{"id":"_help_RDslemsQ6gCp","title":"Mobile Frontend","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Mobile Frontend"},{"name":"iconClass","value":"bx bx-mobile-alt","type":"label"}]},{"id":"_help_MtPxeAWVAzMg","title":"Web Clipper","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Web Clipper"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_n1lujUxCwipy","title":"Upgrading TriliumNext","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Upgrading TriliumNext"},{"name":"iconClass","value":"bx bx-up-arrow-alt","type":"label"}]},{"id":"_help_ODY7qQn5m2FT","title":"Backup","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Backup"},{"name":"iconClass","value":"bx bx-hdd","type":"label"}]},{"id":"_help_tAassRL4RSQL","title":"Data directory","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Installation & Setup/Data directory"},{"name":"iconClass","value":"bx bx-folder-open","type":"label"}]}]},{"id":"_help_gh7bpGYxajRS","title":"Basic Concepts and Features","type":"book","attributes":[{"name":"iconClass","value":"bx bx-help-circle","type":"label"}],"children":[{"id":"_help_Vc8PjrjAGuOp","title":"UI Elements","type":"book","attributes":[{"name":"iconClass","value":"bx bx-window-alt","type":"label"}],"children":[{"id":"_help_x0JgW8UqGXvq","title":"Vertical and horizontal layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Vertical and horizontal layout"},{"name":"iconClass","value":"bx bxs-layout","type":"label"}]},{"id":"_help_x3i7MxGccDuM","title":"Global menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Global menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_oPVyFC7WL2Lp","title":"Note Tree","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree"},{"name":"iconClass","value":"bx bxs-tree-alt","type":"label"}],"children":[{"id":"_help_YtSN43OrfzaA","title":"Note tree contextual menu","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Note tree contextual menu"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_yTjUdsOi4CIE","title":"Multiple selection","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Multiple selection"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_DvdZhoQZY9Yd","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tree/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]}]},{"id":"_help_BlN9DFI679QC","title":"Ribbon","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Ribbon"},{"name":"iconClass","value":"bx bx-dots-horizontal","type":"label"}]},{"id":"_help_3seOhtN8uLIY","title":"Tabs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Tabs"},{"name":"iconClass","value":"bx bx-dock-top","type":"label"}]},{"id":"_help_xYmIYSP6wE3F","title":"Launch Bar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Launch Bar"},{"name":"iconClass","value":"bx bx-sidebar","type":"label"}]},{"id":"_help_8YBEPzcpUgxw","title":"Note buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note buttons"},{"name":"iconClass","value":"bx bx-dots-vertical-rounded","type":"label"}]},{"id":"_help_4TIF1oA4VQRO","title":"Options","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Options"},{"name":"iconClass","value":"bx bx-cog","type":"label"}]},{"id":"_help_luNhaphA37EO","title":"Split View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Split View"},{"name":"iconClass","value":"bx bx-dock-right","type":"label"}]},{"id":"_help_XpOYSgsLkTJy","title":"Floating buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Floating buttons"},{"name":"iconClass","value":"bx bx-rectangle","type":"label"}]},{"id":"_help_RnaPdbciOfeq","title":"Right Sidebar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Right Sidebar"},{"name":"iconClass","value":"bx bxs-dock-right","type":"label"}]},{"id":"_help_r5JGHN99bVKn","title":"Recent Changes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Recent Changes"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_ny318J39E5Z0","title":"Zoom","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Zoom"},{"name":"iconClass","value":"bx bx-zoom-in","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Quick edit"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_lgKX7r3aL30x","title":"Note Tooltip","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/UI Elements/Note Tooltip"},{"name":"iconClass","value":"bx bx-message-detail","type":"label"}]}]},{"id":"_help_BFs8mudNFgCS","title":"Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes"},{"name":"iconClass","value":"bx bx-notepad","type":"label"}],"children":[{"id":"_help_p9kXRFAkwN4o","title":"Note Icons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Icons"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_0vhv7lsOLy82","title":"Attachments","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Attachments"},{"name":"iconClass","value":"bx bx-paperclip","type":"label"}]},{"id":"_help_IakOLONlIfGI","title":"Cloning Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes"},{"name":"iconClass","value":"bx bx-duplicate","type":"label"}],"children":[{"id":"_help_TBwsyfadTA18","title":"Branch prefix","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Cloning Notes/Branch prefix"},{"name":"iconClass","value":"bx bx-rename","type":"label"}]}]},{"id":"_help_bwg0e8ewQMak","title":"Protected Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Protected Notes"},{"name":"iconClass","value":"bx bx-lock-alt","type":"label"}]},{"id":"_help_MKmLg5x6xkor","title":"Archived Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Archived Notes"},{"name":"iconClass","value":"bx bx-box","type":"label"}]},{"id":"_help_vZWERwf8U3nx","title":"Note Revisions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note Revisions"},{"name":"iconClass","value":"bx bx-history","type":"label"}]},{"id":"_help_aGlEvb9hyDhS","title":"Sorting Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Sorting Notes"},{"name":"iconClass","value":"bx bx-sort-up","type":"label"}]},{"id":"_help_NRnIZmSMc5sj","title":"Printing & Exporting as PDF","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Printing & Exporting as PDF"},{"name":"iconClass","value":"bx bx-printer","type":"label"}]},{"id":"_help_CoFPLs3dRlXc","title":"Read-Only Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Read-Only Notes"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_0ESUbbAxVnoK","title":"Note List","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Notes/Note List"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]}]},{"id":"_help_wArbEsdSae6g","title":"Navigation","type":"book","attributes":[{"name":"iconClass","value":"bx bx-navigation","type":"label"}],"children":[{"id":"_help_kBrnXNG3Hplm","title":"Tree Concepts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Tree Concepts"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}]},{"id":"_help_MMiBEQljMQh2","title":"Note Navigation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Navigation"},{"name":"iconClass","value":"bx bxs-navigation","type":"label"}]},{"id":"_help_Ms1nauBra7gq","title":"Quick search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_F1r9QtzQLZqm","title":"Jump to...","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Jump to"},{"name":"iconClass","value":"bx bx-send","type":"label"}]},{"id":"_help_eIg8jdvaoNNd","title":"Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]},{"id":"_help_u3YFHC9tQlpm","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmarks","type":"label"}]},{"id":"_help_OR8WJ7Iz9K4U","title":"Note Hoisting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Note Hoisting"},{"name":"iconClass","value":"bx bxs-chevrons-up","type":"label"}]},{"id":"_help_ZjLYv08Rp3qC","title":"Quick edit","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Quick edit.clone"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_9sRHySam5fXb","title":"Workspaces","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Workspaces"},{"name":"iconClass","value":"bx bx-door-open","type":"label"}]},{"id":"_help_xWtq5NUHOwql","title":"Similar Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Similar Notes"},{"name":"iconClass","value":"bx bx-bar-chart","type":"label"}]},{"id":"_help_McngOG2jbUWX","title":"Search in note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Navigation/Search in note"},{"name":"iconClass","value":"bx bx-search-alt-2","type":"label"}]}]},{"id":"_help_A9Oc6YKKc65v","title":"Keyboard Shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Keyboard Shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_Wy267RK4M69c","title":"Themes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes"},{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_VbjZvtUek0Ln","title":"Theme Gallery","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Themes/Theme Gallery"},{"name":"iconClass","value":"bx bx-book-reader","type":"label"}]}]},{"id":"_help_mHbBMPDPkVV5","title":"Import & Export","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export"},{"name":"iconClass","value":"bx bx-import","type":"label"}],"children":[{"id":"_help_Oau6X9rCuegd","title":"Markdown","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}],"children":[{"id":"_help_rJ9grSgoExl9","title":"Supported syntax","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Markdown/Supported syntax"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}]}]},{"id":"_help_syuSEKf2rUGr","title":"Evernote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/Evernote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]},{"id":"_help_GnhlmrATVqcH","title":"OneNote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Import & Export/OneNote"},{"name":"iconClass","value":"bx bx-window-open","type":"label"}]}]},{"id":"_help_rC3pL2aptaRE","title":"Zen mode","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Basic Concepts and Features/Zen mode"},{"name":"iconClass","value":"bx bxs-yin-yang","type":"label"}]}]},{"id":"_help_s3YCWHBfmYuM","title":"Quick Start","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Quick Start"},{"name":"iconClass","value":"bx bx-run","type":"label"}]},{"id":"_help_i6dbnitykE5D","title":"FAQ","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/FAQ"},{"name":"iconClass","value":"bx bx-question-mark","type":"label"}]},{"id":"_help_KSZ04uQ2D1St","title":"Note Types","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types"},{"name":"iconClass","value":"bx bx-edit","type":"label"}],"children":[{"id":"_help_iPIMuisry3hd","title":"Text","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text"},{"name":"iconClass","value":"bx bx-note","type":"label"}],"children":[{"id":"_help_NwBbFdNZ9h7O","title":"Block quotes & admonitions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Block quotes & admonitions"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_oSuaNgyyKnhu","title":"Bookmarks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Bookmarks"},{"name":"iconClass","value":"bx bx-bookmark","type":"label"}]},{"id":"_help_veGu4faJErEM","title":"Content language & Right-to-left support","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Content language & Right-to-le"},{"name":"iconClass","value":"bx bx-align-right","type":"label"}]},{"id":"_help_2x0ZAX9ePtzV","title":"Cut to subnote","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Cut to subnote"},{"name":"iconClass","value":"bx bx-cut","type":"label"}]},{"id":"_help_UYuUB1ZekNQU","title":"Developer-specific formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting"},{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_QxEyIjRBizuC","title":"Code blocks","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Developer-specific formatting/Code blocks"},{"name":"iconClass","value":"bx bx-code","type":"label"}]}]},{"id":"_help_AgjCISero73a","title":"Footnotes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Footnotes"},{"name":"iconClass","value":"bx bx-bracket","type":"label"}]},{"id":"_help_nRhnJkTT8cPs","title":"Formatting toolbar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Formatting toolbar"},{"name":"iconClass","value":"bx bx-text","type":"label"}]},{"id":"_help_Gr6xFaF6ioJ5","title":"General formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/General formatting"},{"name":"iconClass","value":"bx bx-bold","type":"label"}]},{"id":"_help_AxshuNRegLAv","title":"Highlights list","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Highlights list"},{"name":"iconClass","value":"bx bx-highlight","type":"label"}]},{"id":"_help_mT0HEkOsz6i1","title":"Images","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images"},{"name":"iconClass","value":"bx bx-image-alt","type":"label"}],"children":[{"id":"_help_0Ofbk1aSuVRu","title":"Image references","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Images/Image references"},{"name":"iconClass","value":"bx bxs-file-image","type":"label"}]}]},{"id":"_help_nBAXQFj20hS1","title":"Include Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Include Note"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_CohkqWQC1iBv","title":"Insert buttons","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Insert buttons"},{"name":"iconClass","value":"bx bx-plus","type":"label"}]},{"id":"_help_oiVPnW8QfnvS","title":"Keyboard shortcuts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Keyboard shortcuts"},{"name":"iconClass","value":"bx bxs-keyboard","type":"label"}]},{"id":"_help_QEAPj01N5f7w","title":"Links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links"},{"name":"iconClass","value":"bx bx-link-alt","type":"label"}],"children":[{"id":"_help_3IDVtesTQ8ds","title":"External links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/External links"},{"name":"iconClass","value":"bx bx-link-external","type":"label"}]},{"id":"_help_hrZ1D00cLbal","title":"Internal (reference) links","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Links/Internal (reference) links"},{"name":"iconClass","value":"bx bx-link","type":"label"}]}]},{"id":"_help_S6Xx8QIWTV66","title":"Lists","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Lists"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]},{"id":"_help_QrtTYPmdd1qq","title":"Markdown-like formatting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Markdown-like formatting"},{"name":"iconClass","value":"bx bxl-markdown","type":"label"}]},{"id":"_help_YfYAtQBcfo5V","title":"Math Equations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Math Equations"},{"name":"iconClass","value":"bx bx-math","type":"label"}]},{"id":"_help_dEHYtoWWi8ct","title":"Other features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Other features"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_gLt3vA97tMcp","title":"Premium features","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features"},{"name":"iconClass","value":"bx bx-star","type":"label"}],"children":[{"id":"_help_ZlN4nump6EbW","title":"Slash Commands","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Slash Commands"},{"name":"iconClass","value":"bx bx-menu","type":"label"}]},{"id":"_help_pwc194wlRzcH","title":"Text Snippets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Premium features/Text Snippets"},{"name":"iconClass","value":"bx bx-align-left","type":"label"}]}]},{"id":"_help_BFvAtE74rbP6","title":"Table of contents","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Table of contents"},{"name":"iconClass","value":"bx bx-heading","type":"label"}]},{"id":"_help_NdowYOC1GFKS","title":"Tables","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Text/Tables"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_6f9hih2hXXZk","title":"Code","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Code"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_m523cpzocqaD","title":"Saved Search","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Saved Search"},{"name":"iconClass","value":"bx bx-file-find","type":"label"}]},{"id":"_help_iRwzGnHPzonm","title":"Relation Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Relation Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_bdUJEHsAPYQR","title":"Note Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Note Map"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_HcABDtFCkbFN","title":"Render Note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Render Note"},{"name":"iconClass","value":"bx bx-extension","type":"label"}]},{"id":"_help_s1aBHPd79XYj","title":"Mermaid Diagrams","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams"},{"name":"iconClass","value":"bx bx-selection","type":"label"}],"children":[{"id":"_help_RH6yLjjWJHof","title":"ELK layout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mermaid Diagrams/ELK layout"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]}]},{"id":"_help_grjYqerjn243","title":"Canvas","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Canvas"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_1vHRoWCEjj0L","title":"Web View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Web View"},{"name":"iconClass","value":"bx bx-globe-alt","type":"label"}]},{"id":"_help_gBbsAeiuUxI5","title":"Mind Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/Mind Map"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_W8vYD3Q1zjCR","title":"File","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Note Types/File"},{"name":"iconClass","value":"bx bx-file-blank","type":"label"}]}]},{"id":"_help_GTwFsgaA0lCt","title":"Collections","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections"},{"name":"iconClass","value":"bx bx-book","type":"label"}],"children":[{"id":"_help_xWbu3jpNWapp","title":"Calendar","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Calendar"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_2FvYrpmOXm29","title":"Table","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Table"},{"name":"iconClass","value":"bx bx-table","type":"label"}]},{"id":"_help_CtBQqbwXDx1w","title":"Kanban Board","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Kanban Board"},{"name":"iconClass","value":"bx bx-columns","type":"label"}]},{"id":"_help_81SGnPGMk7Xc","title":"Geo Map","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Geo Map"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]},{"id":"_help_zP3PMqaG71Ct","title":"Presentation","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Presentation"},{"name":"iconClass","value":"bx bx-slideshow","type":"label"}]},{"id":"_help_8QqnMzx393bx","title":"Grid View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/Grid View"},{"name":"iconClass","value":"bx bxs-grid","type":"label"}]},{"id":"_help_mULW0Q3VojwY","title":"List View","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Collections/List View"},{"name":"iconClass","value":"bx bx-list-ul","type":"label"}]}]},{"id":"_help_BgmBlOIl72jZ","title":"Troubleshooting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting"},{"name":"iconClass","value":"bx bx-bug","type":"label"}],"children":[{"id":"_help_wy8So3yZZlH9","title":"Reporting issues","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Reporting issues"},{"name":"iconClass","value":"bx bx-bug-alt","type":"label"}]},{"id":"_help_x59R8J8KV5Bp","title":"Anonymized Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Anonymized Database"},{"name":"iconClass","value":"bx bx-low-vision","type":"label"}]},{"id":"_help_qzNzp9LYQyPT","title":"Error logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs"},{"name":"iconClass","value":"bx bx-comment-error","type":"label"}],"children":[{"id":"_help_bnyigUA2UK7s","title":"Backend (server) logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Backend (server) logs"},{"name":"iconClass","value":"bx bx-server","type":"label"}]},{"id":"_help_9yEHzMyFirZR","title":"Frontend logs","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Error logs/Frontend logs"},{"name":"iconClass","value":"bx bx-window-alt","type":"label"}]}]},{"id":"_help_vdlYGAcpXAgc","title":"Synchronization fails with 504 Gateway Timeout","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Synchronization fails with 504"},{"name":"iconClass","value":"bx bx-error","type":"label"}]},{"id":"_help_s8alTXmpFR61","title":"Refreshing the application","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Troubleshooting/Refreshing the application"},{"name":"iconClass","value":"bx bx-refresh","type":"label"}]}]},{"id":"_help_pKK96zzmvBGf","title":"Theme development","type":"book","attributes":[{"name":"iconClass","value":"bx bx-palette","type":"label"}],"children":[{"id":"_help_7NfNr5pZpVKV","title":"Creating a custom theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Creating a custom theme"},{"name":"iconClass","value":"bx bxs-color","type":"label"}]},{"id":"_help_WFGzWeUK6arS","title":"Customize the Next theme","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Customize the Next theme"},{"name":"iconClass","value":"bx bx-news","type":"label"}]},{"id":"_help_WN5z4M8ASACJ","title":"Reference","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Reference"},{"name":"iconClass","value":"bx bx-book-open","type":"label"}]},{"id":"_help_AlhDUqhENtH7","title":"Custom app-wide CSS","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Theme development/Custom app-wide CSS"},{"name":"iconClass","value":"bx bxs-file-css","type":"label"}]}]},{"id":"_help_tC7s2alapj8V","title":"Advanced Usage","type":"book","attributes":[{"name":"iconClass","value":"bx bx-rocket","type":"label"}],"children":[{"id":"_help_zEY4DaJG4YT5","title":"Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes"},{"name":"iconClass","value":"bx bx-list-check","type":"label"}],"children":[{"id":"_help_HI6GBBIduIgv","title":"Labels","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Labels"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_Cq5X6iKQop6R","title":"Relations","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Relations"},{"name":"iconClass","value":"bx bx-transfer","type":"label"}]},{"id":"_help_bwZpz2ajCEwO","title":"Attribute Inheritance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Attribute Inheritance"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_OFXdgB2nNk1F","title":"Promoted Attributes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Attributes/Promoted Attributes"},{"name":"iconClass","value":"bx bx-table","type":"label"}]}]},{"id":"_help_KC1HB96bqqHX","title":"Templates","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Templates"},{"name":"iconClass","value":"bx bx-copy","type":"label"}]},{"id":"_help_BCkXAVs63Ttv","title":"Note Map (Link map, Tree map)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note Map (Link map, Tree map)"},{"name":"iconClass","value":"bx bxs-network-chart","type":"label"}]},{"id":"_help_R9pX4DGra2Vt","title":"Sharing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing"},{"name":"iconClass","value":"bx bx-share-alt","type":"label"}],"children":[{"id":"_help_Qjt68inQ2bRj","title":"Serving directly the content of a note","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Serving directly the content o"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_ycBFjKrrwE9p","title":"Exporting HTML for web publishing","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Exporting HTML for web publish"},{"name":"iconClass","value":"bx bxs-file-html","type":"label"}]},{"id":"_help_sLIJ6f1dkJYW","title":"Reverse proxy configuration","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Sharing/Reverse proxy configuration"},{"name":"iconClass","value":"bx bx-world","type":"label"}]}]},{"id":"_help_5668rwcirq1t","title":"Advanced Showcases","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases"},{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_l0tKav7yLHGF","title":"Day Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Day Notes"},{"name":"iconClass","value":"bx bx-calendar","type":"label"}]},{"id":"_help_R7abl2fc6Mxi","title":"Weight Tracker","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Weight Tracker"},{"name":"iconClass","value":"bx bx-line-chart","type":"label"}]},{"id":"_help_xYjQUYhpbUEW","title":"Task Manager","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Advanced Showcases/Task Manager"},{"name":"iconClass","value":"bx bx-calendar-check","type":"label"}]}]},{"id":"_help_J5Ex1ZrMbyJ6","title":"Custom Request Handler","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Request Handler"},{"name":"iconClass","value":"bx bx-globe","type":"label"}]},{"id":"_help_d3fAXQ2diepH","title":"Custom Resource Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Custom Resource Providers"},{"name":"iconClass","value":"bx bxs-file-plus","type":"label"}]},{"id":"_help_pgxEVkzLl1OP","title":"ETAPI (REST API)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/ETAPI (REST API)"},{"name":"iconClass","value":"bx bx-extension","type":"label"}],"children":[{"id":"_help_9qPsTWBorUhQ","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/etapi/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_47ZrP6FNuoG8","title":"Default Note Title","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Default Note Title"},{"name":"iconClass","value":"bx bx-edit-alt","type":"label"}]},{"id":"_help_wX4HbRucYSDD","title":"Database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database"},{"name":"iconClass","value":"bx bx-data","type":"label"}],"children":[{"id":"_help_oyIAJ9PvvwHX","title":"Manually altering the database","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database"},{"name":"iconClass","value":"bx bxs-edit","type":"label"}],"children":[{"id":"_help_YKWqdJhzi2VY","title":"SQL Console","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Manually altering the database/SQL Console"},{"name":"iconClass","value":"bx bx-data","type":"label"}]}]},{"id":"_help_6tZeKvSHEUiB","title":"Demo Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Database/Demo Notes"},{"name":"iconClass","value":"bx bx-package","type":"label"}]}]},{"id":"_help_Gzjqa934BdH4","title":"Configuration (config.ini or environment variables)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or e"},{"name":"iconClass","value":"bx bx-cog","type":"label"}],"children":[{"id":"_help_c5xB8m4g2IY6","title":"Trilium instance","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Trilium instance"},{"name":"iconClass","value":"bx bx-windows","type":"label"}]},{"id":"_help_LWtBjFej3wX3","title":"Cross-Origin Resource Sharing (CORS)","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Configuration (config.ini or environment variables)/Cross-Origin Resource Sharing "},{"name":"iconClass","value":"bx bx-lock","type":"label"}]}]},{"id":"_help_ivYnonVFBxbQ","title":"Bulk Actions","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Bulk Actions"},{"name":"iconClass","value":"bx bx-list-plus","type":"label"}]},{"id":"_help_4FahAwuGTAwC","title":"Note source","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note source"},{"name":"iconClass","value":"bx bx-code","type":"label"}]},{"id":"_help_1YeN2MzFUluU","title":"Technologies used","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used"},{"name":"iconClass","value":"bx bx-pyramid","type":"label"}],"children":[{"id":"_help_MI26XDLSAlCD","title":"CKEditor","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/CKEditor"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_N4IDkixaDG9C","title":"MindElixir","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/MindElixir"},{"name":"iconClass","value":"bx bx-sitemap","type":"label"}]},{"id":"_help_H0mM1lTxF9JI","title":"Excalidraw","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Excalidraw"},{"name":"iconClass","value":"bx bx-pen","type":"label"}]},{"id":"_help_MQHyy2dIFgxS","title":"Leaflet","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Technologies used/Leaflet"},{"name":"iconClass","value":"bx bx-map-alt","type":"label"}]}]},{"id":"_help_m1lbrzyKDaRB","title":"Note ID","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Note ID"},{"name":"iconClass","value":"bx bx-hash","type":"label"}]},{"id":"_help_0vTSyvhPTAOz","title":"Internal API","type":"book","attributes":[{"name":"iconClass","value":"bx bxs-component","type":"label"}],"children":[{"id":"_help_z8O2VG4ZZJD7","title":"API Reference","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"/api/docs"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_2mUhVmZK8RF3","title":"Hidden Notes","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Hidden Notes"},{"name":"iconClass","value":"bx bx-hide","type":"label"}]},{"id":"_help_uYF7pmepw27K","title":"Metrics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Advanced Usage/Metrics"},{"name":"iconClass","value":"bx bxs-data","type":"label"}],"children":[{"id":"_help_bOP3TB56fL1V","title":"grafana-dashboard.json","type":"doc","attributes":[{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}]},{"id":"_help_GBBMSlVSOIGP","title":"AI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI"},{"name":"iconClass","value":"bx bx-bot","type":"label"}],"children":[{"id":"_help_WkM7gsEUyCXs","title":"Providers","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers"},{"name":"iconClass","value":"bx bx-select-multiple","type":"label"}],"children":[{"id":"_help_7EdTxPADv95W","title":"Ollama","type":"book","attributes":[{"name":"iconClass","value":"bx bx-message-dots","type":"label"}],"children":[{"id":"_help_vvUCN7FDkq7G","title":"Installing Ollama","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Ollama/Installing Ollama"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_ZavFigBX9AwP","title":"OpenAI","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/OpenAI"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]},{"id":"_help_e0lkirXEiSNc","title":"Anthropic","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/AI/Providers/Anthropic"},{"name":"iconClass","value":"bx bx-message-dots","type":"label"}]}]}]},{"id":"_help_CdNpE2pqjmI6","title":"Scripting","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting"},{"name":"iconClass","value":"bx bxs-file-js","type":"label"}],"children":[{"id":"_help_yIhgI5H7A2Sm","title":"Frontend Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Frontend Basics"},{"name":"iconClass","value":"bx bx-info-circle","type":"label"}]},{"id":"_help_es8OU2GuguFU","title":"Examples","type":"book","attributes":[{"name":"iconClass","value":"bx bx-code-alt","type":"label"}],"children":[{"id":"_help_TjLYAo3JMO8X","title":"\"New Task\" launcher button","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/New Task launcher button"},{"name":"iconClass","value":"bx bx-task","type":"label"}]},{"id":"_help_7kZPMD0uFwkH","title":"Downloading responses from Google Forms","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Downloading responses from Goo"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_DL92EjAaXT26","title":"Using promoted attributes to configure scripts","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Examples/Using promoted attributes to c"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GPERMystNGTB","title":"Events","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Events"},{"name":"iconClass","value":"bx bx-rss","type":"label"}]},{"id":"_help_MgibgPcfeuGz","title":"Custom Widgets","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets"},{"name":"iconClass","value":"bx bxs-widget","type":"label"}],"children":[{"id":"_help_YNxAqkI5Kg1M","title":"Word count widget","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Word count widget"},{"name":"iconClass","value":"bx bx-file","type":"label"}]},{"id":"_help_SynTBQiBsdYJ","title":"Widget Basics","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Custom Widgets/Widget Basics"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_GLks18SNjxmC","title":"Script API","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Script API"},{"name":"iconClass","value":"bx bx-code-curly","type":"label"}],"children":[{"id":"_help_Q2z6av6JZVWm","title":"Frontend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Frontend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-folder","type":"label"}],"children":[{"id":"_help_habiZ3HU8Kw8","title":"FNote","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/classes/Frontend_Script_API.FNote.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_MEtfsqa5VwNi","title":"Backend API","type":"webView","attributes":[{"type":"label","name":"webViewSrc","value":"https://triliumnext.github.io/Notes/Script%20API/interfaces/Backend_Script_API.Api.html"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]},{"id":"_help_vElnKeDNPSVl","title":"Logging","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Scripting/Logging"},{"name":"iconClass","value":"bx bx-terminal","type":"label"}]}]},{"id":"_help_Fm0j45KqyHpU","title":"Miscellaneous","type":"book","attributes":[{"name":"iconClass","value":"bx bx-info-circle","type":"label"}],"children":[{"id":"_help_WFbFXrgnDyyU","title":"Privacy Policy","type":"doc","attributes":[{"type":"label","name":"docName","value":"User Guide/User Guide/Miscellaneous/Privacy Policy"},{"name":"iconClass","value":"bx bx-file","type":"label"}]}]}] \ No newline at end of file diff --git a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing.html b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing.html index 41492ceb6..af9f19b69 100644 --- a/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing.html +++ b/apps/server/src/assets/doc_notes/en/User Guide/User Guide/Advanced Usage/Sharing.html @@ -6,178 +6,173 @@ class="image"> -