a711f98703
Zweiter Notiz-Typ neben Markdown. Beide tragen dieselben Angaben, nur an ihrer jeweils üblichen Stelle: Markdown im Frontmatter, HTML in <title> und <meta name=…>. - domain/archive_html.rs: Gerüst, Metadaten, Titel setzen, Rumpf lesen und ersetzen, Text ohne Markup für den Suchindex. - Der Scan nimmt .html auf; Doc und WikiDocEntry führen `kind` (md|html). doc_path, set_title, write_body, ensure_ids und die Knotentext-Regel arbeiten typbewusst; ein Knotentext darf .md oder .html sein. - archive_create_html legt eine leere HTML-Notiz an; Anlegen schreibt nicht mehr in den Entwurfs-Puffer, sondern liefert die ID der neuen Notiz — die Ansicht wählt sie aus und öffnet den Editor. - Anzeige: HTML-Notizen erscheinen als Markup statt durch den Markdown-Renderer, mit klickbaren Wikilinks; eigenes Symbol im Baum. - Editor: html-editor.ts auf ProseMirror (MIT, ohne Anbieter-Stufe). DOMParser liest den Rumpf, DOMSerializer schreibt ihn zurück — gespeichert wird, was der Editor zeigt. Werkzeugleiste mit Überschriften, Auszeichnung, Listen, Ein-/Ausrücken, Tabellen und Links; Tastenkürzel für fett, kursiv, Rückgängig und Zellenwechsel. Markdown behält den Rohtext-Editor mit Live-Vorschau. - CSP: style-src erlaubt 'unsafe-inline', sonst blockiert die Richtlinie die Stil-Attribute in HTML-Notizen und alles erscheint unformatiert. script-src bleibt streng.
50 lines
1.4 KiB
JSON
50 lines
1.4 KiB
JSON
{
|
|
"name": "ai-control",
|
|
"private": true,
|
|
"version": "0.3.0",
|
|
"license": "MIT",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vue-tsc -b && vite build",
|
|
"test": "vitest run",
|
|
"preview": "vite preview",
|
|
"tauri": "tauri"
|
|
},
|
|
"dependencies": {
|
|
"@fontsource/jetbrains-mono": "^5.2.8",
|
|
"@tauri-apps/api": "^2.11.1",
|
|
"@tauri-apps/plugin-autostart": "^2.5.1",
|
|
"@tauri-apps/plugin-clipboard-manager": "^2.3.2",
|
|
"@tauri-apps/plugin-dialog": "^2.7.1",
|
|
"@tauri-apps/plugin-opener": "^2.5.4",
|
|
"@xterm/addon-fit": "^0.11.0",
|
|
"@xterm/addon-ligatures": "^0.10.0",
|
|
"@xterm/addon-webgl": "^0.19.0",
|
|
"@xterm/xterm": "^6.0.0",
|
|
"marked": "^16.4.2",
|
|
"prosemirror-commands": "^1.7.1",
|
|
"prosemirror-history": "^1.5.0",
|
|
"prosemirror-keymap": "^1.2.3",
|
|
"prosemirror-model": "^1.25.11",
|
|
"prosemirror-schema-basic": "^1.2.4",
|
|
"prosemirror-schema-list": "^1.5.1",
|
|
"prosemirror-state": "^1.4.4",
|
|
"prosemirror-tables": "^1.8.5",
|
|
"prosemirror-view": "^1.42.2",
|
|
"vue": "^3.5.39",
|
|
"vue-i18n": "^11.4.6"
|
|
},
|
|
"devDependencies": {
|
|
"@tauri-apps/cli": "^2.11.4",
|
|
"@types/node": "^24.13.2",
|
|
"@vitejs/plugin-vue": "^6.0.7",
|
|
"@vue/tsconfig": "^0.9.1",
|
|
"happy-dom": "^20.11.0",
|
|
"typescript": "~6.0.2",
|
|
"vite": "^8.1.1",
|
|
"vitest": "^4.1.10",
|
|
"vue-tsc": "^3.3.5"
|
|
}
|
|
}
|