@jvs-milkdown/crepe 1.2.22 → 1.2.24
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/lib/cjs/builder.js +84 -0
- package/lib/cjs/builder.js.map +1 -1
- package/lib/cjs/index.js +79 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/esm/builder.js +84 -0
- package/lib/esm/builder.js.map +1 -1
- package/lib/esm/index.js +79 -0
- package/lib/esm/index.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types/core/builder.d.ts +5 -0
- package/lib/types/core/builder.d.ts.map +1 -1
- package/lib/types/feature/fixed-toolbar/component.d.ts.map +1 -1
- package/lib/types/feature/fixed-toolbar/index.d.ts +8 -0
- package/lib/types/feature/fixed-toolbar/index.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/core/builder.ts +80 -0
- package/src/feature/fixed-toolbar/component.tsx +1 -2
- package/src/feature/fixed-toolbar/index.ts +17 -1
- package/src/feature/fixed-toolbar/outline-panel.tsx +1 -1
|
@@ -4,6 +4,7 @@ import type { CrepeFeatureConfig } from '../feature';
|
|
|
4
4
|
import type { DefineFeature } from '../feature/shared';
|
|
5
5
|
import { CrepeFeature } from '../feature';
|
|
6
6
|
import { type CrepeTranslations } from './locale';
|
|
7
|
+
import { type ViewMenuState } from '../feature/fixed-toolbar/view-menu-state';
|
|
7
8
|
export interface CrepeBuilderConfig {
|
|
8
9
|
root?: Node | string | null;
|
|
9
10
|
defaultValue?: DefaultValue;
|
|
@@ -26,5 +27,9 @@ export declare class CrepeBuilder {
|
|
|
26
27
|
showDiff: (oldMarkdown: string, newMarkdown: string) => this;
|
|
27
28
|
hideDiff: () => this;
|
|
28
29
|
on: (fn: (api: ListenerManager) => void) => this;
|
|
30
|
+
get outlineVisible(): boolean;
|
|
31
|
+
setOutlineVisible: (visible: boolean) => this;
|
|
32
|
+
getViewMenuState: () => any;
|
|
33
|
+
setViewMenuState: (state: Partial<ViewMenuState>) => this;
|
|
29
34
|
}
|
|
30
35
|
//# sourceMappingURL=builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../src/core/builder.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,YAAY,EAEjB,MAAM,EAKP,MAAM,wBAAwB,CAAA;AAI/B,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,mCAAmC,CAAA;AAO1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAGzC,OAAO,EAAc,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../src/core/builder.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,YAAY,EAEjB,MAAM,EAKP,MAAM,wBAAwB,CAAA;AAI/B,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,mCAAmC,CAAA;AAO1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAGzC,OAAO,EAAc,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAQ7D,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,0CAA0C,CAAA;AAG/F,MAAM,WAAW,kBAAkB;IAIjC,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;IAG3B,YAAY,CAAC,EAAE,YAAY,CAAA;IAG3B,MAAM,CAAC,EAAE,MAAM,CAAA;IAGf,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAA;CAC1D;AAID,qBAAa,YAAY;;gBAYX,EACV,IAAI,EACJ,YAAiB,EACjB,MAAgB,EAChB,YAAY,GACb,GAAE,kBAAuB;IA0H1B,UAAU,EAAE;QACV,CAAC,CAAC,SAAS,YAAY,EACrB,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAC7C,MAAM,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC7B,YAAY,CAAA;QACf,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,YAAY,CAAA;KACzD,CAGA;IAGD,MAAM,wBAEL;IAGD,OAAO,wBAEN;IAGD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAGD,IAAI,QAAQ,YAEX;IAGD,WAAW,GAAI,OAAO,OAAO,UAW5B;IAGD,WAAW,eAEV;IAGD,QAAQ,GAAI,aAAa,MAAM,EAAE,aAAa,MAAM,UAMnD;IAGD,QAAQ,aAMP;IAGD,EAAE,GAAI,IAAI,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,UAavC;IAGD,IAAI,cAAc,YAejB;IAGD,iBAAiB,GAAI,SAAS,OAAO,UAcpC;IAGD,gBAAgB,YAwBf;IAGD,gBAAgB,GAAI,OAAO,OAAO,CAAC,aAAa,CAAC,UAchD;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../../src/feature/fixed-toolbar/component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAI9D,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,GAAG,EAKT,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../../src/feature/fixed-toolbar/component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAI9D,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,GAAG,EAKT,MAAM,KAAK,CAAA;AAEZ,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,GAAG,CAAA;AAQlD,KAAK,iBAAiB,GAAG;IACvB,GAAG,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IAClB,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAA;IAChC,MAAM,CAAC,EAAE,yBAAyB,CAAA;IAClC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACrB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,qBAAqB,oXA+JhC,CAAA"}
|
|
@@ -3,6 +3,7 @@ import { PluginKey } from '@jvs-milkdown/kit/prose/state';
|
|
|
3
3
|
import type { GroupBuilder } from '../../utils';
|
|
4
4
|
import type { DefineFeature } from '../shared';
|
|
5
5
|
import type { ToolbarItem } from '../toolbar/config';
|
|
6
|
+
import { type EditorWidth } from './view-menu-state';
|
|
6
7
|
export interface FixedToolbarConfig {
|
|
7
8
|
boldIcon?: string;
|
|
8
9
|
codeIcon?: string;
|
|
@@ -32,6 +33,13 @@ export interface FixedToolbarConfig {
|
|
|
32
33
|
onImport?: (replaceContent: (markdown: string) => void, ctx: Ctx) => void;
|
|
33
34
|
useLocalStorage?: boolean;
|
|
34
35
|
id?: string;
|
|
36
|
+
outlineVisible?: boolean;
|
|
37
|
+
outlineWidth?: number;
|
|
38
|
+
documentBackground?: string | null;
|
|
39
|
+
showTitle?: boolean;
|
|
40
|
+
showCover?: boolean;
|
|
41
|
+
coverUrl?: string;
|
|
42
|
+
editorWidth?: EditorWidth;
|
|
35
43
|
}
|
|
36
44
|
export type FixedToolbarFeatureConfig = Partial<FixedToolbarConfig>;
|
|
37
45
|
export declare const fixedToolbarConfig: import("@jvs-milkdown/utils").$Ctx<Partial<FixedToolbarConfig>, "fixedToolbarConfigCtx">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/feature/fixed-toolbar/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAIhD,OAAO,EAAU,SAAS,EAAiB,MAAM,+BAA+B,CAAA;AAehF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/feature/fixed-toolbar/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAIhD,OAAO,EAAU,SAAS,EAAiB,MAAM,+BAA+B,CAAA;AAehF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAUpD,OAAO,EAAoC,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEtF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,KAAK,IAAI,CAAA;IAC3D,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAClC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC/C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,YAAY,CAAC,EAAE;QACb,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,MAAM,CAAC,EAAE,OAAO,CAAA;QAChB,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB,CAAA;IACD,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;IACzE,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B;AAED,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;AAEnE,eAAO,MAAM,kBAAkB,0FAG9B,CAAA;AAED,eAAO,MAAM,eAAe,gBAA0C,CAAA;AA+WtE,eAAO,MAAM,kBAAkB,sCAK7B,CAAA;AAEF,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,yBAAyB,CA6BjE,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jvs-milkdown/crepe",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.24",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"crepe",
|
|
6
6
|
"editor",
|
|
@@ -107,9 +107,9 @@
|
|
|
107
107
|
"@codemirror/theme-one-dark": "^6.1.2",
|
|
108
108
|
"@codemirror/view": "^6.26.0",
|
|
109
109
|
"@floating-ui/dom": "^1.7.6",
|
|
110
|
-
"@jvs-milkdown/kit": "^1.2.
|
|
111
|
-
"@jvs-milkdown/prose": "^1.2.
|
|
112
|
-
"@jvs-milkdown/utils": "^1.2.
|
|
110
|
+
"@jvs-milkdown/kit": "^1.2.24",
|
|
111
|
+
"@jvs-milkdown/prose": "^1.2.24",
|
|
112
|
+
"@jvs-milkdown/utils": "^1.2.24",
|
|
113
113
|
"@types/lodash-es": "^4.17.12",
|
|
114
114
|
"clsx": "^2.0.0",
|
|
115
115
|
"codemirror": "^6.0.1",
|
package/src/core/builder.ts
CHANGED
|
@@ -36,6 +36,7 @@ import {
|
|
|
36
36
|
translationsCtx,
|
|
37
37
|
useCrepeFeatures,
|
|
38
38
|
} from './slice'
|
|
39
|
+
import { viewMenuStateCtx, type ViewMenuState } from '../feature/fixed-toolbar/view-menu-state'
|
|
39
40
|
|
|
40
41
|
/// The crepe builder configuration.
|
|
41
42
|
export interface CrepeBuilderConfig {
|
|
@@ -278,4 +279,83 @@ export class CrepeBuilder {
|
|
|
278
279
|
})
|
|
279
280
|
return this
|
|
280
281
|
}
|
|
282
|
+
|
|
283
|
+
/// Get the visibility of the outline panel.
|
|
284
|
+
get outlineVisible() {
|
|
285
|
+
let visible = false
|
|
286
|
+
this.#editor.action((ctx) => {
|
|
287
|
+
if (this.#editor.status === EditorStatus.Created) {
|
|
288
|
+
try {
|
|
289
|
+
const state = ctx.get(viewMenuStateCtx.key)
|
|
290
|
+
if (state) {
|
|
291
|
+
visible = state.outlineVisible
|
|
292
|
+
}
|
|
293
|
+
} catch (e) {
|
|
294
|
+
// Ignore if FixedToolbar feature is not loaded
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
})
|
|
298
|
+
return visible
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
/// Set the visibility of the outline panel.
|
|
302
|
+
setOutlineVisible = (visible: boolean) => {
|
|
303
|
+
this.#editor.action((ctx) => {
|
|
304
|
+
if (this.#editor.status === EditorStatus.Created) {
|
|
305
|
+
try {
|
|
306
|
+
const state = ctx.get(viewMenuStateCtx.key)
|
|
307
|
+
if (state) {
|
|
308
|
+
state.outlineVisible = visible
|
|
309
|
+
}
|
|
310
|
+
} catch (e) {
|
|
311
|
+
// Ignore if FixedToolbar feature is not loaded
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
})
|
|
315
|
+
return this
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
/// Get the configuration/state of the view menu (outline, background, title, cover, width, etc.)
|
|
319
|
+
getViewMenuState = () => {
|
|
320
|
+
let state: any = null
|
|
321
|
+
this.#editor.action((ctx) => {
|
|
322
|
+
if (this.#editor.status === EditorStatus.Created) {
|
|
323
|
+
try {
|
|
324
|
+
const viewState = ctx.get(viewMenuStateCtx.key)
|
|
325
|
+
if (viewState) {
|
|
326
|
+
state = {
|
|
327
|
+
outlineVisible: viewState.outlineVisible,
|
|
328
|
+
outlinePosition: viewState.outlinePosition,
|
|
329
|
+
outlineWidth: viewState.outlineWidth,
|
|
330
|
+
documentBackground: viewState.documentBackground,
|
|
331
|
+
showTitle: viewState.showTitle,
|
|
332
|
+
showCover: viewState.showCover,
|
|
333
|
+
coverUrl: viewState.coverUrl,
|
|
334
|
+
editorWidth: viewState.editorWidth,
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
} catch (e) {
|
|
338
|
+
// Ignore if FixedToolbar feature is not loaded
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
})
|
|
342
|
+
return state
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
/// Update/set the state of the view menu
|
|
346
|
+
setViewMenuState = (state: Partial<ViewMenuState>) => {
|
|
347
|
+
this.#editor.action((ctx) => {
|
|
348
|
+
if (this.#editor.status === EditorStatus.Created) {
|
|
349
|
+
try {
|
|
350
|
+
const viewState = ctx.get(viewMenuStateCtx.key)
|
|
351
|
+
if (viewState) {
|
|
352
|
+
Object.assign(viewState, state)
|
|
353
|
+
}
|
|
354
|
+
} catch (e) {
|
|
355
|
+
// Ignore if FixedToolbar feature is not loaded
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
})
|
|
359
|
+
return this
|
|
360
|
+
}
|
|
281
361
|
}
|
|
@@ -13,11 +13,10 @@ import {
|
|
|
13
13
|
h,
|
|
14
14
|
} from 'vue'
|
|
15
15
|
|
|
16
|
-
import { keepAlive } from '../../utils/keep-alive'
|
|
17
|
-
|
|
18
16
|
import type { FixedToolbarFeatureConfig } from '.'
|
|
19
17
|
|
|
20
18
|
import { undoIcon, redoIcon } from '../../icons'
|
|
19
|
+
import { keepAlive } from '../../utils/keep-alive'
|
|
21
20
|
import { Toolbar } from '../toolbar/component'
|
|
22
21
|
import { MenuBar } from './menu-bar'
|
|
23
22
|
import { ShortcutHelpModal } from './shortcut-help-modal'
|
|
@@ -29,7 +29,7 @@ import { FixedToolbarComponent } from './component'
|
|
|
29
29
|
import { buildDefaultFixedToolbar } from './config'
|
|
30
30
|
import { DocumentHeader } from './document-header'
|
|
31
31
|
import { OutlinePanel } from './outline-panel'
|
|
32
|
-
import { viewMenuStateCtx, editorWidthMap } from './view-menu-state'
|
|
32
|
+
import { viewMenuStateCtx, editorWidthMap, type EditorWidth } from './view-menu-state'
|
|
33
33
|
|
|
34
34
|
export interface FixedToolbarConfig {
|
|
35
35
|
boldIcon?: string
|
|
@@ -60,6 +60,13 @@ export interface FixedToolbarConfig {
|
|
|
60
60
|
onImport?: (replaceContent: (markdown: string) => void, ctx: Ctx) => void
|
|
61
61
|
useLocalStorage?: boolean
|
|
62
62
|
id?: string
|
|
63
|
+
outlineVisible?: boolean
|
|
64
|
+
outlineWidth?: number
|
|
65
|
+
documentBackground?: string | null
|
|
66
|
+
showTitle?: boolean
|
|
67
|
+
showCover?: boolean
|
|
68
|
+
coverUrl?: string
|
|
69
|
+
editorWidth?: EditorWidth
|
|
63
70
|
}
|
|
64
71
|
|
|
65
72
|
export type FixedToolbarFeatureConfig = Partial<FixedToolbarConfig>
|
|
@@ -95,6 +102,15 @@ class FixedToolbarView implements PluginView {
|
|
|
95
102
|
const config = ctx.get(fixedToolbarConfig.key)
|
|
96
103
|
const viewState = ctx.get(viewMenuStateCtx.key)
|
|
97
104
|
|
|
105
|
+
if (config?.outlineVisible !== undefined) viewState.outlineVisible = config.outlineVisible
|
|
106
|
+
if (config?.outlinePosition !== undefined) viewState.outlinePosition = config.outlinePosition
|
|
107
|
+
if (config?.outlineWidth !== undefined) viewState.outlineWidth = config.outlineWidth
|
|
108
|
+
if (config?.documentBackground !== undefined) viewState.documentBackground = config.documentBackground
|
|
109
|
+
if (config?.showTitle !== undefined) viewState.showTitle = config.showTitle
|
|
110
|
+
if (config?.showCover !== undefined) viewState.showCover = config.showCover
|
|
111
|
+
if (config?.coverUrl !== undefined) viewState.coverUrl = config.coverUrl
|
|
112
|
+
if (config?.editorWidth !== undefined) viewState.editorWidth = config.editorWidth
|
|
113
|
+
|
|
98
114
|
// Load initial view menu state from localStorage if useLocalStorage is enabled
|
|
99
115
|
if (config?.useLocalStorage) {
|
|
100
116
|
try {
|
|
@@ -5,8 +5,8 @@ import { editorViewCtx } from '@jvs-milkdown/kit/core'
|
|
|
5
5
|
import { defineComponent, onMounted, onUnmounted, ref, computed, h } from 'vue'
|
|
6
6
|
|
|
7
7
|
import { i18n } from '../../core/locale'
|
|
8
|
-
import { viewMenuStateCtx } from './view-menu-state'
|
|
9
8
|
import { keepAlive } from '../../utils/keep-alive'
|
|
9
|
+
import { viewMenuStateCtx } from './view-menu-state'
|
|
10
10
|
|
|
11
11
|
keepAlive(h)
|
|
12
12
|
|