joplock/tests
igor 9fe3409b1c
Some checks are pending
Build and push Joplock image / build-and-push (push) Waiting to run
feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered
Squash-merge of the `tinymce` branch: replaces the previous editor with a
dual-mode setup backed by the hidden #note-body textarea.

- Rendered mode = TinyMCE 8 (persistent singleton over #tinymce-slot),
  markdown round-trip via Turndown (tinymceToMarkdown).
- Markdown mode = CodeMirror 6 mounted in #cm-host (initCM/getCM/
  cmSyncToTA/cmSetVal/mountMarkdownEditor); codemirror.min.js loaded
  before app.js. Full-screen CM6 code modal + language picker.
- Code highlighting: hljs in preview/markdown, Prism (codesample) in
  rendered mode.

Text expander + AI prose completion wired for both modes:
- Text triggers expand in CM6 and in TinyMCE.
- AI-action triggers and Ctrl/Cmd-Space run prose completion; in rendered
  mode the completion is offered in the same accept/dismiss popup as
  markdown mode (Enter/Tab insert, Esc discard), positioned at the iframe
  caret, inserted as DOM text nodes and synced to #note-body.

Uploads: upload modal + direct drag/paste into TinyMCE and CM6, admin
maxUploadMb limit with fast 413 pre-check, dropped images get a trailing
blank line, upload-reload sync.

Also included: per-user spellcheck toggle, runtime-toggleable debug
logging, settings-page Esc dismiss, separate render/markdown font sizes,
persisted editor mode, blank-line/image-spacing fixes across mode
switches.

Tests: cm6MarkdownMode, expanderRuntime, appRuntime, markdownToolbarClicks
unit suites (558 total, all passing) + playwright specs (desktop,
ai-rendered live provider E2E, upload-reload, resource-lifecycle).
2026-07-06 17:00:57 +12:00
..
adminService.test.js retry admin bootstrap until Joplin Server DB is ready on fresh install 2026-05-20 13:20:13 +12:00
appRuntime.test.js feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered 2026-07-06 17:00:57 +12:00
backupService.test.js add backup delete action and explicit compression modes 2026-05-20 23:13:18 +12:00
cm6MarkdownMode.test.js feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered 2026-07-06 17:00:57 +12:00
cookies.test.js fix mobile resume startup and editor targeting 2026-04-25 20:51:37 +12:00
createServer.test.js feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered 2026-07-06 17:00:57 +12:00
env.test.js Add recovery backups and fix theme/title edge cases 2026-05-18 19:34:06 +12:00
expanderRuntime.test.js feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered 2026-07-06 17:00:57 +12:00
historyService.test.js fix mobile resume startup and editor targeting 2026-04-25 20:51:37 +12:00
itemService.test.js Add vault/notebook encryption: client-side AES-256-GCM E2EE with SVG lock icons, mobile vault support, startup resume gate, and re-entry guard 2026-04-28 22:25:46 +12:00
itemWriteService.test.js fix mobile resume startup and editor targeting 2026-04-25 20:51:37 +12:00
markdownToolbarClicks.test.js feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered 2026-07-06 17:00:57 +12:00
mfaService.test.js Refactor route rendering and harden editor session handling 2026-04-27 00:24:23 +12:00
previewRoundTrip.test.js feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered 2026-07-06 17:00:57 +12:00
proxyVaultGuard.test.js enforce vault note encryption at Joplin Server proxy layer 2026-05-21 16:09:09 +12:00
recoveryService.test.js Add recovery backups and fix theme/title edge cases 2026-05-18 19:34:06 +12:00
sessionService.test.js Fix session timeout by removing hardcoded 12h TTL and making login cookies session-scoped 2026-06-17 13:09:27 +12:00
settingsService.test.js feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered 2026-07-06 17:00:57 +12:00
templates.test.js feat(editor): dual-mode editor — CodeMirror 6 markdown + TinyMCE 8 rendered 2026-07-06 17:00:57 +12:00
vaultService.test.js Add vault/notebook encryption: client-side AES-256-GCM E2EE with SVG lock icons, mobile vault support, startup resume gate, and re-entry guard 2026-04-28 22:25:46 +12:00