diff --git a/docs/Developer Guide/!!!meta.json b/docs/Developer Guide/!!!meta.json index 49d0fce32..d41541771 100644 --- a/docs/Developer Guide/!!!meta.json +++ b/docs/Developer Guide/!!!meta.json @@ -1,2631 +1,2627 @@ { - "formatVersion": 2, - "appVersion": "0.92.7", - "files": [ - { - "isClone": false, - "noteId": "jdjRLhLV3TtI", - "notePath": [ - "jdjRLhLV3TtI" - ], - "title": "Developer Guide", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Developer Guide", - "children": [ - { - "isClone": false, - "noteId": "Kqzuchw6MmPm", - "notePath": [ - "jdjRLhLV3TtI", - "Kqzuchw6MmPm" - ], - "title": "Dependency Management", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "label", - "name": "iconClass", - "value": "bx bx-package", - "isInheritable": false, - "position": 10 - } - ], - "format": "markdown", - "attachments": [], - "dirFileName": "Dependency Management", - "children": [ - { - "isClone": false, - "noteId": "YH5JPX12BYFk", - "notePath": [ - "jdjRLhLV3TtI", - "Kqzuchw6MmPm", - "YH5JPX12BYFk" - ], - "title": "Adding a new client library", - "notePosition": 0, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Adding a new client library.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "C5CNXGgti17i", - "notePath": [ - "jdjRLhLV3TtI", - "Kqzuchw6MmPm", - "C5CNXGgti17i" - ], - "title": "Having a simpler packaging system", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Having a simpler packaging sys.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "sUqOpnrQyEC7", - "notePath": [ - "jdjRLhLV3TtI", - "sUqOpnrQyEC7" - ], - "title": "Building and deployment", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Building and deployment", - "children": [ - { - "isClone": false, - "noteId": "zdQzavvHDl1k", - "notePath": [ - "jdjRLhLV3TtI", - "sUqOpnrQyEC7", - "zdQzavvHDl1k" - ], - "title": "Documentation", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Documentation.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "czgXkoEYwclZ", - "notePath": [ - "jdjRLhLV3TtI", - "sUqOpnrQyEC7", - "czgXkoEYwclZ" - ], - "title": "Running a development build", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Running a development build.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "PXzm2t3sCdsP", - "notePath": [ - "jdjRLhLV3TtI", - "sUqOpnrQyEC7", - "PXzm2t3sCdsP" - ], - "title": "Build deliveries locally", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Build deliveries locally.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "rLWcPPQi7Eso", - "notePath": [ - "jdjRLhLV3TtI", - "sUqOpnrQyEC7", - "rLWcPPQi7Eso" - ], - "title": "Releasing a version", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "IxkDdjTogO18", - "isInheritable": false, - "position": 10 - } - ], - "format": "markdown", - "dataFileName": "Releasing a version.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "oqg9OpK8xfcm", - "notePath": [ - "jdjRLhLV3TtI", - "sUqOpnrQyEC7", - "oqg9OpK8xfcm" - ], - "title": "CI", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "CI", - "children": [ - { - "isClone": false, - "noteId": "IxkDdjTogO18", - "notePath": [ - "jdjRLhLV3TtI", - "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 - } - ], - "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": "6BWwXzPCph4G", - "notePath": [ - "jdjRLhLV3TtI", - "6BWwXzPCph4G" - ], - "title": "Project maintenance", - "notePosition": 50, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Project maintenance", - "children": [ - { - "isClone": false, - "noteId": "fa6hAJ9Ith3A", - "notePath": [ - "jdjRLhLV3TtI", - "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 - } - ], - "format": "markdown", - "dataFileName": "Updating dependencies.md", - "attachments": [], - "dirFileName": "Updating dependencies", - "children": [ - { - "isClone": false, - "noteId": "Xfi1ScuBTKJf", - "notePath": [ - "jdjRLhLV3TtI", - "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 - } - ], - "format": "markdown", - "dataFileName": "bettersqlite binaries.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "v5zBZNLR358v", - "notePath": [ - "jdjRLhLV3TtI", - "6BWwXzPCph4G", - "fa6hAJ9Ith3A", - "v5zBZNLR358v" - ], - "title": "Node.js, Electron and `better-sqlite3`", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Node.js, Electron and `better-.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "aPQ1fSuoBCTC", - "notePath": [ - "jdjRLhLV3TtI", - "6BWwXzPCph4G", - "fa6hAJ9Ith3A", - "aPQ1fSuoBCTC" - ], - "title": "Testing compatibility", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Testing compatibility.md", - "attachments": [] - } - ] - } - ] - }, - { - "isClone": false, - "noteId": "wbVIolLKDhe2", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2" - ], - "title": "Development and architecture", - "notePosition": 60, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Development and architecture", - "children": [ - { - "isClone": false, - "noteId": "TLXJwBDo8Rdv", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "TLXJwBDo8Rdv" - ], - "title": "Internationalisation / Translations", - "notePosition": 10, - "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 - } - ], - "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": [], - "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 - } - ], - "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": [], - "format": "markdown", - "dataFileName": "Server translations.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "fI16A7NrT713", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "fI16A7NrT713" - ], - "title": "Live reload", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "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": [], - "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": [], - "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": [], - "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 - } - ], - "format": "markdown", - "dataFileName": "Build information.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "vNMojjUN76jc", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "vNMojjUN76jc" - ], - "title": "Database", - "notePosition": 60, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Database", - "children": [ - { - "isClone": false, - "noteId": "e6GnYOXeIWjg", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "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": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "VIcWnKGs0sMh", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "tM3rIZQzlum4", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - } - ], - "format": "markdown", - "dataFileName": "attachments.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "ciL84vNBNi9y", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "vNMojjUN76jc", - "ciL84vNBNi9y" - ], - "title": "attributes", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "r11Bh3uxFGRj", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "tM3rIZQzlum4", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - } - ], - "format": "markdown", - "dataFileName": "attributes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "VIcWnKGs0sMh", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "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 - } - ], - "format": "markdown", - "dataFileName": "blobs.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "GskLPkgY5n6E", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "vNMojjUN76jc", - "GskLPkgY5n6E" - ], - "title": "branches", - "notePosition": 50, - "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": "h8AsuFjSD4fB", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "tM3rIZQzlum4", - "isInheritable": false, - "position": 10 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - } - ], - "format": "markdown", - "dataFileName": "branches.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "ohhExR078MPU", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "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 - } - ], - "format": "markdown", - "dataFileName": "entity_changes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "bRqbIg633nCs", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "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 - } - ], - "format": "markdown", - "dataFileName": "etapi_tokens.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "DSkl8C325tEC", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "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": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - } - ], - "format": "markdown", - "dataFileName": "notes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "4oeftEmy77Bt", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "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 - } - ], - "format": "markdown", - "dataFileName": "options.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "VyFirdgAOoh5", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "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 - } - ], - "format": "markdown", - "dataFileName": "recent_notes.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "s7ZBiaJVNumK", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "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": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "UvXpeSqfYc6d", - "isInheritable": false, - "position": 20 - }, - { - "type": "label", - "name": "iconClass", - "value": "bx bx-table", - "isInheritable": false, - "position": 10 - } - ], - "format": "markdown", - "dataFileName": "revisions.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "UvXpeSqfYc6d", - "notePath": [ - "jdjRLhLV3TtI", - "wbVIolLKDhe2", - "UvXpeSqfYc6d" - ], - "title": "Protected entities", - "notePosition": 80, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [ - { - "type": "relation", - "name": "internalLink", - "value": "e6GnYOXeIWjg", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "DSkl8C325tEC", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "s7ZBiaJVNumK", - "isInheritable": false, - "position": 10 - } - ], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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 - } - ], - "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": [], - "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 - } - ], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": [], - "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": "oLhKpfi2kGON", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "lgFwLJT72mdf", - "isInheritable": false, - "position": 20 - }, - { - "type": "relation", - "name": "includeNoteLink", - "value": "aSO1wqK7L1ma", - "isInheritable": false, - "position": 20 - } - ], - "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 - } - ], - "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 - } - ], - "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 - } - ], - "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": [], - "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": [], - "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 - } - ], - "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": [], - "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": [], - "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": [], - "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": [], - "format": "markdown", - "dataFileName": "Hidden notes.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "re0QTuqiYnVb", - "notePath": [ - "jdjRLhLV3TtI", - "re0QTuqiYnVb" - ], - "title": "Scripting", - "notePosition": 80, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Scripting", - "children": [ - { - "isClone": false, - "noteId": "gz6zq5rlHqMa", - "notePath": [ - "jdjRLhLV3TtI", - "re0QTuqiYnVb", - "gz6zq5rlHqMa" - ], - "title": "Widgets", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Widgets.md", - "attachments": [], - "dirFileName": "Widgets", - "children": [ - { - "isClone": false, - "noteId": "M8IppdwVHSjG", - "notePath": [ - "jdjRLhLV3TtI", - "re0QTuqiYnVb", - "gz6zq5rlHqMa", - "M8IppdwVHSjG" - ], - "title": "Right pane widget", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Right pane widget.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "VqGQnnPGnqAU", - "notePath": [ - "jdjRLhLV3TtI", - "re0QTuqiYnVb", - "gz6zq5rlHqMa", - "VqGQnnPGnqAU" - ], - "title": "CSS", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "CSS.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "fZ2IGYFXjkEy", - "notePath": [ - "jdjRLhLV3TtI", - "re0QTuqiYnVb", - "fZ2IGYFXjkEy" - ], - "title": "Server-side imports", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Server-side imports.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "LjqM0VUL1CrU", - "notePath": [ - "jdjRLhLV3TtI", - "LjqM0VUL1CrU" - ], - "title": "Documentation", - "notePosition": 90, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Documentation.md", - "attachments": [], - "dirFileName": "Documentation", - "children": [ - { - "isClone": false, - "noteId": "HptkyArOlRI5", - "notePath": [ - "jdjRLhLV3TtI", - "LjqM0VUL1CrU", - "HptkyArOlRI5" - ], - "title": "User-facing documentation", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "User-facing documentation.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "dtKC3FmoWOrv", - "notePath": [ - "jdjRLhLV3TtI", - "dtKC3FmoWOrv" - ], - "title": "Testing", - "notePosition": 100, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Testing.md", - "attachments": [], - "dirFileName": "Testing", - "children": [ - { - "isClone": false, - "noteId": "C5MUQczZ5R9N", - "notePath": [ - "jdjRLhLV3TtI", - "dtKC3FmoWOrv", - "C5MUQczZ5R9N" - ], - "title": "Integration testing", - "notePosition": 10, - "prefix": null, - "isExpanded": true, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Integration testing", - "children": [ - { - "isClone": false, - "noteId": "pH4RsxqifVpK", - "notePath": [ - "jdjRLhLV3TtI", - "dtKC3FmoWOrv", - "C5MUQczZ5R9N", - "pH4RsxqifVpK" - ], - "title": "Setting up authentication", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "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", - "dtKC3FmoWOrv", - "C5MUQczZ5R9N", - "bIfKwfCnqpeI" - ], - "title": "Test database", - "notePosition": 30, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Test database.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "w6gMvKh0UAVT", - "notePath": [ - "jdjRLhLV3TtI", - "dtKC3FmoWOrv", - "C5MUQczZ5R9N", - "w6gMvKh0UAVT" - ], - "title": "Running tests", - "notePosition": 40, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Running tests.md", - "attachments": [] - } - ] - } - ] - }, - { - "isClone": false, - "noteId": "dHfw0XZE515z", - "notePath": [ - "jdjRLhLV3TtI", - "dHfw0XZE515z" - ], - "title": "Sub-projects", - "notePosition": 110, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Sub-projects", - "children": [ - { - "isClone": false, - "noteId": "JkTy2zz8Zbyq", - "notePath": [ - "jdjRLhLV3TtI", - "dHfw0XZE515z", - "JkTy2zz8Zbyq" - ], - "title": "CKEditor", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "CKEditor", - "children": [ - { - "isClone": false, - "noteId": "5yWZVlKPjLCC", - "notePath": [ - "jdjRLhLV3TtI", - "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 - } - ], - "format": "markdown", - "dataFileName": "Environment setup.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "CaInsmrlZhR6", - "notePath": [ - "jdjRLhLV3TtI", - "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 - } - ], - "format": "markdown", - "dataFileName": "Building the editor.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "5gBYmUqiupBl", - "notePath": [ - "jdjRLhLV3TtI", - "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 - } - ], - "format": "markdown", - "dataFileName": "Differences from upstream.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "Q9FyKVERd1Lb", - "notePath": [ - "jdjRLhLV3TtI", - "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": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "yAFSS6awVbaZ", - "isInheritable": false, - "position": 20 - } - ], - "format": "markdown", - "dataFileName": "Updating to a newer version of.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "yAFSS6awVbaZ", - "notePath": [ - "jdjRLhLV3TtI", - "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 - } - ], - "format": "markdown", - "dataFileName": "Versions and external plugins.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "lY19SLxUMj3J", - "notePath": [ - "jdjRLhLV3TtI", - "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": "CaInsmrlZhR6", - "isInheritable": false, - "position": 10 - }, - { - "type": "relation", - "name": "internalLink", - "value": "UMN2ABrBU5D7", - "isInheritable": false, - "position": 20 - } - ], - "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", - "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 - } - ], - "format": "markdown", - "dataFileName": "Updating with upstream.md", - "attachments": [] - }, - { - "isClone": false, - "noteId": "UMN2ABrBU5D7", - "notePath": [ - "jdjRLhLV3TtI", - "dHfw0XZE515z", - "lY19SLxUMj3J", - "UMN2ABrBU5D7" - ], - "title": "Release management & continuous integration", - "notePosition": 20, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Release management & continuou.md", - "attachments": [] - } - ] - } - ] - }, - { - "isClone": false, - "noteId": "ibAPHul7Efvr", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr" - ], - "title": "Notes for old development", - "notePosition": 120, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Notes for old development", - "children": [ - { - "isClone": true, - "noteId": "czgXkoEYwclZ", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "czgXkoEYwclZ" - ], - "title": "Running a development build", - "prefix": null, - "dataFileName": "Running a development build.clone.md", - "type": "text", - "format": "markdown" - }, - { - "isClone": true, - "noteId": "PXzm2t3sCdsP", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "PXzm2t3sCdsP" - ], - "title": "Build deliveries locally", - "prefix": null, - "dataFileName": "Build deliveries locally.clone.md", - "type": "text", - "format": "markdown" - }, - { - "isClone": true, - "noteId": "rLWcPPQi7Eso", - "notePath": [ - "jdjRLhLV3TtI", - "ibAPHul7Efvr", - "rLWcPPQi7Eso" - ], - "title": "Releasing a version", - "prefix": null, - "dataFileName": "Releasing a version.clone.md", - "type": "text", - "format": "markdown" - } - ] - }, - { - "isClone": false, - "noteId": "QRLbiDXNxoWN", - "notePath": [ - "jdjRLhLV3TtI", - "QRLbiDXNxoWN" - ], - "title": "Troubleshooting", - "notePosition": 130, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Troubleshooting", - "children": [ - { - "isClone": false, - "noteId": "QUb0fRhbpT8E", - "notePath": [ - "jdjRLhLV3TtI", - "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": [], - "format": "markdown", - "dataFileName": "Error [TransformError] The pac.md", - "attachments": [] - } - ] - }, - { - "isClone": false, - "noteId": "x6lgrdztQwVB", - "notePath": [ - "jdjRLhLV3TtI", - "x6lgrdztQwVB" - ], - "title": "Installation", - "notePosition": 140, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "attachments": [], - "dirFileName": "Installation", - "children": [ - { - "isClone": false, - "noteId": "bOjeTrUViwLw", - "notePath": [ - "jdjRLhLV3TtI", - "x6lgrdztQwVB", - "bOjeTrUViwLw" - ], - "title": "Download latest nightly and install it", - "notePosition": 10, - "prefix": null, - "isExpanded": false, - "type": "text", - "mime": "text/html", - "attributes": [], - "format": "markdown", - "dataFileName": "Download latest nightly and in.md", - "attachments": [] - } - ] - } - ] - } - ] + "formatVersion": 2, + "appVersion": "0.92.7", + "files": [ + { + "isClone": false, + "noteId": "jdjRLhLV3TtI", + "notePath": [ + "jdjRLhLV3TtI" + ], + "title": "Developer Guide", + "notePosition": 1, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Developer Guide", + "children": [ + { + "isClone": false, + "noteId": "Kqzuchw6MmPm", + "notePath": [ + "jdjRLhLV3TtI", + "Kqzuchw6MmPm" + ], + "title": "Dependency Management", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "label", + "name": "iconClass", + "value": "bx bx-package", + "isInheritable": false, + "position": 10 + } + ], + "format": "markdown", + "attachments": [], + "dirFileName": "Dependency Management", + "children": [ + { + "isClone": false, + "noteId": "YH5JPX12BYFk", + "notePath": [ + "jdjRLhLV3TtI", + "Kqzuchw6MmPm", + "YH5JPX12BYFk" + ], + "title": "Adding a new client library", + "notePosition": 0, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Adding a new client library.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "C5CNXGgti17i", + "notePath": [ + "jdjRLhLV3TtI", + "Kqzuchw6MmPm", + "C5CNXGgti17i" + ], + "title": "Having a simpler packaging system", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Having a simpler packaging sys.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "sUqOpnrQyEC7", + "notePath": [ + "jdjRLhLV3TtI", + "sUqOpnrQyEC7" + ], + "title": "Building and deployment", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Building and deployment", + "children": [ + { + "isClone": false, + "noteId": "zdQzavvHDl1k", + "notePath": [ + "jdjRLhLV3TtI", + "sUqOpnrQyEC7", + "zdQzavvHDl1k" + ], + "title": "Documentation", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Documentation.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "czgXkoEYwclZ", + "notePath": [ + "jdjRLhLV3TtI", + "sUqOpnrQyEC7", + "czgXkoEYwclZ" + ], + "title": "Running a development build", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Running a development build.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "PXzm2t3sCdsP", + "notePath": [ + "jdjRLhLV3TtI", + "sUqOpnrQyEC7", + "PXzm2t3sCdsP" + ], + "title": "Build deliveries locally", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Build deliveries locally.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "rLWcPPQi7Eso", + "notePath": [ + "jdjRLhLV3TtI", + "sUqOpnrQyEC7", + "rLWcPPQi7Eso" + ], + "title": "Releasing a version", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "IxkDdjTogO18", + "isInheritable": false, + "position": 10 + } + ], + "format": "markdown", + "dataFileName": "Releasing a version.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "oqg9OpK8xfcm", + "notePath": [ + "jdjRLhLV3TtI", + "sUqOpnrQyEC7", + "oqg9OpK8xfcm" + ], + "title": "CI", + "notePosition": 50, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "CI", + "children": [ + { + "isClone": false, + "noteId": "IxkDdjTogO18", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "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": "6BWwXzPCph4G", + "notePath": [ + "jdjRLhLV3TtI", + "6BWwXzPCph4G" + ], + "title": "Project maintenance", + "notePosition": 50, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Project maintenance", + "children": [ + { + "isClone": false, + "noteId": "fa6hAJ9Ith3A", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "format": "markdown", + "dataFileName": "Updating dependencies.md", + "attachments": [], + "dirFileName": "Updating dependencies", + "children": [ + { + "isClone": false, + "noteId": "Xfi1ScuBTKJf", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "format": "markdown", + "dataFileName": "bettersqlite binaries.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "v5zBZNLR358v", + "notePath": [ + "jdjRLhLV3TtI", + "6BWwXzPCph4G", + "fa6hAJ9Ith3A", + "v5zBZNLR358v" + ], + "title": "Node.js, Electron and `better-sqlite3`", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Node.js, Electron and `better-.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "aPQ1fSuoBCTC", + "notePath": [ + "jdjRLhLV3TtI", + "6BWwXzPCph4G", + "fa6hAJ9Ith3A", + "aPQ1fSuoBCTC" + ], + "title": "Testing compatibility", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Testing compatibility.md", + "attachments": [] + } + ] + } + ] + }, + { + "isClone": false, + "noteId": "wbVIolLKDhe2", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2" + ], + "title": "Development and architecture", + "notePosition": 60, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Development and architecture", + "children": [ + { + "isClone": false, + "noteId": "TLXJwBDo8Rdv", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "TLXJwBDo8Rdv" + ], + "title": "Internationalisation / Translations", + "notePosition": 10, + "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 + } + ], + "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": [], + "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 + } + ], + "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": [], + "format": "markdown", + "dataFileName": "Server translations.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "fI16A7NrT713", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "fI16A7NrT713" + ], + "title": "Live reload", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "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": [], + "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": [], + "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": [], + "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 + } + ], + "format": "markdown", + "dataFileName": "Build information.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "vNMojjUN76jc", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "vNMojjUN76jc" + ], + "title": "Database", + "notePosition": 60, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Database", + "children": [ + { + "isClone": false, + "noteId": "e6GnYOXeIWjg", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "attachments.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "ciL84vNBNi9y", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "vNMojjUN76jc", + "ciL84vNBNi9y" + ], + "title": "attributes", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "r11Bh3uxFGRj", + "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 + } + ], + "format": "markdown", + "dataFileName": "attributes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "VIcWnKGs0sMh", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "blobs.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "GskLPkgY5n6E", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "branches.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "ohhExR078MPU", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "entity_changes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "bRqbIg633nCs", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "etapi_tokens.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "DSkl8C325tEC", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "notes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "4oeftEmy77Bt", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "options.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "VyFirdgAOoh5", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "recent_notes.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "s7ZBiaJVNumK", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "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 + } + ], + "format": "markdown", + "dataFileName": "revisions.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "UvXpeSqfYc6d", + "notePath": [ + "jdjRLhLV3TtI", + "wbVIolLKDhe2", + "UvXpeSqfYc6d" + ], + "title": "Protected entities", + "notePosition": 80, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [ + { + "type": "relation", + "name": "internalLink", + "value": "e6GnYOXeIWjg", + "isInheritable": false, + "position": 10 + }, + { + "type": "relation", + "name": "internalLink", + "value": "DSkl8C325tEC", + "isInheritable": false, + "position": 20 + }, + { + "type": "relation", + "name": "internalLink", + "value": "s7ZBiaJVNumK", + "isInheritable": false, + "position": 30 + } + ], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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 + } + ], + "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": [], + "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 + } + ], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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": [], + "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 + } + ], + "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 + } + ], + "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 + } + ], + "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 + } + ], + "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": [], + "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": [], + "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 + } + ], + "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": [], + "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": [], + "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": [], + "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": [], + "format": "markdown", + "dataFileName": "Hidden notes.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "re0QTuqiYnVb", + "notePath": [ + "jdjRLhLV3TtI", + "re0QTuqiYnVb" + ], + "title": "Scripting", + "notePosition": 80, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Scripting", + "children": [ + { + "isClone": false, + "noteId": "gz6zq5rlHqMa", + "notePath": [ + "jdjRLhLV3TtI", + "re0QTuqiYnVb", + "gz6zq5rlHqMa" + ], + "title": "Widgets", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Widgets.md", + "attachments": [], + "dirFileName": "Widgets", + "children": [ + { + "isClone": false, + "noteId": "M8IppdwVHSjG", + "notePath": [ + "jdjRLhLV3TtI", + "re0QTuqiYnVb", + "gz6zq5rlHqMa", + "M8IppdwVHSjG" + ], + "title": "Right pane widget", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Right pane widget.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "VqGQnnPGnqAU", + "notePath": [ + "jdjRLhLV3TtI", + "re0QTuqiYnVb", + "gz6zq5rlHqMa", + "VqGQnnPGnqAU" + ], + "title": "CSS", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "CSS.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "fZ2IGYFXjkEy", + "notePath": [ + "jdjRLhLV3TtI", + "re0QTuqiYnVb", + "fZ2IGYFXjkEy" + ], + "title": "Server-side imports", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Server-side imports.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "LjqM0VUL1CrU", + "notePath": [ + "jdjRLhLV3TtI", + "LjqM0VUL1CrU" + ], + "title": "Documentation", + "notePosition": 90, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Documentation.md", + "attachments": [], + "dirFileName": "Documentation", + "children": [ + { + "isClone": false, + "noteId": "HptkyArOlRI5", + "notePath": [ + "jdjRLhLV3TtI", + "LjqM0VUL1CrU", + "HptkyArOlRI5" + ], + "title": "User-facing documentation", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "User-facing documentation.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "dtKC3FmoWOrv", + "notePath": [ + "jdjRLhLV3TtI", + "dtKC3FmoWOrv" + ], + "title": "Testing", + "notePosition": 100, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Testing.md", + "attachments": [], + "dirFileName": "Testing", + "children": [ + { + "isClone": false, + "noteId": "C5MUQczZ5R9N", + "notePath": [ + "jdjRLhLV3TtI", + "dtKC3FmoWOrv", + "C5MUQczZ5R9N" + ], + "title": "Integration testing", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Integration testing", + "children": [ + { + "isClone": false, + "noteId": "pH4RsxqifVpK", + "notePath": [ + "jdjRLhLV3TtI", + "dtKC3FmoWOrv", + "C5MUQczZ5R9N", + "pH4RsxqifVpK" + ], + "title": "Setting up authentication", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "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", + "dtKC3FmoWOrv", + "C5MUQczZ5R9N", + "bIfKwfCnqpeI" + ], + "title": "Test database", + "notePosition": 30, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Test database.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "w6gMvKh0UAVT", + "notePath": [ + "jdjRLhLV3TtI", + "dtKC3FmoWOrv", + "C5MUQczZ5R9N", + "w6gMvKh0UAVT" + ], + "title": "Running tests", + "notePosition": 40, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Running tests.md", + "attachments": [] + } + ] + } + ] + }, + { + "isClone": false, + "noteId": "dHfw0XZE515z", + "notePath": [ + "jdjRLhLV3TtI", + "dHfw0XZE515z" + ], + "title": "Sub-projects", + "notePosition": 110, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Sub-projects", + "children": [ + { + "isClone": false, + "noteId": "JkTy2zz8Zbyq", + "notePath": [ + "jdjRLhLV3TtI", + "dHfw0XZE515z", + "JkTy2zz8Zbyq" + ], + "title": "CKEditor", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "CKEditor", + "children": [ + { + "isClone": false, + "noteId": "5yWZVlKPjLCC", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "format": "markdown", + "dataFileName": "Environment setup.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "CaInsmrlZhR6", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "format": "markdown", + "dataFileName": "Building the editor.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "5gBYmUqiupBl", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "format": "markdown", + "dataFileName": "Differences from upstream.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "Q9FyKVERd1Lb", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "format": "markdown", + "dataFileName": "Updating to a newer version of.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "yAFSS6awVbaZ", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "format": "markdown", + "dataFileName": "Versions and external plugins.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "lY19SLxUMj3J", + "notePath": [ + "jdjRLhLV3TtI", + "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 + } + ], + "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", + "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 + } + ], + "format": "markdown", + "dataFileName": "Updating with upstream.md", + "attachments": [] + }, + { + "isClone": false, + "noteId": "UMN2ABrBU5D7", + "notePath": [ + "jdjRLhLV3TtI", + "dHfw0XZE515z", + "lY19SLxUMj3J", + "UMN2ABrBU5D7" + ], + "title": "Release management & continuous integration", + "notePosition": 20, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Release management & continuou.md", + "attachments": [] + } + ] + } + ] + }, + { + "isClone": false, + "noteId": "ibAPHul7Efvr", + "notePath": [ + "jdjRLhLV3TtI", + "ibAPHul7Efvr" + ], + "title": "Notes for old development", + "notePosition": 120, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Notes for old development", + "children": [ + { + "isClone": true, + "noteId": "PXzm2t3sCdsP", + "notePath": [ + "jdjRLhLV3TtI", + "ibAPHul7Efvr", + "PXzm2t3sCdsP" + ], + "title": "Build deliveries locally", + "prefix": null, + "dataFileName": "Build deliveries locally.clone.md", + "type": "text", + "format": "markdown", + "isExpanded": false + }, + { + "isClone": true, + "noteId": "rLWcPPQi7Eso", + "notePath": [ + "jdjRLhLV3TtI", + "ibAPHul7Efvr", + "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", + "czgXkoEYwclZ" + ], + "title": "Running a development build", + "prefix": null, + "dataFileName": "Running a development build.clone.md", + "type": "text", + "format": "markdown", + "isExpanded": false + } + ] + }, + { + "isClone": false, + "noteId": "QRLbiDXNxoWN", + "notePath": [ + "jdjRLhLV3TtI", + "QRLbiDXNxoWN" + ], + "title": "Troubleshooting", + "notePosition": 130, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Troubleshooting", + "children": [ + { + "isClone": false, + "noteId": "QUb0fRhbpT8E", + "notePath": [ + "jdjRLhLV3TtI", + "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": [], + "format": "markdown", + "dataFileName": "Error [TransformError] The pac.md", + "attachments": [] + } + ] + }, + { + "isClone": false, + "noteId": "x6lgrdztQwVB", + "notePath": [ + "jdjRLhLV3TtI", + "x6lgrdztQwVB" + ], + "title": "Installation", + "notePosition": 140, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "attachments": [], + "dirFileName": "Installation", + "children": [ + { + "isClone": false, + "noteId": "bOjeTrUViwLw", + "notePath": [ + "jdjRLhLV3TtI", + "x6lgrdztQwVB", + "bOjeTrUViwLw" + ], + "title": "Download latest nightly and install it", + "notePosition": 10, + "prefix": null, + "isExpanded": false, + "type": "text", + "mime": "text/html", + "attributes": [], + "format": "markdown", + "dataFileName": "Download latest nightly and in.md", + "attachments": [] + } + ] + } + ] + } + ] } \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Building and deployment/Build deliveries locally.md b/docs/Developer Guide/Developer Guide/Building and deployment/Build deliveries locally.md index 1c842c871..44c92587a 100644 --- a/docs/Developer Guide/Developer Guide/Building and deployment/Build deliveries locally.md +++ b/docs/Developer Guide/Developer Guide/Building and deployment/Build deliveries locally.md @@ -5,13 +5,13 @@ In the project root: Under NixOS the following `nix-shell` is needed: -```plain +``` nix-shell -p jq ``` For Linux builds: -```plain +``` nix-shell -p jq fakeroot dpkg ``` diff --git a/docs/Developer Guide/Developer Guide/Building and deployment/Documentation.md b/docs/Developer Guide/Developer Guide/Building and deployment/Documentation.md index a883b2dfe..13c941258 100644 --- a/docs/Developer Guide/Developer Guide/Building and deployment/Documentation.md +++ b/docs/Developer Guide/Developer Guide/Building and deployment/Documentation.md @@ -25,7 +25,7 @@ Generally `ROOT_NOTE_ID` should not be changed since the note ID must match if t Run: -```plain +``` ./bin/docs/prepare.sh ``` diff --git a/docs/Developer Guide/Developer Guide/Building and deployment/Releasing a version.md b/docs/Developer Guide/Developer Guide/Building and deployment/Releasing a version.md index af0e08fbb..5651afc4d 100644 --- a/docs/Developer Guide/Developer Guide/Building and deployment/Releasing a version.md +++ b/docs/Developer Guide/Developer Guide/Building and deployment/Releasing a version.md @@ -1,13 +1,13 @@ # Releasing a version On NixOS: -```plain +``` nix-shell -p dpkg fakeroot jq nodejs_20 ``` Then simply run from project root: -```plain +``` ./bin/release.sh 1.2.3 ``` diff --git a/docs/Developer Guide/Developer Guide/Building and deployment/Running a development build.md b/docs/Developer Guide/Developer Guide/Building and deployment/Running a development build.md index e88cf3842..2a1858e87 100644 --- a/docs/Developer Guide/Developer Guide/Building and deployment/Running a development build.md +++ b/docs/Developer Guide/Developer Guide/Building and deployment/Running a development build.md @@ -1,7 +1,7 @@ # Running a development build As always, install the dependencies for the first time (and re-run whenever there are errors about missing dependencies): -```sh +``` npm install ``` @@ -9,13 +9,13 @@ npm install Run with default settings: -```sh +``` npm run start-server ``` Run with custom port: -```sh +``` TRILIUM_PORT=8082 npm run start-server ``` @@ -23,25 +23,25 @@ TRILIUM_PORT=8082 npm run start-server Rebuild `better-sqlite3` dependency: -```sh +``` npm run switch-electron ``` Then run Electron: -```sh +``` npm run start-electron ``` To run Electron using the same data directory as the production version: -```sh +``` npm run start-electron-no-dir ``` When done, switch back the `better-sqlite3` dependency: -```sh +``` npm run switch-server ``` @@ -49,13 +49,13 @@ npm run switch-server To start Electron without running `switch-electron` first: -```sh +``` npm run qstart-electron ``` Similarly, to start the server without running `switch-server` first: -```sh +``` npm run qstart-server ``` @@ -63,7 +63,7 @@ npm run qstart-server Safe mode is off by default, to enable it temporarily on a Unix shell, prepend the environment variable setting: -```sh +``` TRILIUM_SAFE_MODE=1 npm run start-server ``` @@ -78,12 +78,12 @@ To have the same behaviour on Windows, we would need to alter `package.json`: 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`: -```sh +``` npm run start-electron-nix ``` Similarly to the original command, to use the same data directory as the production version: -```sh +``` npm run start-electron-no-dir-nix ``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Dependency Management/Adding a new client library.md b/docs/Developer Guide/Developer Guide/Dependency Management/Adding a new client library.md index e413d99d6..26617f7b6 100644 --- a/docs/Developer Guide/Developer Guide/Dependency Management/Adding a new client library.md +++ b/docs/Developer Guide/Developer Guide/Dependency Management/Adding a new client library.md @@ -3,7 +3,7 @@ In the past some libraries have been copy-pasted (and adapted if needed) to the The first step is to install the desired library. As an example we are going to install `i18next`: -```plain +``` npm i i18next ``` @@ -11,7 +11,7 @@ npm i i18next 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: -```plain +``` $ tree node_modules/i18next node_modules/i18next ├── dist 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/Development and architecture/Adding a new note type/Export diagram as SVG.md index 23bb6649a..ad17e39bc 100644 --- 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/Development and architecture/Adding a new note type/Export diagram as SVG.md @@ -11,7 +11,7 @@ The SVG export needs to be handled inside the note type implementation.  The first goal is to create a method to handle the SVG rendering. Make sure to deduplicate the code if the SVG rendering is already handled. -```plain +``` async renderSvg() { return await this.mind.exportSvg().text(); } @@ -19,7 +19,7 @@ async renderSvg() { Then create an event handler to manage the SVG export: -```plain +``` async exportSvgEvent({ntxId}) { if (!this.isNoteContext(ntxId) || this.note.type !== "mindMap") { return; 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/Development and architecture/Adding a new note type/First steps.md index de0f74b3b..7f7df68c8 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/First steps.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/First steps.md @@ -49,6 +49,6 @@ Go to `src/becca/entities/rows.ts` and add the new note type to `ALLOWED_NOTE_TY Type widgets do a check whenever a note is selected to determine whether the widget needs to be displayed or not, based on the note type. Make sure `getType()` is well implemented in the newly added type widget (take great care that the value is returned but also that the note type ID matches the ones registered in the previous steps): -```plain +``` static getType() { return "foo"; } ``` \ No newline at end of file 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/Development and architecture/Adding a new note type/Loading data.md index a29207b15..a7aed7b0f 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Loading data.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/Loading data.md @@ -1,7 +1,7 @@ # Loading data Data loading can be done in `doRefresh()` since it gets a reference to the note: -```plain +``` const blob = await note.getBlob(); const content = blob.getJsonContent(); ``` 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/Development and architecture/Adding a new note type/SVG rendering.md index 3deb8f2d1..da7648c15 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/SVG rendering.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Adding a new note type/SVG rendering.md @@ -13,7 +13,7 @@ If the returned value is a `Blob`, then the underlying text can be obtained via To save the SVG as an attachment alongside the content, simply modify `getData()`: -```plain +``` async getData() { const mind = this.mind; if (!mind) { @@ -47,7 +47,7 @@ Alter the `returnImageInt` method as follows: 1. Add the image type to the guard condition which returns 400 for unsupported note types. 2. Add an `if` statement to render the attachment using the correct name: -```plain +``` if (image.type === "mindMap") { renderSvgAttachment(image, res, 'mindmap-export.svg'); } 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/Development and architecture/Adding a new note type/Saving data via spaced update.md index b6344cb78..5ad001dca 100644 --- 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/Development and architecture/Adding a new note type/Saving data via spaced update.md @@ -3,7 +3,7 @@ The data persistence is achieved via the spaced update mechanism which is alread First, the class must implement `getData`, in order to retrieve the data from the custom widget in a serialized form. As an example from the mind map implementation: -```plain +``` async getData() { const mind = this.mind; if (!mind) { @@ -20,7 +20,7 @@ Here the content is a string containing a JSON. It is also possible to provide a Then to trigger an update, register a listener within the custom widget that calls the spaced update, for example: -```plain +``` mind.bus.addListener("operation", (operation) => { this.spacedUpdate.scheduleUpdate(); }); diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Database/attachments.md b/docs/Developer Guide/Developer Guide/Development and architecture/Database/attachments.md index cbe7e6735..1b462d6f0 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Database/attachments.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Database/attachments.md @@ -1,2 +1,2 @@ # attachments -
Column NameData TypeNullityDefault valueDescription
attachmentIdTextNon-null Unique ID (e.g. qhC1vzU4nwSE)
ownerIdTextNon-null The unique ID of a row in notes.
roleTextNon-null The role of the attachment: image for images that are attached to a note.
mimeTextNon-null The MIME type of the attachment (e.g. image/png)
titleTextNon-null The title of the attachment.
isProtectedIntegerNon-null01 if the entity is protected, 0 otherwise.
positionIntegerNon-null0Not sure where the position is relevant for attachments (saw it with values of 10 and 0).
blobIdTextNullablenullThe corresponding blobId from the blobs table.
dateModifiedTextNon-null Localized modification date (e.g. 2023-11-08 18:43:44.204+0200)
utcDateModifiedTextNon-null Modification date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
utcDateScheduledForErasureTextNullablenull 
isDeletedIntegerNon-null 1 if the entity is deleted, 0 otherwise.
deleteIdTextNullablenull 
\ No newline at end of file +
Column NameData TypeNullityDefault valueDescription
attachmentIdTextNon-null Unique ID (e.g. qhC1vzU4nwSE)
ownerIdTextNon-null The unique ID of a row in notes.
roleTextNon-null The role of the attachment: image for images that are attached to a note.
mimeTextNon-null The MIME type of the attachment (e.g. image/png)
titleTextNon-null The title of the attachment.
isProtectedIntegerNon-null01 if the entity is protected, 0 otherwise.
positionIntegerNon-null0Not sure where the position is relevant for attachments (saw it with values of 10 and 0).
blobIdTextNullablenullThe corresponding blobId from the blobs table.
dateModifiedTextNon-null Localized modification date (e.g. 2023-11-08 18:43:44.204+0200)
utcDateModifiedTextNon-null Modification date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
utcDateScheduledForErasureTextNullablenull 
isDeletedIntegerNon-null 1 if the entity is deleted, 0 otherwise.
deleteIdTextNullablenull 
\ 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 index 9a768bb99..72fb72523 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Demo document.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Demo document.md @@ -11,7 +11,7 @@ After making the necessary modifications, simply export the “Trilium Demo” n ## Testing the changes -```plain +``` rm -r data npm run start-server ``` diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Docker.md b/docs/Developer Guide/Developer Guide/Development and architecture/Docker.md index d615b6355..f8ec576fb 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Docker.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Docker.md @@ -1,18 +1,18 @@ # Docker To run a Docker build: -```plain +``` ./bin/builder-docker.sh ``` To run the built Docker image: -```plain +``` sudo docker run -p 8081:8080 triliumnext/notes:v0.90.6-beta ``` To enter a shell in the Docker container: -```plain +``` 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/Icons on Mac/Adaptive icon.md b/docs/Developer Guide/Developer Guide/Development and architecture/Icons/Icons on Mac/Adaptive icon.md index a9d68331f..61f195705 100644 --- 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 @@ -1,6 +1,6 @@ # Adaptive icon -
Before
After
With new scale
+
Before
After
With new scale
## Scale -
0.9
0.85
0.8
0.75
\ No newline at end of file +
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/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 index 8d0599797..86082bb5c 100644 --- 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 @@ -7,14 +7,14 @@ In the screenshot, the icon is around 650px whereas the closest image we have is Before: -```plain +``` File: ../images/app-icons/mac/icon.icns ic09: 62069 bytes, png: 512x512 ``` After: -```plain +``` File: ../images/app-icons/mac/icon.icns icp4: 1140 bytes, png: 16x16 icp5: 1868 bytes, png: 32x32 diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translat.md b/docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translat.md index 9d9f543bb..d4026a474 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translat.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Internationalisation Translat.md @@ -65,7 +65,7 @@ where `msgid` is the key of the message being translated. In the translation, enclose the variables with `{{` and `}}`: -```plain +``` { "key": "{{what}} is {{how}}" } @@ -73,7 +73,7 @@ In the translation, enclose the variables with `{{` and `}}`: Then pass the arguments when reading the translation: -```plain +``` t('key', { what: 'i18next', how: 'great' }) ``` 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 index 1933f5aa2..dc428c828 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Live reload.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Live reload.md @@ -11,7 +11,7 @@ However, a core difference is that Electron watches `dist/src/public` instead of 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: -```plain +``` npm run ``` 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 index 3c712ad35..b2388f1dd 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Note types.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Note types.md @@ -3,7 +3,7 @@ The note type is defined by the `type` column in 
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:

{
+
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",
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
index 9ca4bf51f..c127d8c62 100644
--- 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	
@@ -1,7 +1,7 @@
 # Check box option
 In the TPL:
 
-```html
+```
 

Background effects

diff --git a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Creating a new option.md b/docs/Developer Guide/Developer Guide/Development and architecture/Options/Creating a new option.md index 8b49a44d7..975ef70b3 100644 --- a/docs/Developer Guide/Developer Guide/Development and architecture/Options/Creating a new option.md +++ b/docs/Developer Guide/Developer Guide/Development and architecture/Options/Creating a new option.md @@ -1,7 +1,5 @@ # Creating a new option 1. Go to `options_interface.ts` and add the option to `OptionDefinitions`, specifying its intended data type (boolean, string, number). Note that in the end the option will still be stored as a string, but this aids in type safety across the application. - 2. To add a new option with a set default, go to `options_init.ts` in the server and add a new entry in the `defaultOptions`. - 3. **Make the option adjustable by the client** By default options are not adjustable or visible to the client. To do so, modify `routes/api/options.ts` to add the newly added option to `ALLOWED_OPTIONS`. \ 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 index 0cc3f414e..71bab7e34 100644 --- 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 @@ -5,7 +5,7 @@ For example, to create a select: First, modify the template (`TPL`), to add the new widget: -```plain +```
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 +
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/Project maintenance/Updating dependencies/Node.js, Electron and `better-.md b/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/Node.js, Electron and `better-.md index 2b1161238..1081e5ea9 100644 --- a/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/Node.js, Electron and `better-.md +++ b/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/Node.js, Electron and `better-.md @@ -1,6 +1,8 @@ # 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 versionSQLite versionNode.js prebuildsElectron.js prebuilds
8.4.0<3.43.0v20???
8.5.0v20v25
8.5.1 v26
8.5.2v20 (macOS + arm64)
8.6.03.43.0 
8.7.03.43.1 
9.0.03.43.2 v27
9.1.03.44.0 
9.1.1macOS + Alpine
9.2.03.44.2 
9.2.1 / 9.2.2 v28
9.3.03.45.0 
9.4.03.45.1 
9.4.1Windows arm, arm64
9.4.2 <v29
9.4.3 <v29
9.4.4 v29
9.4.5Better prebuilds
9.5.03.45.2 
9.6.03.45.3 v30
10.0.0v22
10.1.03.46.0 
11.0.0>21
11.1.0 (prerelease)  v31
11.1.1  
11.1.2  
\ No newline at end of file +
better-sqlite3 versionSQLite versionNode.js prebuildsElectron.js prebuilds
8.4.0<3.43.0v20???
8.5.0v20v25
8.5.1 v26
8.5.2v20 (macOS + arm64)
8.6.03.43.0 
8.7.03.43.1 
9.0.03.43.2 v27
9.1.03.44.0 
9.1.1macOS + Alpine
9.2.03.44.2 
9.2.1 / 9.2.2 v28
9.3.03.45.0 
9.4.03.45.1 
9.4.1Windows arm, arm64
9.4.2 <v29
9.4.3 <v29
9.4.4 v29
9.4.5Better prebuilds
9.5.03.45.2 
9.6.03.45.3 v30
10.0.0v22
10.1.03.46.0 
11.0.0>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/Project maintenance/Updating dependencies/Testing compatibility.md b/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/Testing compatibility.md index c97956f1f..dffa2d177 100644 --- a/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/Testing compatibility.md +++ b/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/Testing compatibility.md @@ -1,2 +1,2 @@ # Testing compatibility -
better-sqlite3 version
Change log
SQLite version
Change log
Compatibility with upstream Trilium
8.4.0<3.43.0Compatible, same version.
8.6.03.43.0 
8.7.03.43.1 
9.0.03.43.2 
9.1.0 + 9.1.13.44.0 
9.2.0 + 9.2.1 + 9.2.23.44.2 
9.3.03.45.0 
9.4.0, 9.4.1, 9.4.2, 9.4.3, 9.4.4, 9.4.53.45.1 
9.5.03.45.2 
9.6.0 / 10.0.03.45.3 
10.1.0 / 11.0.0 / 11.1.1 / 11.1.2 / 11.2.0 / 11.2.13.46.0 
11.3.03.46.1 
\ No newline at end of file +
better-sqlite3 version
Change log
SQLite version
Change log
Compatibility with upstream Trilium
8.4.0<3.43.0Compatible, same version.
8.6.03.43.0 
8.7.03.43.1 
9.0.03.43.2 
9.1.0 + 9.1.13.44.0 
9.2.0 + 9.2.1 + 9.2.23.44.2 
9.3.03.45.0 
9.4.0, 9.4.1, 9.4.2, 9.4.3, 9.4.4, 9.4.53.45.1 
9.5.03.45.2 
9.6.0 / 10.0.03.45.3 
10.1.0 / 11.0.0 / 11.1.1 / 11.1.2 / 11.2.0 / 11.2.13.46.0 
11.3.03.46.1 
\ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/bettersqlite binaries.md b/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/bettersqlite binaries.md index b7aa21ed0..a9ec99601 100644 --- a/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/bettersqlite binaries.md +++ b/docs/Developer Guide/Developer Guide/Project maintenance/Updating dependencies/bettersqlite binaries.md @@ -7,7 +7,7 @@ Note that Electron and Node.js versions need different versions of these binding 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: -```plain +``` 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 diff --git a/docs/Developer Guide/Developer Guide/Scripting/Server-side imports.md b/docs/Developer Guide/Developer Guide/Scripting/Server-side imports.md index af7ccc11a..81290602e 100644 --- a/docs/Developer Guide/Developer Guide/Scripting/Server-side imports.md +++ b/docs/Developer Guide/Developer Guide/Scripting/Server-side imports.md @@ -1,14 +1,14 @@ # Server-side imports Trilium Notes allowed the use of Common.js module imports inside backend scripts, such as: -```plain +``` 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`: -```plain +``` const isBetween = (await import("dayjs/plugin/isBetween")).default; api.dayjs.extend(isBetween); ``` diff --git a/docs/Developer Guide/Developer Guide/Scripting/Widgets.md b/docs/Developer Guide/Developer Guide/Scripting/Widgets.md index 0c26f2518..cbd08854f 100644 --- a/docs/Developer Guide/Developer Guide/Scripting/Widgets.md +++ b/docs/Developer Guide/Developer Guide/Scripting/Widgets.md @@ -1,7 +1,7 @@ # 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. -```plain +``` const template = `
`; class MyWidget extends api.BasicWidget { @@ -28,6 +28,6 @@ module.exports = new MyWidget(); 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://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/Scripting/Widgets/CSS.md b/docs/Developer Guide/Developer Guide/Scripting/Widgets/CSS.md index 52e7298f4..e93d63ad7 100644 --- a/docs/Developer Guide/Developer Guide/Scripting/Widgets/CSS.md +++ b/docs/Developer Guide/Developer Guide/Scripting/Widgets/CSS.md @@ -1,7 +1,7 @@ # CSS In `doRender()`: -```plain +``` this.cssBlock(`#my-widget { position: absolute; bottom: 40px; diff --git a/docs/Developer Guide/Developer Guide/Scripting/Widgets/Right pane widget.md b/docs/Developer Guide/Developer Guide/Scripting/Widgets/Right pane widget.md index 4299b47f8..c038765dd 100644 --- a/docs/Developer Guide/Developer Guide/Scripting/Widgets/Right pane widget.md +++ b/docs/Developer Guide/Developer Guide/Scripting/Widgets/Right pane widget.md @@ -3,7 +3,7 @@ * `parentWidget()` must be set to `“rightPane”`. * `widgetTitle()` getter can optionally be overriden, otherwise the widget will be displayed as “Untitled widget”. -```plain +``` const template = `
Hi
`; class ToDoListWidget extends api.RightPanelWidget { diff --git a/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Building the editor.md b/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Building the editor.md index 700095cb5..1d51e55d9 100644 --- a/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Building the editor.md +++ b/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Building the editor.md @@ -3,7 +3,7 @@ First, make sure Enviro ## Trigger the build -```plain +``` cd packages/ckeditor5-build-trilium yarn build ``` @@ -16,6 +16,6 @@ Go to `packages/ckeditor5-build-balloon-trilium/build` and copy `ckeditor.js` an An example shell command to copy it: -```plain +``` cp build/ckeditor.* ~/Projects/TriliumNext/Notes/libraries/ckeditor/ ``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Differences from upstream.md b/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Differences from upstream.md index 1894d96d9..2d72bd669 100644 --- a/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Differences from upstream.md +++ b/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Differences from upstream.md @@ -3,7 +3,7 @@ * 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. -
Affected fileAffected methodChanged inReason for change
packages/ckeditor5-mention/src/mentionui.tscreateRegExp()6db05043be24bacf9bd51ea46408232b01a1b232 (added back)Allows triggering the autocomplete for labels and attributes in the attribute editor.
init()55a63a1934efb9a520fcc2d69f3ce55ac22aca39Allows dismissing @-mention permanently after pressing ESC, otherwise it would automatically show up as soon as a space was entered.
+
Affected fileAffected methodChanged inReason for change
packages/ckeditor5-mention/src/mentionui.tscreateRegExp()6db05043be24bacf9bd51ea46408232b01a1b232 (added back)Allows triggering the autocomplete for labels and attributes in the attribute editor.
init()55a63a1934efb9a520fcc2d69f3ce55ac22aca39Allows dismissing @-mention permanently after pressing ESC, otherwise it would automatically show up as soon as a space was entered.
## Checking the old repo diff --git a/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Environment setup.md b/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Environment setup.md index b262761a8..46bb10792 100644 --- a/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Environment setup.md +++ b/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Environment setup.md @@ -3,7 +3,7 @@ To set up the repository: -```plain +``` git clone https://github.com/TriliumNext/trilium-ckeditor5.git ``` diff --git a/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Versions and external plugins.md b/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Versions and external plugins.md index 76da10d6e..14e023654 100644 --- a/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Versions and external plugins.md +++ b/docs/Developer Guide/Developer Guide/Sub-projects/CKEditor/Versions and external plugins.md @@ -1,4 +1,4 @@ # Versions and external plugins ## External plugins -
trilium-ckeditor543.2.0 
ckeditor5-math See ckeditor5-math.
   
\ No newline at end of file +
trilium-ckeditor543.2.0 
ckeditor5-math See ckeditor5-math.
   
\ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Testing/Integration testing/Running tests.md b/docs/Developer Guide/Developer Guide/Testing/Integration testing/Running tests.md index aab19e94e..52663cd80 100644 --- a/docs/Developer Guide/Developer Guide/Testing/Integration testing/Running tests.md +++ b/docs/Developer Guide/Developer Guide/Testing/Integration testing/Running tests.md @@ -3,7 +3,7 @@ Before starting Playwright, it has to be installed locally via: -```plain +``` npx playwright install ``` @@ -27,12 +27,12 @@ When asked for a password, the password is `demo1234`. After starting the integration test server, to run the Playwright UI, run in the terminal: -```plain +``` npx playwright test --ui ``` It is also possible to run the interactive code generator instead: -```plain +``` npx playwright codegen ``` \ No newline at end of file diff --git a/docs/Developer Guide/Developer Guide/Testing/Integration testing/Test database.md b/docs/Developer Guide/Developer Guide/Testing/Integration testing/Test database.md index ac7df0b4c..2ad34d2ee 100644 --- a/docs/Developer Guide/Developer Guide/Testing/Integration testing/Test database.md +++ b/docs/Developer Guide/Developer Guide/Testing/Integration testing/Test database.md @@ -15,7 +15,7 @@ As mentioned previously, the database itself can be edited manually in order to In order to do so, run a separate integration test server with: -```plain +``` npm run integration-edit-db ```