mossmd 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +87 -0
- package/LICENSE +21 -0
- package/README.md +336 -0
- package/dist/collab/index.d.ts +14 -0
- package/dist/collab/index.d.ts.map +1 -0
- package/dist/collab/index.js +6 -0
- package/dist/collab/index.js.map +1 -0
- package/dist/core/code-languages.d.ts +3 -0
- package/dist/core/code-languages.d.ts.map +1 -0
- package/dist/core/code-languages.js +130 -0
- package/dist/core/code-languages.js.map +1 -0
- package/dist/core/decoration-utils.d.ts +4 -0
- package/dist/core/decoration-utils.d.ts.map +1 -0
- package/dist/core/decoration-utils.js +25 -0
- package/dist/core/decoration-utils.js.map +1 -0
- package/dist/core/edit-helpers.d.ts +13 -0
- package/dist/core/edit-helpers.d.ts.map +1 -0
- package/dist/core/edit-helpers.js +318 -0
- package/dist/core/edit-helpers.js.map +1 -0
- package/dist/core/icons.d.ts +16 -0
- package/dist/core/icons.d.ts.map +1 -0
- package/dist/core/icons.js +86 -0
- package/dist/core/icons.js.map +1 -0
- package/dist/core/inline-preview.d.ts +32 -0
- package/dist/core/inline-preview.d.ts.map +1 -0
- package/dist/core/inline-preview.js +925 -0
- package/dist/core/inline-preview.js.map +1 -0
- package/dist/core/list-editing.d.ts +10 -0
- package/dist/core/list-editing.d.ts.map +1 -0
- package/dist/core/list-editing.js +244 -0
- package/dist/core/list-editing.js.map +1 -0
- package/dist/core/list-model.d.ts +40 -0
- package/dist/core/list-model.d.ts.map +1 -0
- package/dist/core/list-model.js +114 -0
- package/dist/core/list-model.js.map +1 -0
- package/dist/core/list-navigation.d.ts +3 -0
- package/dist/core/list-navigation.d.ts.map +1 -0
- package/dist/core/list-navigation.js +234 -0
- package/dist/core/list-navigation.js.map +1 -0
- package/dist/core/markdown-context.d.ts +3 -0
- package/dist/core/markdown-context.d.ts.map +1 -0
- package/dist/core/markdown-context.js +10 -0
- package/dist/core/markdown-context.js.map +1 -0
- package/dist/core/preview-activity.d.ts +18 -0
- package/dist/core/preview-activity.d.ts.map +1 -0
- package/dist/core/preview-activity.js +199 -0
- package/dist/core/preview-activity.js.map +1 -0
- package/dist/core/preview-widgets.d.ts +65 -0
- package/dist/core/preview-widgets.d.ts.map +1 -0
- package/dist/core/preview-widgets.js +359 -0
- package/dist/core/preview-widgets.js.map +1 -0
- package/dist/core/read-only.d.ts +26 -0
- package/dist/core/read-only.d.ts.map +1 -0
- package/dist/core/read-only.js +49 -0
- package/dist/core/read-only.js.map +1 -0
- package/dist/core/tree-progress.d.ts +29 -0
- package/dist/core/tree-progress.d.ts.map +1 -0
- package/dist/core/tree-progress.js +143 -0
- package/dist/core/tree-progress.js.map +1 -0
- package/dist/editor.d.ts +219 -0
- package/dist/editor.d.ts.map +1 -0
- package/dist/editor.js +551 -0
- package/dist/editor.js.map +1 -0
- package/dist/features/callout/index.d.ts +9 -0
- package/dist/features/callout/index.d.ts.map +1 -0
- package/dist/features/callout/index.js +223 -0
- package/dist/features/callout/index.js.map +1 -0
- package/dist/features/file-blocks/index.d.ts +12 -0
- package/dist/features/file-blocks/index.d.ts.map +1 -0
- package/dist/features/file-blocks/index.js +397 -0
- package/dist/features/file-blocks/index.js.map +1 -0
- package/dist/features/image/index.d.ts +28 -0
- package/dist/features/image/index.d.ts.map +1 -0
- package/dist/features/image/index.js +699 -0
- package/dist/features/image/index.js.map +1 -0
- package/dist/features/index.d.ts +17 -0
- package/dist/features/index.d.ts.map +1 -0
- package/dist/features/index.js +9 -0
- package/dist/features/index.js.map +1 -0
- package/dist/features/search/index.d.ts +4 -0
- package/dist/features/search/index.d.ts.map +1 -0
- package/dist/features/search/index.js +131 -0
- package/dist/features/search/index.js.map +1 -0
- package/dist/features/slash-commands/index.d.ts +52 -0
- package/dist/features/slash-commands/index.d.ts.map +1 -0
- package/dist/features/slash-commands/index.js +422 -0
- package/dist/features/slash-commands/index.js.map +1 -0
- package/dist/features/table/index.d.ts +44 -0
- package/dist/features/table/index.d.ts.map +1 -0
- package/dist/features/table/index.js +1262 -0
- package/dist/features/table/index.js.map +1 -0
- package/dist/features/upload/index.d.ts +80 -0
- package/dist/features/upload/index.d.ts.map +1 -0
- package/dist/features/upload/index.js +790 -0
- package/dist/features/upload/index.js.map +1 -0
- package/dist/features/wiki-links/index.d.ts +27 -0
- package/dist/features/wiki-links/index.d.ts.map +1 -0
- package/dist/features/wiki-links/index.js +577 -0
- package/dist/features/wiki-links/index.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/styles/content.css +247 -0
- package/dist/styles/inline-preview.css +2116 -0
- package/dist/styles/tokens.css +234 -0
- package/dist/syntax/highlight.d.ts +10 -0
- package/dist/syntax/highlight.d.ts.map +1 -0
- package/dist/syntax/highlight.js +75 -0
- package/dist/syntax/highlight.js.map +1 -0
- package/dist/syntax/index.d.ts +16 -0
- package/dist/syntax/index.d.ts.map +1 -0
- package/dist/syntax/index.js +29 -0
- package/dist/syntax/index.js.map +1 -0
- package/dist/theme/index.d.ts +6 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +204 -0
- package/dist/theme/index.js.map +1 -0
- package/package.json +237 -0
package/dist/editor.d.ts
ADDED
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { type MutableRefObject } from 'react';
|
|
2
|
+
import { type Extension } from '@codemirror/state';
|
|
3
|
+
import { type LanguageDescription } from '@codemirror/language';
|
|
4
|
+
import { type MossImageIcons, type MossImagesConfig as ImagesConfig } from './features/image';
|
|
5
|
+
import { type MossFileBlockIcons, type MossFileBlocksConfig } from './features/file-blocks';
|
|
6
|
+
import { type WikiLinksConfig } from './features/wiki-links';
|
|
7
|
+
import { type MossSlashCommandsConfig } from './features/slash-commands';
|
|
8
|
+
import { type CollabAdapter } from './collab';
|
|
9
|
+
import { type MossCustomSyntax } from './syntax';
|
|
10
|
+
import { type MossSearchPanelPosition } from './features/search';
|
|
11
|
+
import type { InlinePreviewConfig } from './core/inline-preview';
|
|
12
|
+
import type { MossTablesConfig as TablesConfig } from './features/table';
|
|
13
|
+
import { type MossFileUploadConfig, type MossUploadIcons } from './features/upload';
|
|
14
|
+
export interface MossMDHandle {
|
|
15
|
+
focus: () => void;
|
|
16
|
+
undo: () => void;
|
|
17
|
+
redo: () => void;
|
|
18
|
+
openSearch: (query?: string) => void;
|
|
19
|
+
closeSearch: () => void;
|
|
20
|
+
/**
|
|
21
|
+
* Scroll the first match of `query` into view with a brief fade-out
|
|
22
|
+
* highlight — no search panel, no cursor movement. Designed for
|
|
23
|
+
* navigation cases like "open this atom from a search result and
|
|
24
|
+
* take me to the relevant paragraph". Matches the behavior of
|
|
25
|
+
* `initialRevealText` but as an imperative action after mount.
|
|
26
|
+
*/
|
|
27
|
+
revealText: (query: string) => void;
|
|
28
|
+
isSearchOpen: () => boolean;
|
|
29
|
+
getMarkdown: () => string;
|
|
30
|
+
getContentDOM: () => HTMLElement | null;
|
|
31
|
+
/**
|
|
32
|
+
* Toggle read-only ("reading") mode imperatively. Equivalent to
|
|
33
|
+
* flipping the `readOnly` prop, but usable from outside React's
|
|
34
|
+
* render cycle (e.g. a toolbar button wired through the handle). The
|
|
35
|
+
* change is applied via a CM6 `Compartment` reconfigure — no remount,
|
|
36
|
+
* so scroll position and search state are preserved.
|
|
37
|
+
*/
|
|
38
|
+
setReadOnly: (readOnly: boolean) => void;
|
|
39
|
+
setCollabAdapter: (adapter: CollabAdapter) => Promise<void>;
|
|
40
|
+
}
|
|
41
|
+
export interface MossMDIconsConfig {
|
|
42
|
+
/** Icons rendered by image blocks and their inline controls. */
|
|
43
|
+
image?: Partial<MossImageIcons>;
|
|
44
|
+
/** Icons rendered by standalone file link blocks. */
|
|
45
|
+
file?: Partial<MossFileBlockIcons>;
|
|
46
|
+
/** Icons rendered by transient upload progress blocks. */
|
|
47
|
+
upload?: Partial<MossUploadIcons>;
|
|
48
|
+
}
|
|
49
|
+
export interface MossMDProps {
|
|
50
|
+
/**
|
|
51
|
+
* Opaque identity for the document. Swapping `documentId` tears down
|
|
52
|
+
* and re-mounts the view so cursor / undo state from a previous
|
|
53
|
+
* document doesn't leak. If omitted, the initial `markdownSource`
|
|
54
|
+
* value is used as the identity — which means mounting a different
|
|
55
|
+
* string produces a fresh editor.
|
|
56
|
+
*/
|
|
57
|
+
documentId?: string;
|
|
58
|
+
/**
|
|
59
|
+
* The markdown document to open the editor on. Used only at mount
|
|
60
|
+
* time — the editor is the source of truth for the doc after that.
|
|
61
|
+
* To swap documents, change `documentId`.
|
|
62
|
+
*/
|
|
63
|
+
markdownSource: string;
|
|
64
|
+
/**
|
|
65
|
+
* If set, opens the search panel on mount with this query pre-filled.
|
|
66
|
+
* Useful for landing the reader on a search hit — the user sees their
|
|
67
|
+
* query already active without re-typing.
|
|
68
|
+
*/
|
|
69
|
+
initialSearchText?: string | null;
|
|
70
|
+
/**
|
|
71
|
+
* Where the find-in-document controls appear inside the CodeMirror
|
|
72
|
+
* editor chrome. Defaults to `top`.
|
|
73
|
+
*/
|
|
74
|
+
searchPanelPosition?: MossSearchPanelPosition;
|
|
75
|
+
/**
|
|
76
|
+
* If set, reveals the first match of this query in the document with
|
|
77
|
+
* a brief scroll-into-view and fade-out highlight — no search panel,
|
|
78
|
+
* no cursor movement. Less intrusive alternative to
|
|
79
|
+
* `initialSearchText` for "open an atom from a search result and take
|
|
80
|
+
* me to the relevant paragraph" flows.
|
|
81
|
+
*
|
|
82
|
+
* The matcher falls back progressively — exact string, whitespace-
|
|
83
|
+
* collapsed variant, individual lines, then truncated prefixes (140
|
|
84
|
+
* and 80 chars) — so hits from LLM-generated snippets or chunked
|
|
85
|
+
* search excerpts still resolve even when they don't match the
|
|
86
|
+
* source byte-for-byte.
|
|
87
|
+
*/
|
|
88
|
+
initialRevealText?: string | null;
|
|
89
|
+
/**
|
|
90
|
+
* Skip any implicit focus behavior on mount. Defaults to `false`;
|
|
91
|
+
* the CM6 view doesn't auto-focus today, but consumers wiring this
|
|
92
|
+
* into a larger reader often want an explicit escape hatch in case
|
|
93
|
+
* a future extension or keymap does.
|
|
94
|
+
*/
|
|
95
|
+
blurEditorOnMount?: boolean;
|
|
96
|
+
/**
|
|
97
|
+
* Render the editor in read-only ("reading") mode: the whole document
|
|
98
|
+
* stays rendered (no source ever reveals under a caret), typing /
|
|
99
|
+
* paste / table editing are disabled, and clicking a link opens it
|
|
100
|
+
* instead of placing a caret. Checkboxes remain toggleable, and
|
|
101
|
+
* find-in-document still works.
|
|
102
|
+
*
|
|
103
|
+
* Unlike `extensions`, this is NOT captured at mount — it's backed by
|
|
104
|
+
* a CM6 `Compartment`, so toggling it reconfigures the live view in
|
|
105
|
+
* place (scroll position preserved) rather than remounting. Defaults
|
|
106
|
+
* to `false`.
|
|
107
|
+
*/
|
|
108
|
+
readOnly?: boolean;
|
|
109
|
+
/**
|
|
110
|
+
* Called on every doc change with the current markdown. Fires for
|
|
111
|
+
* both user edits and any dispatches the editor produces internally
|
|
112
|
+
* (e.g. checkbox toggles, tight-list continuations).
|
|
113
|
+
*/
|
|
114
|
+
onMarkdownChange?: (markdown: string) => void;
|
|
115
|
+
/**
|
|
116
|
+
* Called when an IME composition session starts or ends. `true` means
|
|
117
|
+
* composition is active; `false` is sent for both normal completion and
|
|
118
|
+
* cancellation. The callback observes the input lifecycle and does not
|
|
119
|
+
* change the editor's composition handling.
|
|
120
|
+
*/
|
|
121
|
+
onCompositionChange?: (composing: boolean) => void;
|
|
122
|
+
/**
|
|
123
|
+
* Called when the user plain-clicks a rendered link in the
|
|
124
|
+
* inline-preview output. Receives the link's URL as written in the
|
|
125
|
+
* source markdown. Defaults to `window.open(url, '_blank',
|
|
126
|
+
* 'noopener,noreferrer')`. Provide your own handler to route opens
|
|
127
|
+
* through a platform shell (Tauri, Capacitor, Electron).
|
|
128
|
+
*/
|
|
129
|
+
onLinkClick?: (url: string) => void;
|
|
130
|
+
/**
|
|
131
|
+
* A mutable ref the editor attaches its imperative handle to. Use
|
|
132
|
+
* this for side-effectful ops that don't fit a prop/callback model
|
|
133
|
+
* — keyboard-driven undo/redo, opening the search panel on Ctrl+F
|
|
134
|
+
* from outside the editor, pulling the current markdown on demand.
|
|
135
|
+
*/
|
|
136
|
+
editorHandleRef?: MutableRefObject<MossMDHandle | null>;
|
|
137
|
+
/**
|
|
138
|
+
* Grammars to load for fenced code blocks whose info string matches.
|
|
139
|
+
* `@codemirror/lang-markdown` lazy-imports each grammar on first use
|
|
140
|
+
* (no cost until a matching fence appears), so passing a large list
|
|
141
|
+
* is fine. Defaults to `[]` — fences render as plain monospace.
|
|
142
|
+
*
|
|
143
|
+
* For a curated ~20-language default, install the peers and import
|
|
144
|
+
* the registry:
|
|
145
|
+
*
|
|
146
|
+
* ```ts
|
|
147
|
+
* import { MOSS_CODE_LANGUAGES } from 'mossmd/code-languages';
|
|
148
|
+
* <MossMD codeLanguages={MOSS_CODE_LANGUAGES} ... />
|
|
149
|
+
* ```
|
|
150
|
+
*
|
|
151
|
+
* Or build your own list from the `LanguageDescription` factory
|
|
152
|
+
* exported by `@codemirror/language`.
|
|
153
|
+
*/
|
|
154
|
+
codeLanguages?: readonly LanguageDescription[];
|
|
155
|
+
/**
|
|
156
|
+
* Extra CodeMirror 6 extensions appended to the built-in set.
|
|
157
|
+
* This is the hook for layering in additional plugins — autocomplete
|
|
158
|
+
* sources, custom decorations (wiki-links, block refs, footnotes),
|
|
159
|
+
* domain-specific keymaps, collaboration (yjs), vim mode, etc.
|
|
160
|
+
*
|
|
161
|
+
* Order matters for CM6 precedence. Use `Prec.high/default/low` from
|
|
162
|
+
* `@codemirror/state` to explicitly position an extension relative
|
|
163
|
+
* to the built-ins when it matters (e.g., custom keybindings that
|
|
164
|
+
* need to beat the default keymap).
|
|
165
|
+
*
|
|
166
|
+
* Extensions are captured once at mount time (keyed on
|
|
167
|
+
* `documentId ?? markdownSource`). Changing the array reference
|
|
168
|
+
* without changing the document identity does NOT re-apply — pass
|
|
169
|
+
* a stable reference (via `useMemo` or a module-level constant)
|
|
170
|
+
* unless you intend a remount.
|
|
171
|
+
*
|
|
172
|
+
* @example
|
|
173
|
+
* ```ts
|
|
174
|
+
* import { autocompletion, CompletionContext } from '@codemirror/autocomplete';
|
|
175
|
+
*
|
|
176
|
+
* const wikiLinkCompletion = autocompletion({
|
|
177
|
+
* override: [(ctx: CompletionContext) => {
|
|
178
|
+
* const match = ctx.matchBefore(/\[\[\w*$/);
|
|
179
|
+
* if (!match) return null;
|
|
180
|
+
* return {
|
|
181
|
+
* from: match.from + 2,
|
|
182
|
+
* options: atomStore.list().map(a => ({ label: a.title })),
|
|
183
|
+
* };
|
|
184
|
+
* }],
|
|
185
|
+
* });
|
|
186
|
+
*
|
|
187
|
+
* <MossMD extensions={[wikiLinkCompletion]} ... />
|
|
188
|
+
* ```
|
|
189
|
+
*/
|
|
190
|
+
extensions?: readonly Extension[];
|
|
191
|
+
customSyntax?: readonly MossCustomSyntax[];
|
|
192
|
+
inlinePreviewConfig?: InlinePreviewConfig;
|
|
193
|
+
/**
|
|
194
|
+
* Unified icon overrides for the built-in React editor surface.
|
|
195
|
+
* Feature-level icon configs still work and take precedence.
|
|
196
|
+
*/
|
|
197
|
+
icons?: MossMDIconsConfig;
|
|
198
|
+
/** Configure the floating edit control rendered on image blocks. */
|
|
199
|
+
imagesConfig?: ImagesConfig;
|
|
200
|
+
/** Configure rendered file link blocks. */
|
|
201
|
+
fileBlocksConfig?: MossFileBlocksConfig;
|
|
202
|
+
tablesConfig?: TablesConfig;
|
|
203
|
+
wikiLinksConfig?: WikiLinksConfig;
|
|
204
|
+
slashCommandsConfig?: MossSlashCommandsConfig;
|
|
205
|
+
fileUpload?: MossFileUploadConfig;
|
|
206
|
+
collabAdapter?: CollabAdapter;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* React wrapper around a CodeMirror 6 editor configured for markdown
|
|
210
|
+
* editing with Obsidian-style inline live preview.
|
|
211
|
+
*
|
|
212
|
+
* Remember to import the accompanying CSS:
|
|
213
|
+
*
|
|
214
|
+
* ```ts
|
|
215
|
+
* import 'mossmd/editor.css';
|
|
216
|
+
* ```
|
|
217
|
+
*/
|
|
218
|
+
export declare function MossMD({ markdownSource, documentId, initialSearchText, searchPanelPosition, initialRevealText, blurEditorOnMount, readOnly, onMarkdownChange, onCompositionChange, onLinkClick, editorHandleRef, codeLanguages, extensions, customSyntax, inlinePreviewConfig, icons, imagesConfig, fileBlocksConfig, tablesConfig, wikiLinksConfig, slashCommandsConfig, fileUpload, collabAdapter, }: MossMDProps): import("react").JSX.Element;
|
|
219
|
+
//# sourceMappingURL=editor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../src/editor.tsx"],"names":[],"mappings":"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"}
|