feat: v0.2.1 — reference links, context menu, RTL, ja/ko, regex search, hooks, copy API
## Added - Reference link/image resolution: [text][ref] + ![alt][ref] with [ref]: url definitions - Right-click context menu: undo/redo/cut/copy/paste/selectAll + custom items - RTL CSS layout support for Arabic, Hebrew, Persian etc. - Japanese (ja) and Korean (ko) locales with 60+ keys each - Divider position localStorage persistence - Regex search toggle in search/replace panel - Export HTML with embedded CSS styles - beforeChange / afterChange lifecycle hooks (instance + global) - copyAsMarkdown() / copyAsHTML() clipboard APIs - CHANGELOG.md, CONTRIBUTING.md, CI workflow (.github/workflows/ci.yml) - 2 new test suites: index.test.ts, styles.test.ts (684 total tests, +74) ## Changed - autoSave plugin: closure-based state per instance instead of this context - Plugin install() now receives options as second argument - RTL locale detection: now uses language prefix (ar-SA → RTL) - Rollup dev mode: only builds UMD format - prepublishOnly now includes typecheck + test - Version bumped to 0.2.1 ## Fixed - [text][ref] now correctly renders as link (was raw text) - ![alt][ref] no longer produces empty src - autoSave plugin state isolation across multiple editor instances - Footnote definitions no longer consumed by refDef handler
This commit is contained in:
+19
-1
@@ -113,6 +113,7 @@ const generateCSS = (): string => {
|
||||
.me-context-menu-item:hover{background:var(--md-code-bg);color:var(--md-accent)}
|
||||
.me-context-menu-sep{height:1px;background:var(--md-border);margin:4px 0}
|
||||
.me-context-menu-shortcut{color:var(--md-muted);font-size:11px;margin-left:24px}
|
||||
.me-context-menu-item.me-disabled{opacity:.4;cursor:not-allowed;pointer-events:none}
|
||||
.me-outline{position:absolute;top:0;right:0;width:220px;height:100%;overflow-y:auto;background:var(--md-preview-bg);border-left:1px solid var(--md-border);padding:12px 14px;font-size:13px;z-index:15}
|
||||
.me-outline-title{font-weight:650;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--md-border);color:var(--md-text)}
|
||||
.me-outline ul{list-style:none;padding:0;margin:0}
|
||||
@@ -131,7 +132,24 @@ const generateCSS = (): string => {
|
||||
.me-body.me-mode-split .me-editor-pane{display:none}
|
||||
.me-body.me-mode-split .me-preview-pane{flex:1 1 100%!important}
|
||||
.me-preview{padding:0!important;font-size:11pt}
|
||||
.me-wrapper.me-fullscreen{position:static!important;width:auto!important;height:auto!important}}`;
|
||||
.me-wrapper.me-fullscreen{position:static!important;width:auto!important;height:auto!important}}
|
||||
[dir=rtl] .me-gutter{border-right:none;border-left:1px solid var(--md-border);text-align:left}
|
||||
[dir=rtl] .me-gutter-line{padding-right:0;padding-left:4px}
|
||||
[dir=rtl] .me-toolbar-group{margin-left:0;margin-right:auto;padding-left:0;padding-right:6px;border-left:none;border-right:1px solid var(--md-border)}
|
||||
[dir=rtl] .me-outline{right:auto;left:0;border-left:none;border-right:1px solid var(--md-border)}
|
||||
[dir=rtl] .me-outline-l2 a{padding-left:0;padding-right:12px}
|
||||
[dir=rtl] .me-outline-l3 a{padding-left:0;padding-right:20px}
|
||||
[dir=rtl] .me-outline-l4 a{padding-left:0;padding-right:28px}
|
||||
[dir=rtl] .me-preview blockquote{border-left:none;border-right:3px solid var(--md-accent);border-radius:6px 0 0 6px}
|
||||
[dir=rtl] .me-preview ul,[dir=rtl] .me-preview ol{padding-left:0;padding-right:1.6em}
|
||||
[dir=rtl] .me-preview li.me-task-item{margin-left:0;margin-right:-1.4em}
|
||||
[dir=rtl] .me-preview dd{margin-left:0;margin-right:1.6em}
|
||||
[dir=rtl] .me-preview .me-footnotes ol{padding-left:0;padding-right:1.2em}
|
||||
[dir=rtl] .me-preview .me-footnote-backref{margin-right:0;margin-left:.4em}
|
||||
[dir=rtl] .me-search{right:auto;left:12px}
|
||||
[dir=rtl] .me-toast{right:auto;left:16px}
|
||||
[dir=rtl] .me-context-menu-shortcut{margin-left:0;margin-right:24px}
|
||||
[dir=rtl] .me-statusbar{justify-content:flex-start}`;
|
||||
};
|
||||
|
||||
export const injectStyles = (): void => {
|
||||
|
||||
Reference in New Issue
Block a user