@mdxeditor/editor 0.11.0 → 0.11.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.
@@ -1,7 +1,88 @@
1
1
  import React__default from "react";
2
+ import { tap, always } from "../utils/fp.js";
2
3
  import { realmFactory } from "./realmFactory.js";
4
+ function omit(keys, obj) {
5
+ const result = {};
6
+ const index = {};
7
+ let idx = 0;
8
+ const len = keys.length;
9
+ while (idx < len) {
10
+ index[keys[idx]] = 1;
11
+ idx += 1;
12
+ }
13
+ for (const prop in obj) {
14
+ if (!Object.prototype.hasOwnProperty.call(index, prop)) {
15
+ result[prop] = obj[prop];
16
+ }
17
+ }
18
+ return result;
19
+ }
3
20
  const useIsomorphicLayoutEffect = typeof document !== "undefined" ? React__default.useLayoutEffect : React__default.useEffect;
4
21
  const GurxContext = React__default.createContext(void 0);
22
+ function realmFactoryToComponent(realmFactory2, map, Root) {
23
+ const requiredPropNames = Object.keys(map.required || {});
24
+ const optionalPropNames = Object.keys(map.optional || {});
25
+ const methodNames = Object.keys(map.methods || {});
26
+ const eventNames = Object.keys(map.events || {});
27
+ const Context = GurxContext;
28
+ function applyPropsToRealm(realm, props) {
29
+ const toBePublished = {};
30
+ for (const requiredPropName of requiredPropNames) {
31
+ const nodeName = map.required[requiredPropName];
32
+ toBePublished[nodeName] = props[requiredPropName];
33
+ }
34
+ for (const optionalPropName of optionalPropNames) {
35
+ const value = props[optionalPropName];
36
+ if (value !== void 0) {
37
+ const nodeName = map.optional[optionalPropName];
38
+ toBePublished[nodeName] = value;
39
+ }
40
+ }
41
+ realm.pubKeys(toBePublished);
42
+ }
43
+ function buildMethods(realm) {
44
+ return methodNames.reduce((acc, methodName) => {
45
+ const nodeName = map.methods[methodName];
46
+ acc[methodName] = (value) => {
47
+ realm.pubKey(nodeName, value);
48
+ };
49
+ return acc;
50
+ }, {});
51
+ }
52
+ const Component = React__default.forwardRef((props, ref) => {
53
+ const realm = React__default.useMemo(() => {
54
+ return tap(realmFactory2(), (realm2) => applyPropsToRealm(realm2, props));
55
+ }, []);
56
+ useIsomorphicLayoutEffect(() => {
57
+ applyPropsToRealm(realm, props);
58
+ realm.resetSingletonSubs();
59
+ for (const eventName of eventNames) {
60
+ if (eventName in props) {
61
+ realm.singletonSubKey(map.events[eventName], props[eventName]);
62
+ }
63
+ }
64
+ return () => {
65
+ realm.resetSingletonSubs();
66
+ };
67
+ }, [props]);
68
+ React__default.useImperativeHandle(ref, always(buildMethods(realm)));
69
+ const children = props.children;
70
+ return React__default.createElement(
71
+ Context.Provider,
72
+ { value: realm },
73
+ Root ? React__default.createElement(
74
+ Root,
75
+ omit([...requiredPropNames, ...optionalPropNames, ...eventNames], props),
76
+ children
77
+ ) : children
78
+ );
79
+ });
80
+ Component.displayName = "Gurx Component";
81
+ return {
82
+ Component,
83
+ ...sysHooks()
84
+ };
85
+ }
5
86
  function sysHooks() {
6
87
  const Context = GurxContext;
7
88
  const usePublisher = (key) => {
@@ -104,8 +185,13 @@ function useHasPlugin(id) {
104
185
  const usedPlugins = React__default.useContext(UsedPluginsContext);
105
186
  return usedPlugins.has(id);
106
187
  }
188
+ const RequirePlugin = ({ id, children }) => {
189
+ return useHasPlugin(id) ? React__default.createElement(React__default.Fragment, {}, children) : null;
190
+ };
107
191
  export {
108
192
  RealmPluginInitializer,
193
+ RequirePlugin,
194
+ realmFactoryToComponent,
109
195
  realmPlugin,
110
196
  sysHooks,
111
197
  useHasPlugin
@@ -22,7 +22,11 @@ function realmFactory(...specs) {
22
22
  specs.forEach(_init);
23
23
  return r;
24
24
  }
25
+ function getRealmFactory(...specs) {
26
+ return () => realmFactory(...specs);
27
+ }
25
28
  export {
29
+ getRealmFactory,
26
30
  realmFactory,
27
31
  system
28
32
  };
package/dist/index.d.ts CHANGED
@@ -3,6 +3,9 @@
3
3
  * @packageDocumentation
4
4
  */
5
5
  export * from './MDXEditor';
6
+ export * from './importMarkdownToLexical';
7
+ export * from './exportMarkdownFromLexical';
8
+ export * from './plugins/core';
6
9
  export * from './plugins/headings';
7
10
  export * from './plugins/thematic-break';
8
11
  export * from './plugins/lists';
@@ -47,3 +50,4 @@ export * from './plugins/toolbar/primitives/TooltipWrap';
47
50
  export * from './plugins/toolbar/primitives/select';
48
51
  export * from './plugins/core/NestedLexicalEditor';
49
52
  export * from './plugins/core/PropertyPopover';
53
+ export * from './gurx';
package/dist/index.js CHANGED
@@ -1,5 +1,8 @@
1
1
  import "./styles/globals.css.js";
2
2
  import { MDXEditor } from "./MDXEditor.js";
3
+ import { importMarkdownToLexical, importMdastTreeToLexical } from "./importMarkdownToLexical.js";
4
+ import { exportLexicalTreeToMdast, exportMarkdownFromLexical } from "./exportMarkdownFromLexical.js";
5
+ import { NESTED_EDITOR_UPDATED_COMMAND, corePlugin, corePluginHooks, coreSystem } from "./plugins/core/index.js";
3
6
  import { headingsPlugin, headingsSystem } from "./plugins/headings/index.js";
4
7
  import { thematicBreakPlugin, thematicBreakPluginHooks, thematicBreakSystem } from "./plugins/thematic-break/index.js";
5
8
  import { listsPlugin, listsPluginHooks, listsSystem } from "./plugins/lists/index.js";
@@ -44,8 +47,14 @@ import { TooltipWrap } from "./plugins/toolbar/primitives/TooltipWrap.js";
44
47
  import { Select, SelectButtonTrigger, SelectContent, SelectItem, SelectTrigger } from "./plugins/toolbar/primitives/select.js";
45
48
  import { NestedEditorsContext, NestedLexicalEditor, useLexicalNodeRemove, useMdastNodeUpdater, useNestedEditorContext } from "./plugins/core/NestedLexicalEditor.js";
46
49
  import { PropertyPopover } from "./plugins/core/PropertyPopover.js";
50
+ import { $createImageNode, $isImageNode, ImageNode } from "./plugins/image/ImageNode.js";
47
51
  import { useCodeBlockEditorContext } from "./plugins/codeblock/CodeBlockNode.js";
52
+ import { RefCount, defaultComparator, realm } from "./gurx/realm.js";
53
+ import { RealmPluginInitializer, RequirePlugin, realmFactoryToComponent, realmPlugin, sysHooks, useHasPlugin } from "./gurx/react.js";
54
+ import { getRealmFactory, realmFactory, system } from "./gurx/realmFactory.js";
48
55
  export {
56
+ $createImageNode,
57
+ $isImageNode,
49
58
  ADMONITION_TYPES,
50
59
  AdmonitionDirectiveDescriptor,
51
60
  BlockTypeSelect,
@@ -63,6 +72,7 @@ export {
63
72
  GenericDirectiveEditor,
64
73
  GenericJsxEditor,
65
74
  INSERT_IMAGE_COMMAND,
75
+ ImageNode,
66
76
  InsertAdmonition,
67
77
  InsertCodeBlock,
68
78
  InsertFrontmatter,
@@ -74,9 +84,13 @@ export {
74
84
  ListsToggle,
75
85
  MDXEditor,
76
86
  MultipleChoiceToggleGroup,
87
+ NESTED_EDITOR_UPDATED_COMMAND,
77
88
  NestedEditorsContext,
78
89
  NestedLexicalEditor,
79
90
  PropertyPopover,
91
+ RealmPluginInitializer,
92
+ RefCount,
93
+ RequirePlugin,
80
94
  Root,
81
95
  Select,
82
96
  SelectButtonTrigger,
@@ -97,20 +111,29 @@ export {
97
111
  codeMirrorHooks,
98
112
  codeMirrorPlugin,
99
113
  codeMirrorSystem,
114
+ corePlugin,
115
+ corePluginHooks,
116
+ coreSystem,
117
+ defaultComparator,
100
118
  diffSourcePlugin,
101
119
  diffSourcePluginHooks,
102
120
  diffSourceSystem,
103
121
  directivesPlugin,
104
122
  directivesPluginHooks,
105
123
  directivesSystem,
124
+ exportLexicalTreeToMdast,
125
+ exportMarkdownFromLexical,
106
126
  frontmatterPlugin,
107
127
  frontmatterPluginHooks,
108
128
  frontmatterSystem,
129
+ getRealmFactory,
109
130
  headingsPlugin,
110
131
  headingsSystem,
111
132
  imagePlugin,
112
133
  imagePluginHooks,
113
134
  imageSystem,
135
+ importMarkdownToLexical,
136
+ importMdastTreeToLexical,
114
137
  jsxPlugin,
115
138
  jsxPluginHooks,
116
139
  jsxSystem,
@@ -123,9 +146,15 @@ export {
123
146
  markdownShortcutPlugin,
124
147
  quotePlugin,
125
148
  quotePluginHooks,
149
+ realm,
150
+ realmFactory,
151
+ realmFactoryToComponent,
152
+ realmPlugin,
126
153
  sandpackPlugin,
127
154
  sandpackPluginHooks,
128
155
  sandpackSystem,
156
+ sysHooks,
157
+ system,
129
158
  tablePlugin,
130
159
  tablePluginHooks,
131
160
  tableSystem,
@@ -136,6 +165,7 @@ export {
136
165
  toolbarPluginHooks,
137
166
  toolbarSystem,
138
167
  useCodeBlockEditorContext,
168
+ useHasPlugin,
139
169
  useLexicalNodeRemove,
140
170
  useMdastNodeUpdater,
141
171
  useNestedEditorContext
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,11 +1,10 @@
1
1
  import type { CodeBlockEditorDescriptor, CreateCodeBlockNodeOptions } from '../codeblock';
2
2
  import type { RefObject, ComponentType, ReactNode } from 'react';
3
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
4
3
  import type { Options } from 'mdast-util-to-markdown';
5
4
  import type { Config } from 'mdast-util-from-markdown/lib';
6
5
  import type { Extension } from 'micromark-util-types';
7
6
  import type { Content } from 'mdast';
8
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
7
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
9
8
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
10
9
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
11
10
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -13,6 +12,7 @@ import type { SystemSpec, Realm, RealmNode, PluginConstructor, TypedRealm, Value
13
12
  /// <reference types="react" />
14
13
  import type { RangeSelection, Klass, LexicalNode, TextFormatType, ElementNode, DecoratorNode, LexicalCommand, LexicalEditor } from 'lexical';
15
14
  import { CreateImageNodeOptions } from './ImageNode';
15
+ export * from './ImageNode';
16
16
  /** @internal */
17
17
  export declare const imageSystem: SystemSpec<[SystemSpec<[], (r: Realm) => {
18
18
  activeEditor: RealmNode<LexicalEditor | null>;
@@ -554,4 +554,3 @@ declare global {
554
554
  rangeParent?: Node;
555
555
  }
556
556
  }
557
- export {};
@@ -1,5 +1,5 @@
1
1
  import { $wrapNodeInElement } from "@lexical/utils";
2
- import { createCommand, $insertNodes, $isRootOrShadowRoot, $createParagraphNode, COMMAND_PRIORITY_EDITOR, DRAGSTART_COMMAND, COMMAND_PRIORITY_HIGH, DRAGOVER_COMMAND, COMMAND_PRIORITY_LOW, DROP_COMMAND, PASTE_COMMAND, COMMAND_PRIORITY_CRITICAL, $createRangeSelection, $setSelection, $getSelection, $isNodeSelection } from "lexical";
2
+ import { $insertNodes, $isRootOrShadowRoot, $createParagraphNode, COMMAND_PRIORITY_EDITOR, DRAGSTART_COMMAND, COMMAND_PRIORITY_HIGH, DRAGOVER_COMMAND, COMMAND_PRIORITY_LOW, DROP_COMMAND, PASTE_COMMAND, COMMAND_PRIORITY_CRITICAL, createCommand, $createRangeSelection, $setSelection, $getSelection, $isNodeSelection } from "lexical";
3
3
  import { coreSystem } from "../core/index.js";
4
4
  import { $createImageNode, $isImageNode, ImageNode } from "./ImageNode.js";
5
5
  import { LexicalImageVisitor } from "./LexicalImageVisitor.js";
@@ -239,7 +239,10 @@ function getDragSelection(event) {
239
239
  return range;
240
240
  }
241
241
  export {
242
+ $createImageNode,
243
+ $isImageNode,
242
244
  INSERT_IMAGE_COMMAND,
245
+ ImageNode,
243
246
  imagePlugin,
244
247
  imagePluginHooks,
245
248
  imageSystem
@@ -1,9 +1,8 @@
1
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
2
1
  import type { Options } from 'mdast-util-to-markdown';
3
2
  import type { Config } from 'mdast-util-from-markdown/lib';
4
3
  import type { Extension } from 'micromark-util-types';
5
4
  import type { Content } from 'mdast';
6
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
5
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
7
6
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
8
7
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
9
8
  import type { HistoryState } from '@lexical/history';
@@ -1,9 +1,8 @@
1
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
2
1
  import type { Options } from 'mdast-util-to-markdown';
3
2
  import type { Config } from 'mdast-util-from-markdown/lib';
4
3
  import type { Extension } from 'micromark-util-types';
5
4
  import type { Content } from 'mdast';
6
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
5
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
7
6
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
8
7
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
9
8
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,9 +1,8 @@
1
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
2
1
  import type { Options } from 'mdast-util-to-markdown';
3
2
  import type { Config } from 'mdast-util-from-markdown/lib';
4
3
  import type { Extension } from 'micromark-util-types';
5
4
  import type { Content } from 'mdast';
6
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
5
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
7
6
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
8
7
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
9
8
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { CodeBlockEditorDescriptor, CreateCodeBlockNodeOptions } from '../codeblock';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,9 +1,8 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
5
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
7
6
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
8
7
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
9
8
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,10 +1,9 @@
1
1
  import type { RefObject, ComponentType, ReactNode } from 'react';
2
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
3
2
  import type { Options } from 'mdast-util-to-markdown';
4
3
  import type { Config } from 'mdast-util-from-markdown/lib';
5
4
  import type { Extension } from 'micromark-util-types';
6
5
  import type { Content } from 'mdast';
7
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
6
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
8
7
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
9
8
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
10
9
  import type { JsxComponentDescriptor } from '../jsx';
@@ -1,9 +1,8 @@
1
- import type { LexicalVisitor } from '../../exportMarkdownFromLexical';
2
1
  import type { Options } from 'mdast-util-to-markdown';
3
2
  import type { Config } from 'mdast-util-from-markdown/lib';
4
3
  import type { Extension } from 'micromark-util-types';
5
4
  import type { Content } from 'mdast';
6
- import type { MdastImportVisitor } from '../../importMarkdownToLexical';
5
+ import type { MdastImportVisitor, LexicalVisitor } from '../..';
7
6
  import type { EditorSubscription, EditorInFocus, BlockType } from '../core';
8
7
  import type { InitialEditorStateType } from '@lexical/react/LexicalComposer';
9
8
  import type { JsxComponentDescriptor } from '../jsx';
package/dist/utils/fp.js CHANGED
@@ -2,9 +2,13 @@ function tap(arg, proc) {
2
2
  proc(arg);
3
3
  return arg;
4
4
  }
5
+ function always(value) {
6
+ return () => value;
7
+ }
5
8
  function noop() {
6
9
  }
7
10
  export {
11
+ always,
8
12
  noop,
9
13
  tap
10
14
  };
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "private": false,
10
10
  "sideEffects": false,
11
11
  "type": "module",
12
- "version": "0.11.0",
12
+ "version": "0.11.1",
13
13
  "description": "React component for rich text markdown editing",
14
14
  "scripts": {
15
15
  "build": "vite build",
@@ -181,11 +181,26 @@
181
181
  },
182
182
  "./package.json": "./package.json",
183
183
  "./style.css": "./dist/style.css",
184
+ "./gurx": {
185
+ "types": "./dist/gurx/index.d.ts",
186
+ "import": "./dist/gurx/index.js",
187
+ "default": "./dist/gurx/index.js"
188
+ },
184
189
  "./MDXEditor": {
185
190
  "types": "./dist/MDXEditor.d.ts",
186
191
  "import": "./dist/MDXEditor.js",
187
192
  "default": "./dist/MDXEditor.js"
188
193
  },
194
+ "./importMarkdownToLexical": {
195
+ "types": "./dist/importMarkdownToLexical.d.ts",
196
+ "import": "./dist/importMarkdownToLexical.js",
197
+ "default": "./dist/importMarkdownToLexical.js"
198
+ },
199
+ "./exportMarkdownFromLexical": {
200
+ "types": "./dist/exportMarkdownFromLexical.d.ts",
201
+ "import": "./dist/exportMarkdownFromLexical.js",
202
+ "default": "./dist/exportMarkdownFromLexical.js"
203
+ },
189
204
  "./directive-editors/AdmonitionDirectiveDescriptor": {
190
205
  "types": "./dist/directive-editors/AdmonitionDirectiveDescriptor.d.ts",
191
206
  "import": "./dist/directive-editors/AdmonitionDirectiveDescriptor.js",