@mdzip/editor-react 1.5.0 → 2.1.0

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/README.md CHANGED
@@ -1,205 +1,211 @@
1
- [![MDZip logo][mdzip-logo]][mdzip-url]
2
-
3
- [mdzip-logo]: https://raw.githubusercontent.com/mdzip-project/mdzip-editor/main/resources/mdzip-mark.svg
4
- [mdzip-url]: https://mdzip.org
5
-
6
- # @mdzip/editor-react
7
-
8
- [![npm](https://img.shields.io/npm/v/@mdzip/editor-react?logo=npm)](https://www.npmjs.com/package/@mdzip/editor-react)
9
- [![license](https://img.shields.io/npm/l/@mdzip/editor-react)](https://github.com/mdzip-project/mdzip-editor/blob/main/LICENSE)
10
-
11
- React component wrapper for the MDZip workspace editor.
12
-
13
- `@mdzip/editor-react` provides a `MdzipWorkspace` component that embeds the full MDZip workspace UI — document preview, editor, package navigator, and asset manager — as a native React component.
14
-
15
- ## Install
16
-
17
- ```sh
18
- npm install @mdzip/editor-react
19
- ```
20
-
21
- Peer dependencies: `react` and `react-dom` >=18.
22
-
23
- ## Basic Usage
24
-
25
- ```tsx
26
- import { MdzipWorkspace } from '@mdzip/editor-react';
27
-
28
- export function Viewer({ bytes }: { bytes: Uint8Array }) {
29
- return (
30
- <div style={{ height: 600 }}>
31
- <MdzipWorkspace
32
- bytes={bytes}
33
- fileName="document.mdz"
34
- mode="read-only"
35
- controls="viewer"
36
- onFailed={console.error}
37
- />
38
- </div>
39
- );
40
- }
41
- ```
42
-
43
- The parent element must have an explicit height. The component expands to fill it.
44
-
45
- ## Archive Diff
46
-
47
- ```tsx
48
- import { MdzipDiff } from '@mdzip/editor-react/diff-view';
49
-
50
- <div style={{ height: 600 }}>
51
- <MdzipDiff
52
- before={{ bytes: baseBytes, label: 'Git base' }}
53
- after={{ bytes: workingBytes, label: 'Working tree' }}
54
- initialPath="index.md"
55
- toolbarActions={[{ id: 'refresh', label: 'Refresh', icon: 'refresh', run: refresh }]}
56
- />
57
- </div>
58
- ```
59
-
60
- `MdzipDiff` is read-only and updates the existing comparison view when its
61
- props change. A ref exposes `openPath`, `openPreviousChange`, `openNextChange`,
62
- `setShowUnchanged`, `setNavigationVisible`, and `setToolbarActions`. The
63
- built-in toolbar adds Previous/Next change buttons and a Show-unchanged
64
- toggle; pass a `controls` prop (`{ navigation?, changeTraversal?,
65
- showUnchanged? }`) to opt any of them out.
66
-
67
- ## Editor Mode
68
-
69
- ```tsx
70
- <MdzipWorkspace
71
- bytes={bytes}
72
- fileName="document.mdz"
73
- mode="editable"
74
- controls="standalone-editor"
75
- onSaved={({ bytes }) => persist(bytes)}
76
- onChanged={({ bytes }) => setDirty(true)}
77
- />
78
- ```
79
-
80
- ## Props
81
-
82
- | Prop | Type | Default | Description |
83
- |------|------|---------|-------------|
84
- | `bytes` | `Uint8Array \| null` | — | Raw archive bytes to open |
85
- | `workspace` | `MdzWorkspace \| null` | — | Pre-built workspace object |
86
- | `fileName` | `string` | `'document.mdz'` | Filename used for format detection and Save dialogs |
87
- | `mode` | `MdzipWorkspaceMode` | `'read-only'` | `'read-only'` or `'editable'` |
88
- | `sourceFormat` | `MdzipSourceFormat` | — | Override format detection: `'mdz'` or `'markdown'` |
89
- | `controls` | `MdzipControlPreset \| MdzipControlPolicy` | `'viewer'` | `'preview'`, `'viewer'`, `'standalone-editor'`, `'hosted-editor'`, or a policy object |
90
- | `toolbarDensity` | `'comfortable' \| 'compact' \| 'dense'` | `'comfortable'` | Semantic sizing preset for built-in toolbar controls |
91
- | `contentDensity` | `'comfortable' \| 'compact'` | `'comfortable'` | Semantic padding preset for editor and preview content |
92
- | `imageHydrationAnimation` | `'auto' \| 'initial' \| 'off'` | `'auto'` | Control preview image reveal animation: every render, first render per document path, or never |
93
- | `initialLayout` | `MdzipWorkspaceLayout` | — | Starting layout: `'preview'`, `'editor'`, `'split'` |
94
- | `initialColorScheme` | `MdzipColorScheme` | — | `'light'` or `'dark'` |
95
- | `navigationMode` | `MdzipNavigationMode` | — | Package navigation mode |
96
- | `navigationButtonActive` | `boolean` | — | Whether the navigation button is shown |
97
- | `markdownRenderer` | `MdzipMarkdownRenderer` | — | Custom markdown renderer (keep the reference stable, e.g. `useMemo`) |
98
- | `markdownExtensions` | `readonly MdzipMarkdownRenderExtension[]` | `[]` | Markdown pipeline extensions, diffed by `name` — inline arrays are safe |
99
- | `entryRenderers` | `readonly MdzipEntryRenderer[]` | `[]` | Entry renderers claiming the content area for matching entries, diffed by `id` — inline arrays are safe |
100
- | `renderEntry` | `(context) => ReactNode \| undefined` | — | Catch-all entry renderer: return a node to claim the selected entry, `undefined` to delegate |
101
- | `renderEntryPriority` | `number` | `0` | Matching priority of `renderEntry` relative to `entryRenderers` |
102
- | `frontMatter` | `MdzipFrontMatterOptions` | `{}` | Front matter panel config (`enabled`, `display`, `collapsible`, `label`) — always registered, diffed by deep equality; inline objects are safe |
103
- | `externalLinks` | `MdzipExternalLinkPolicy` | — | External-link policy, e.g. `{ target: '_blank' }` (adds `rel="noopener noreferrer"`); optional `rel` and `predicate(href)`. Re-applies without a re-render only when `target`, `rel` or `predicate` change; inline objects are safe |
104
-
105
- `controls`, density, `imageHydrationAnimation`, and rendering prop changes apply in
106
- place — they never recreate the workspace view. Line-number visibility changes
107
- preserve the current CodeMirror document and selection. See the `@mdzip/editor`
108
- Rendering Extensibility docs for the contracts and lifecycle rules.
109
-
110
- ### Native entry rendering
111
-
112
- ```tsx
113
- <MdzipWorkspace
114
- bytes={bytes}
115
- renderEntry={(context) =>
116
- context.path.toLowerCase() === 'manifest.json'
117
- ? <ManifestEditor
118
- manifest={context.manifest}
119
- editable={context.mode === 'editable'}
120
- onManifestChange={context.updateManifest}
121
- />
122
- : undefined}
123
- />
124
- ```
125
-
126
- The wrapper owns the React root: it mounts when the entry is claimed,
127
- re-renders on context updates and on every parent commit (entry content
128
- stays live with parent state — inline closures are safe and never
129
- re-mount), and unmounts on selection change.
130
-
131
- ## Callbacks
132
-
133
- | Prop | Signature | Description |
134
- |------|-----------|-------------|
135
- | `onChanged` | `(event: MdzipWorkspaceChange) => void` | Called when archive bytes change |
136
- | `onSaved` | `(event: MdzipWorkspaceSave) => void` | Called on Save |
137
- | `onSnapshotChanged` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called on any state change |
138
- | `onSelectionChanged` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called when the editor selection changes |
139
- | `onDirtyChanged` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called when the dirty flag changes |
140
- | `onValidationChanged` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called when validation state changes |
141
- | `onColorSchemeChanged` | `(colorScheme: MdzipColorScheme) => void` | Called when the color scheme changes |
142
- | `onPreviewRendered` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called when the preview HTML is mounted |
143
- | `onAssetsHydrated` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called once the mounted preview's images have loaded |
144
- | `onLinkActivated` | `(event: MdzipLinkActivatedEvent) => void` | Called for every preview link click before built-in handling; call `event.preventDefault()` to take over |
145
- | `onFailed` | `(error: unknown) => void` | Called on unrecoverable errors |
146
- | `onConversionRequested` | `(action: MdzipConversionAction) => boolean \| Promise<boolean>` | Host hook for the markdown→MDZ conversion flow (nav button, Insert Image, or image paste on a plain `.md`). Return/resolve `true` to take over and suppress the built-in conversion dialog |
147
- | `onPackRequested` | `(request: MdzipPackFilesRequest, context: MdzipPackFilesContext) => boolean \| Promise<boolean>` | Host hook for the folder→.mdz packing decision surfaced by the `packFilesAsWorkspace(files, options)` ref method — fires only when the file list contains more than one Markdown file. Same return contract as `onConversionRequested` |
148
-
149
- ## Image insertion
150
-
151
- Use `imageInsertMode="markdown"`, `"ask"`, or `"html"` for the built-in image
152
- markup flow. Pass `imageInsertHandler` for host-owned image UI; the handler can
153
- return Markdown or HTML sizing/alignment settings, return `null` to cancel, or
154
- return `undefined` to fall back to `imageInsertMode`.
155
-
156
- Pass `imageEditHandler` to let users edit an *existing* image by clicking it.
157
- Fully opt-in — with no handler, clicking an image does nothing and no edit
158
- affordance appears; there is no built-in fallback dialog.
159
-
160
- ## File management (nav pane)
161
-
162
- With `controls="standalone-editor"` or `"hosted-editor"` (or `fileActions: true` in a custom
163
- policy), the navigation pane offers a right-click context menu: new `.md` file, new folder,
164
- rename/move, duplicate, replace, download, copy markdown link, set entry point, set cover
165
- image, and delete. Files can also be dragged between folders, and OS files can be dropped
166
- onto the pane to add them as assets. Copy and Download remain available in read-only mode.
167
- The same operations are exposed imperatively: `removeFile`, `renameFile`, `setEntryPoint`,
168
- and `setCoverImage` on the handle. The handle also exposes `whenRendered()`, which resolves
169
- once the current preview (including its images) is mounted — useful for revealing or
170
- animating read-only preview content.
171
-
172
- ## Links and anchors
173
-
174
- `onLinkActivated` fires for every preview link click, before the view's own handling, with the
175
- parsed link (`kind`: `'anchor' | 'document' | 'relative' | 'external'`, plus `path`,
176
- `anchor`, `targetPath`, `sourcePath`, modifier keys). Call `event.preventDefault()` in the
177
- handler to route the link yourself; unprevented clicks keep the built-in behavior.
178
- The handle also exposes `scrollToAnchor(anchor)` (waits for the preview to mount, resolves whether it
179
- scrolled; safe straight after load) and `getAvailableAnchors()`. See the
180
- [`@mdzip/editor` README](https://www.npmjs.com/package/@mdzip/editor#links-and-anchors).
181
-
182
- ## Imperative API
183
-
184
- Use a `ref` to access the imperative handle:
185
-
186
- ```tsx
187
- import { useRef } from 'react';
188
- import { MdzipWorkspace, type MdzipWorkspaceHandle } from '@mdzip/editor-react';
189
-
190
- const ref = useRef<MdzipWorkspaceHandle>(null);
191
-
192
- // Flush pending edits and persist
193
- const snapshot = await ref.current?.flush();
194
- if (snapshot) {
195
- await save(snapshot.bytes);
196
- ref.current?.markPersisted();
197
- }
198
-
199
- // Execute editor commands
200
- await ref.current?.executeCommand('bold');
201
-
202
- return <MdzipWorkspace ref={ref} ... />;
203
- ```
204
-
205
- See the [`@mdzip/editor`](https://www.npmjs.com/package/@mdzip/editor) package for the full API reference, theming guide, and framework-agnostic usage.
1
+ [![MDZip logo][mdzip-logo]][mdzip-url]
2
+
3
+ [mdzip-logo]: https://raw.githubusercontent.com/mdzip-project/mdzip-editor/main/resources/mdzip-mark.svg
4
+ [mdzip-url]: https://mdzip.org
5
+
6
+ # @mdzip/editor-react
7
+
8
+ [![npm](https://img.shields.io/npm/v/@mdzip/editor-react?logo=npm)](https://www.npmjs.com/package/@mdzip/editor-react)
9
+ [![license](https://img.shields.io/npm/l/@mdzip/editor-react)](https://github.com/mdzip-project/mdzip-editor/blob/main/LICENSE)
10
+
11
+ React component wrapper for the MDZip workspace editor.
12
+
13
+ `@mdzip/editor-react` provides a `MdzipWorkspace` component that embeds the full MDZip workspace UI — document preview, editor, package navigator, and asset manager — as a native React component.
14
+
15
+ ## Install
16
+
17
+ ```sh
18
+ npm install @mdzip/editor-react
19
+ ```
20
+
21
+ Peer dependencies: `react` and `react-dom` >=18.
22
+
23
+ ## Basic Usage
24
+
25
+ ```tsx
26
+ import { MdzipWorkspace } from '@mdzip/editor-react';
27
+
28
+ export function Viewer({ bytes }: { bytes: Uint8Array }) {
29
+ return (
30
+ <div style={{ height: 600 }}>
31
+ <MdzipWorkspace
32
+ bytes={bytes}
33
+ fileName="document.mdz"
34
+ mode="read-only"
35
+ controls="viewer"
36
+ onFailed={console.error}
37
+ />
38
+ </div>
39
+ );
40
+ }
41
+ ```
42
+
43
+ The parent element must have an explicit height. The component expands to fill it.
44
+
45
+ ## Archive Diff
46
+
47
+ ```tsx
48
+ import { MdzipDiff } from '@mdzip/editor-react/diff-view';
49
+
50
+ <div style={{ height: 600 }}>
51
+ <MdzipDiff
52
+ before={{ bytes: baseBytes, label: 'Git base' }}
53
+ after={{ bytes: workingBytes, label: 'Working tree' }}
54
+ initialPath="index.md"
55
+ toolbarActions={[{ id: 'refresh', label: 'Refresh', icon: 'refresh', run: refresh }]}
56
+ />
57
+ </div>
58
+ ```
59
+
60
+ `MdzipDiff` is read-only and updates the existing comparison view when its
61
+ props change. A ref exposes `openPath`, `openPreviousChange`, `openNextChange`,
62
+ `setShowUnchanged`, `setNavigationVisible`, and `setToolbarActions`. The
63
+ built-in toolbar adds Previous/Next change buttons and a Show-unchanged
64
+ toggle; pass a `controls` prop (`{ navigation?, changeTraversal?,
65
+ showUnchanged? }`) to opt any of them out.
66
+
67
+ ## Editor Mode
68
+
69
+ ```tsx
70
+ <MdzipWorkspace
71
+ bytes={bytes}
72
+ fileName="document.mdz"
73
+ mode="editable"
74
+ controls="standalone-editor"
75
+ onSaved={({ bytes }) => persist(bytes)}
76
+ onChanged={({ bytes }) => setDirty(true)}
77
+ />
78
+ ```
79
+
80
+ ## Props
81
+
82
+ | Prop | Type | Default | Description |
83
+ |------|------|---------|-------------|
84
+ | `bytes` | `Uint8Array \| null` | — | Raw archive bytes to open |
85
+ | `workspace` | `MdzWorkspace \| null` | — | Pre-built workspace object |
86
+ | `fileName` | `string` | `'document.mdz'` | Filename used for format detection and Save dialogs |
87
+ | `mode` | `MdzipWorkspaceMode` | `'read-only'` | `'read-only'` or `'editable'` |
88
+ | `sourceFormat` | `MdzipSourceFormat` | — | Override format detection: `'mdz'` or `'markdown'` |
89
+ | `controls` | `MdzipControlPreset \| MdzipControlPolicy` | `'viewer'` | `'preview'`, `'viewer'`, `'standalone-editor'`, `'hosted-editor'`, or a policy object |
90
+ | `toolbarDensity` | `'comfortable' \| 'compact' \| 'dense'` | `'comfortable'` | Semantic sizing preset for built-in toolbar controls |
91
+ | `contentDensity` | `'comfortable' \| 'compact'` | `'comfortable'` | Semantic padding preset for editor and preview content |
92
+ | `imageHydrationAnimation` | `'auto' \| 'initial' \| 'off'` | `'auto'` | Control preview image reveal animation: every render, first render per document path, or never |
93
+ | `initialLayout` | `MdzipWorkspaceLayout` | — | Starting layout: `'preview'`, `'editor'`, `'split'` |
94
+ | `initialColorScheme` | `MdzipColorSchemePreference` | `'system'` | `'light'`, `'dark'` or `'system'` (follows the OS setting live) |
95
+ | `previewMaxWidth` | `MdzipPreviewMaxWidth` | `'default'` | Preview reading-column width: `'narrow'`, `'default'`, `'wide'`, `'full'` or a pixel number; the user can change it from the toolbar's page-width menu |
96
+ | `navigationMode` | `MdzipNavigationMode` | — | Package navigation mode |
97
+ | `navigationButtonActive` | `boolean` | — | Whether the navigation button is shown |
98
+ | `markdownRenderer` | `MdzipMarkdownRenderer` | — | Custom markdown renderer (keep the reference stable, e.g. `useMemo`) |
99
+ | `markdownExtensions` | `readonly MdzipMarkdownRenderExtension[]` | `[]` | Markdown pipeline extensions, diffed by `name` — inline arrays are safe |
100
+ | `entryRenderers` | `readonly MdzipEntryRenderer[]` | `[]` | Entry renderers claiming the content area for matching entries, diffed by `id` — inline arrays are safe |
101
+ | `renderEntry` | `(context) => ReactNode \| undefined` | — | Catch-all entry renderer: return a node to claim the selected entry, `undefined` to delegate |
102
+ | `renderEntryPriority` | `number` | `0` | Matching priority of `renderEntry` relative to `entryRenderers` |
103
+ | `frontMatter` | `MdzipFrontMatterOptions` | `{}` | Front matter panel config (`enabled`, `display`, `collapsible`, `label`) — always registered, diffed by deep equality; inline objects are safe |
104
+ | `externalLinks` | `MdzipExternalLinkPolicy` | — | External-link policy, e.g. `{ target: '_blank' }` (adds `rel="noopener noreferrer"`); optional `rel` and `predicate(href)`. Re-applies without a re-render only when `target`, `rel` or `predicate` change; inline objects are safe |
105
+
106
+ `controls`, density, `imageHydrationAnimation`, and rendering prop changes apply in
107
+ place — they never recreate the workspace view. Line-number visibility changes
108
+ preserve the current CodeMirror document and selection. See the `@mdzip/editor`
109
+ Rendering Extensibility docs for the contracts and lifecycle rules.
110
+
111
+ ### Native entry rendering
112
+
113
+ ```tsx
114
+ <MdzipWorkspace
115
+ bytes={bytes}
116
+ renderEntry={(context) =>
117
+ context.path.toLowerCase() === 'manifest.json'
118
+ ? <ManifestEditor
119
+ manifest={context.manifest}
120
+ editable={context.mode === 'editable'}
121
+ onManifestChange={context.updateManifest}
122
+ />
123
+ : undefined}
124
+ />
125
+ ```
126
+
127
+ The wrapper owns the React root: it mounts when the entry is claimed,
128
+ re-renders on context updates and on every parent commit (entry content
129
+ stays live with parent state — inline closures are safe and never
130
+ re-mount), and unmounts on selection change.
131
+
132
+ ## Callbacks
133
+
134
+ | Prop | Signature | Description |
135
+ |------|-----------|-------------|
136
+ | `onChanged` | `(event: MdzipWorkspaceChange) => void` | Called when archive bytes change |
137
+ | `onSaved` | `(event: MdzipWorkspaceSave) => void` | Called on Save |
138
+ | `onSnapshotChanged` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called on any state change |
139
+ | `onSelectionChanged` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called when the editor selection changes |
140
+ | `onDirtyChanged` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called when the dirty flag changes |
141
+ | `onValidationChanged` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called when validation state changes |
142
+ | `onColorSchemeChanged` | `(colorScheme: MdzipColorScheme) => void` | Called when the color scheme changes |
143
+ | `onColorSchemePreferenceChanged` | `(preference: MdzipColorSchemePreference) => void` | Called when the user picks Light, Dark or System in the toolbar menu |
144
+ | `onPreviewWidthChanged` | `(width: MdzipPreviewWidthChoice) => void` | Called when the user picks a width in the toolbar's page-width menu |
145
+ | `onPreviewRendered` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called when the preview HTML is mounted |
146
+ | `onAssetsHydrated` | `(snapshot: MdzipWorkspaceSnapshot) => void` | Called once the mounted preview's images have loaded |
147
+ | `onLinkActivated` | `(event: MdzipLinkActivatedEvent) => void` | Called for every preview link click before built-in handling; call `event.preventDefault()` to take over |
148
+ | `onFailed` | `(error: unknown) => void` | Called on unrecoverable errors |
149
+ | `onConversionRequested` | `(action: MdzipConversionAction) => boolean \| Promise<boolean>` | Host hook for the markdown→MDZ conversion flow (nav button, Insert Image, or image paste on a plain `.md`). Return/resolve `true` to take over and suppress the built-in conversion dialog |
150
+ | `onPackRequested` | `(request: MdzipPackFilesRequest, context: MdzipPackFilesContext) => boolean \| Promise<boolean>` | Host hook for the folder→.mdz packing decision surfaced by the `packFilesAsWorkspace(files, options)` ref method — fires only when the file list contains more than one Markdown file. Same return contract as `onConversionRequested` |
151
+
152
+ ## Image insertion
153
+
154
+ Use `imageInsertMode="markdown"`, `"ask"`, or `"html"` for the built-in image
155
+ markup flow. Pass `imageInsertHandler` for host-owned image UI; the handler can
156
+ return Markdown or HTML sizing/alignment settings, return `null` to cancel, or
157
+ return `undefined` to fall back to `imageInsertMode`.
158
+
159
+ Pass `imageEditHandler` to let users edit an *existing* image by clicking it.
160
+ Fully opt-in — with no handler, clicking an image does nothing and no edit
161
+ affordance appears; there is no built-in fallback dialog.
162
+
163
+ ## File management (nav pane)
164
+
165
+ With `controls="standalone-editor"` or `"hosted-editor"` (or `fileActions: true` in a custom
166
+ policy), the navigation pane offers a right-click context menu: new `.md` file, new folder,
167
+ rename/move, duplicate, replace, download, copy markdown link, set entry point, set cover
168
+ image, and delete. Files can also be dragged between folders, and OS files can be dropped
169
+ onto the pane to add them as assets. Copy and Download remain available in read-only mode.
170
+ The same operations are exposed imperatively: `removeFile`, `renameFile`, `setEntryPoint`,
171
+ and `setCoverImage` on the handle. The handle also exposes `whenRendered()`, which resolves
172
+ once the current preview (including its images) is mounted — useful for revealing or
173
+ animating read-only preview content.
174
+
175
+ ## Links and anchors
176
+
177
+ `onLinkActivated` fires for every preview link click, before the view's own handling, with the
178
+ parsed link (`kind`: `'anchor' | 'document' | 'relative' | 'external'`, plus `path`,
179
+ `anchor`, `targetPath`, `sourcePath`, modifier keys). Call `event.preventDefault()` in the
180
+ handler to route the link yourself; unprevented clicks keep the built-in behavior.
181
+ The handle also exposes `scrollToAnchor(anchor)` (waits for the preview to mount, resolves whether it
182
+ scrolled; safe straight after load), `getAvailableAnchors()`, `openPath(path, { anchor })` (opens another
183
+ file, optionally at an anchor) and `getCurrentPath()`. Changing only `fileName` (e.g. after Save As)
184
+ renames in place without reopening; set `preserveSelectionOnReopen` to stay on the current file when
185
+ the archive content changes. See the
186
+ [`@mdzip/editor` README](https://www.npmjs.com/package/@mdzip/editor#links-and-anchors).
187
+
188
+ ## Imperative API
189
+
190
+ Use a `ref` to access the imperative handle:
191
+
192
+ ```tsx
193
+ import { useRef } from 'react';
194
+ import { MdzipWorkspace, type MdzipWorkspaceHandle } from '@mdzip/editor-react';
195
+
196
+ const ref = useRef<MdzipWorkspaceHandle>(null);
197
+
198
+ // Flush pending edits and persist
199
+ const snapshot = await ref.current?.flush();
200
+ if (snapshot) {
201
+ await save(snapshot.bytes);
202
+ ref.current?.markPersisted();
203
+ }
204
+
205
+ // Execute editor commands
206
+ await ref.current?.executeCommand('bold');
207
+
208
+ return <MdzipWorkspace ref={ref} ... />;
209
+ ```
210
+
211
+ See the [`@mdzip/editor`](https://www.npmjs.com/package/@mdzip/editor) package for the full API reference, theming guide, and framework-agnostic usage.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { type ReactNode } from 'react';
2
- import type { MdzipControlPolicy, MdzipControlPreset, MdzipContentDensity, MdzipColorScheme, MdzipConversionAction, MdzipConversionContext, MdzipDocumentChangeEvent, MdzipEditorCommand, MdzipEditorSnapshot, MdzipEntryRenderContext, MdzipEntryRenderer, MdzipExternalLinkPolicy, MdzipFrontMatterOptions, MdzipLinkActivatedEvent, MdzipImageEditHandler, MdzipImageHydrationAnimation, MdzipImageInsertHandler, MdzipImageInsertMode, MdzipPackFilesContext, MdzipPackFilesInput, MdzipPackFilesRequest, MdzipPackFilesResult, MdzipMarkdownRenderExtension, MdzipMarkdownRenderer, MdzipNavigationMode, MdzipRemoveAssetOptions, MdzipSourceFormat, MdzipToolbarDensity, MdzipWorkspaceChange, MdzipWorkspaceLayout, MdzipWorkspaceMode, MdzipWorkspaceSave, MdzipWorkspaceSnapshot, MdzWorkspace, MdzWorkspaceAsset } from '@mdzip/editor';
2
+ import type { MdzipControlPolicy, MdzipControlPreset, MdzipContentDensity, MdzipColorScheme, MdzipColorSchemePreference, MdzipPreviewMaxWidth, MdzipPreviewWidthChoice, MdzipConversionAction, MdzipConversionContext, MdzipDocumentChangeEvent, MdzipEditorCommand, MdzipOpenPathOptions, MdzipEditorSnapshot, MdzipEntryRenderContext, MdzipEntryRenderer, MdzipExternalLinkPolicy, MdzipFrontMatterOptions, MdzipLinkActivatedEvent, MdzipImageEditHandler, MdzipImageHydrationAnimation, MdzipImageInsertHandler, MdzipImageInsertMode, MdzipPackFilesContext, MdzipPackFilesInput, MdzipPackFilesRequest, MdzipPackFilesResult, MdzipMarkdownRenderExtension, MdzipMarkdownRenderer, MdzipNavigationMode, MdzipRemoveAssetOptions, MdzipSourceFormat, MdzipToolbarDensity, MdzipWorkspaceChange, MdzipWorkspaceLayout, MdzipWorkspaceMode, MdzipWorkspaceSave, MdzipWorkspaceSnapshot, MdzWorkspace, MdzWorkspaceAsset } from '@mdzip/editor';
3
3
  /**
4
4
  * Catch-all entry render function. Returning a React node claims the entry's
5
5
  * content area; returning `undefined` delegates to the next registered entry
@@ -10,6 +10,12 @@ export interface MdzipWorkspaceProps {
10
10
  bytes?: Uint8Array | null;
11
11
  workspace?: MdzWorkspace | null;
12
12
  fileName?: string;
13
+ /**
14
+ * When `bytes` or `workspace` change and the workspace reopens, show the file
15
+ * the user was on (if it's still there) instead of the entry point (#51).
16
+ * A `fileName`-only change never reopens; the name is updated in place.
17
+ */
18
+ preserveSelectionOnReopen?: boolean;
13
19
  mode?: MdzipWorkspaceMode;
14
20
  sourceFormat?: MdzipSourceFormat;
15
21
  controls?: MdzipControlPreset | MdzipControlPolicy;
@@ -20,7 +26,9 @@ export interface MdzipWorkspaceProps {
20
26
  imageInsertHandler?: MdzipImageInsertHandler;
21
27
  imageEditHandler?: MdzipImageEditHandler;
22
28
  initialLayout?: MdzipWorkspaceLayout;
23
- initialColorScheme?: MdzipColorScheme;
29
+ initialColorScheme?: MdzipColorSchemePreference;
30
+ /** Preview reading-column width; the user can change it from the toolbar's page-width menu. */
31
+ previewMaxWidth?: MdzipPreviewMaxWidth;
24
32
  /**
25
33
  * Mounts the preview in chunks near the viewport instead of rendering the
26
34
  * whole document synchronously up front. Recommended for hosts that may
@@ -41,6 +49,10 @@ export interface MdzipWorkspaceProps {
41
49
  onDirtyChanged?: (snapshot: MdzipWorkspaceSnapshot) => void;
42
50
  onValidationChanged?: (snapshot: MdzipWorkspaceSnapshot) => void;
43
51
  onColorSchemeChanged?: (colorScheme: MdzipColorScheme) => void;
52
+ /** The user's Light / Dark / System choice from the toolbar menu. */
53
+ onColorSchemePreferenceChanged?: (preference: MdzipColorSchemePreference) => void;
54
+ /** The user's choice from the toolbar's page-width menu. */
55
+ onPreviewWidthChanged?: (width: MdzipPreviewWidthChoice) => void;
44
56
  /** Fires when the preview HTML for the current selection is mounted. */
45
57
  onPreviewRendered?: (snapshot: MdzipWorkspaceSnapshot) => void;
46
58
  /** Fires once the mounted preview's images have finished loading. */
@@ -108,6 +120,10 @@ export interface MdzipWorkspaceHandle {
108
120
  /** See `MdzipWorkspaceView.scrollToAnchor` — waits for the preview to mount. */
109
121
  scrollToAnchor(anchor: string): Promise<boolean>;
110
122
  getAvailableAnchors(): string[];
123
+ /** See `MdzipWorkspaceView.openPath` — opens another file, optionally at an anchor. */
124
+ openPath(path: string, options?: MdzipOpenPathOptions): Promise<boolean>;
125
+ /** The archive path of the file currently shown, or null before a workspace opens. */
126
+ getCurrentPath(): string | null;
111
127
  markPersisted(): void;
112
128
  addAsset(archivePath: string, fileBytes: Uint8Array): Promise<void>;
113
129
  replaceAsset(archivePath: string, fileBytes: Uint8Array): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -68,7 +68,7 @@ function composeEntryRenderers(entryRenderers, adapter, renderEntry) {
68
68
  // at equal priority.
69
69
  return renderEntry ? [...explicit, adapter] : explicit;
70
70
  }
71
- export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, workspace, fileName = 'document.mdz', mode = 'read-only', sourceFormat, controls = 'viewer', toolbarDensity, contentDensity, imageHydrationAnimation, imageInsertMode, imageInsertHandler, imageEditHandler, initialLayout, initialColorScheme, progressiveTextRendering, navigationMode, navigationButtonActive, onChanged, onSaved, onWorkspaceChanged, onDocumentChanged, onAssetChanged, onManifestChanged, onSnapshotChanged, onSelectionChanged, onDirtyChanged, onValidationChanged, onColorSchemeChanged, onPreviewRendered, onAssetsHydrated, onLinkActivated, externalLinks, onFailed, onConversionRequested, onPackRequested, markdownRenderer, markdownExtensions, entryRenderers, frontMatter, renderEntry, renderEntryPriority, }, forwardedRef) {
71
+ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, workspace, fileName = 'document.mdz', preserveSelectionOnReopen = false, mode = 'read-only', sourceFormat, controls = 'viewer', toolbarDensity, contentDensity, imageHydrationAnimation, imageInsertMode, imageInsertHandler, imageEditHandler, initialLayout, initialColorScheme, previewMaxWidth, progressiveTextRendering, navigationMode, navigationButtonActive, onChanged, onSaved, onWorkspaceChanged, onDocumentChanged, onAssetChanged, onManifestChanged, onSnapshotChanged, onSelectionChanged, onDirtyChanged, onValidationChanged, onColorSchemeChanged, onColorSchemePreferenceChanged, onPreviewWidthChanged, onPreviewRendered, onAssetsHydrated, onLinkActivated, externalLinks, onFailed, onConversionRequested, onPackRequested, markdownRenderer, markdownExtensions, entryRenderers, frontMatter, renderEntry, renderEntryPriority, }, forwardedRef) {
72
72
  const ref = useRef(null);
73
73
  const viewRef = useRef(null);
74
74
  const adapterRef = useRef(null);
@@ -91,6 +91,8 @@ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, worksp
91
91
  onDirtyChanged,
92
92
  onValidationChanged,
93
93
  onColorSchemeChanged,
94
+ onColorSchemePreferenceChanged,
95
+ onPreviewWidthChanged,
94
96
  onPreviewRendered,
95
97
  onAssetsHydrated,
96
98
  onLinkActivated,
@@ -112,6 +114,8 @@ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, worksp
112
114
  onDirtyChanged,
113
115
  onValidationChanged,
114
116
  onColorSchemeChanged,
117
+ onColorSchemePreferenceChanged,
118
+ onPreviewWidthChanged,
115
119
  onPreviewRendered,
116
120
  onAssetsHydrated,
117
121
  onLinkActivated,
@@ -125,8 +129,12 @@ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, worksp
125
129
  externalLinksRef.current = externalLinks;
126
130
  const contentRef = useRef({ bytes, workspace, mode, sourceFormat, fileName });
127
131
  contentRef.current = { bytes, workspace, mode, sourceFormat, fileName };
128
- const controlsRef = useRef({ controls, toolbarDensity, contentDensity, imageHydrationAnimation, imageInsertMode });
129
- controlsRef.current = { controls, toolbarDensity, contentDensity, imageHydrationAnimation, imageInsertMode };
132
+ const controlsRef = useRef({
133
+ controls, toolbarDensity, contentDensity, imageHydrationAnimation, imageInsertMode, previewMaxWidth
134
+ });
135
+ controlsRef.current = {
136
+ controls, toolbarDensity, contentDensity, imageHydrationAnimation, imageInsertMode, previewMaxWidth
137
+ };
130
138
  // Latest rendering props, read at view-create and apply time so prop
131
139
  // identity changes alone never rebuild the workspace view.
132
140
  const renderingRef = useRef({ markdownRenderer, markdownExtensions, entryRenderers, frontMatter, renderEntry });
@@ -147,6 +155,8 @@ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, worksp
147
155
  whenRendered: () => viewRef.current?.whenRendered() ?? Promise.resolve(),
148
156
  scrollToAnchor: (anchor) => viewRef.current?.scrollToAnchor(anchor) ?? Promise.resolve(false),
149
157
  getAvailableAnchors: () => viewRef.current?.getAvailableAnchors() ?? [],
158
+ openPath: (path, options) => viewRef.current?.openPath(path, options) ?? Promise.resolve(false),
159
+ getCurrentPath: () => viewRef.current?.getCurrentPath() ?? null,
150
160
  markPersisted: () => viewRef.current?.markPersisted(),
151
161
  addAsset: (archivePath, fileBytes) => viewRef.current?.addAsset(archivePath, fileBytes) ?? Promise.resolve(),
152
162
  replaceAsset: (archivePath, fileBytes) => viewRef.current?.replaceAsset(archivePath, fileBytes) ?? Promise.resolve(false),
@@ -172,6 +182,7 @@ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, worksp
172
182
  imageInsertMode: controlsRef.current.imageInsertMode,
173
183
  initialLayout,
174
184
  initialColorScheme,
185
+ previewMaxWidth: controlsRef.current.previewMaxWidth,
175
186
  progressiveTextRendering,
176
187
  navigationMode,
177
188
  navigationButtonActive,
@@ -186,6 +197,8 @@ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, worksp
186
197
  onDirtyChanged: (snapshot) => callbacksRef.current.onDirtyChanged?.(snapshot),
187
198
  onValidationChanged: (snapshot) => callbacksRef.current.onValidationChanged?.(snapshot),
188
199
  onColorSchemeChanged: (colorScheme) => callbacksRef.current.onColorSchemeChanged?.(colorScheme),
200
+ onColorSchemePreferenceChanged: (preference) => callbacksRef.current.onColorSchemePreferenceChanged?.(preference),
201
+ onPreviewWidthChanged: (width) => callbacksRef.current.onPreviewWidthChanged?.(width),
189
202
  onPreviewRendered: (snapshot) => callbacksRef.current.onPreviewRendered?.(snapshot),
190
203
  onAssetsHydrated: (snapshot) => callbacksRef.current.onAssetsHydrated?.(snapshot),
191
204
  onLinkActivated: (event) => callbacksRef.current.onLinkActivated?.(event),
@@ -242,6 +255,9 @@ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, worksp
242
255
  useEffect(() => {
243
256
  viewRef.current?.setDensityOptions({ toolbarDensity, contentDensity });
244
257
  }, [toolbarDensity, contentDensity]);
258
+ useEffect(() => {
259
+ viewRef.current?.setPreviewMaxWidth(previewMaxWidth);
260
+ }, [previewMaxWidth]);
245
261
  useEffect(() => {
246
262
  viewRef.current?.setImageHydrationAnimation(imageHydrationAnimation);
247
263
  }, [imageHydrationAnimation]);
@@ -256,13 +272,33 @@ export const MdzipWorkspace = forwardRef(function MdzipWorkspace({ bytes, worksp
256
272
  imageEditHandler: (request) => callbacksRef.current.imageEditHandler?.(request),
257
273
  });
258
274
  }, [imageEditHandler]);
275
+ // Read at reopen time; toggling it alone never reopens.
276
+ const preserveSelectionRef = useRef(preserveSelectionOnReopen);
277
+ preserveSelectionRef.current = preserveSelectionOnReopen;
278
+ // What the view last opened, to tell a fileName-only change (renamed in
279
+ // place, #51) from a content change (reopen).
280
+ const openedRef = useRef(null);
259
281
  useEffect(() => {
260
- if (viewRef.current && workspace) {
261
- void viewRef.current.openWorkspace(workspace, { mode, sourceFormat, fileName });
282
+ const view = viewRef.current;
283
+ if (!view)
284
+ return;
285
+ const opened = openedRef.current;
286
+ const sameContent = opened !== null && opened.bytes === bytes && opened.workspace === workspace
287
+ && opened.mode === mode && opened.sourceFormat === sourceFormat;
288
+ if (sameContent && view.setFileName(fileName)) {
289
+ return;
290
+ }
291
+ const initialPath = preserveSelectionRef.current && opened ? view.getCurrentPath() ?? undefined : undefined;
292
+ if (workspace) {
293
+ void view.openWorkspace(workspace, { mode, sourceFormat, fileName, initialPath });
294
+ }
295
+ else if (bytes) {
296
+ void view.open(bytes, { mode, sourceFormat, fileName, initialPath });
262
297
  }
263
- else if (viewRef.current && bytes) {
264
- void viewRef.current.open(bytes, { mode, sourceFormat, fileName });
298
+ else {
299
+ return;
265
300
  }
301
+ openedRef.current = { bytes, workspace, mode, sourceFormat };
266
302
  }, [bytes, workspace, mode, sourceFormat, fileName]);
267
303
  // Rendering config updates apply in place — never a view rebuild. Arrays
268
304
  // re-apply only when their name/id key changes; the renderer re-applies on
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export declare const PACKAGE_INFO: {
2
2
  readonly name: "@mdzip/editor-react";
3
- readonly version: "1.5.0";
3
+ readonly version: "2.1.0";
4
4
  readonly repositoryUrl: "https://github.com/mdzip-project/mdzip-editor/tree/main/packages/editor-react";
5
5
  readonly description: "React wrapper for the MDZip workspace editor.";
6
6
  };
@@ -1,7 +1,7 @@
1
1
  // Generated from package.json. Do not edit by hand.
2
2
  export const PACKAGE_INFO = {
3
3
  "name": "@mdzip/editor-react",
4
- "version": "1.5.0",
4
+ "version": "2.1.0",
5
5
  "repositoryUrl": "https://github.com/mdzip-project/mdzip-editor/tree/main/packages/editor-react",
6
6
  "description": "React wrapper for the MDZip workspace editor."
7
7
  };
package/package.json CHANGED
@@ -1,51 +1,51 @@
1
- {
2
- "name": "@mdzip/editor-react",
3
- "version": "1.5.0",
4
- "description": "React wrapper for the MDZip workspace editor.",
5
- "license": "Apache-2.0",
6
- "repository": {
7
- "type": "git",
8
- "url": "git+https://github.com/mdzip-project/mdzip-editor.git",
9
- "directory": "packages/editor-react"
10
- },
11
- "homepage": "https://mdzip.org",
12
- "bugs": {
13
- "url": "https://github.com/mdzip-project/mdzip-editor/issues"
14
- },
15
- "type": "module",
16
- "main": "dist/index.js",
17
- "types": "dist/index.d.ts",
18
- "exports": {
19
- ".": {
20
- "types": "./dist/index.d.ts",
21
- "import": "./dist/index.js"
22
- },
23
- "./diff-view": {
24
- "types": "./dist/diff-view.d.ts",
25
- "import": "./dist/diff-view.js"
26
- }
27
- },
28
- "files": [
29
- "dist"
30
- ],
31
- "scripts": {
32
- "generate:package-info": "node ../../scripts/generate-package-info.mjs",
33
- "prebuild": "npm run generate:package-info",
34
- "build": "tsc -p tsconfig.json",
35
- "test": "vitest run"
36
- },
37
- "dependencies": {
38
- "@mdzip/editor": "^1.5.0"
39
- },
40
- "peerDependencies": {
41
- "react": ">=18.0.0",
42
- "react-dom": ">=18.0.0"
43
- },
44
- "devDependencies": {
45
- "@types/react": "^19.1.6",
46
- "@types/react-dom": "^19.1.5"
47
- },
48
- "publishConfig": {
49
- "access": "public"
50
- }
51
- }
1
+ {
2
+ "name": "@mdzip/editor-react",
3
+ "version": "2.1.0",
4
+ "description": "React wrapper for the MDZip workspace editor.",
5
+ "license": "Apache-2.0",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/mdzip-project/mdzip-editor.git",
9
+ "directory": "packages/editor-react"
10
+ },
11
+ "homepage": "https://mdzip.org",
12
+ "bugs": {
13
+ "url": "https://github.com/mdzip-project/mdzip-editor/issues"
14
+ },
15
+ "type": "module",
16
+ "main": "dist/index.js",
17
+ "types": "dist/index.d.ts",
18
+ "exports": {
19
+ ".": {
20
+ "types": "./dist/index.d.ts",
21
+ "import": "./dist/index.js"
22
+ },
23
+ "./diff-view": {
24
+ "types": "./dist/diff-view.d.ts",
25
+ "import": "./dist/diff-view.js"
26
+ }
27
+ },
28
+ "files": [
29
+ "dist"
30
+ ],
31
+ "scripts": {
32
+ "generate:package-info": "node ../../scripts/generate-package-info.mjs",
33
+ "prebuild": "npm run generate:package-info",
34
+ "build": "tsc -p tsconfig.json",
35
+ "test": "vitest run"
36
+ },
37
+ "dependencies": {
38
+ "@mdzip/editor": "^2.1.0"
39
+ },
40
+ "peerDependencies": {
41
+ "react": ">=18.0.0",
42
+ "react-dom": ">=18.0.0"
43
+ },
44
+ "devDependencies": {
45
+ "@types/react": "^19.1.6",
46
+ "@types/react-dom": "^19.1.5"
47
+ },
48
+ "publishConfig": {
49
+ "access": "public"
50
+ }
51
+ }