@prosekit/preact 0.7.0-beta.3 → 0.7.0-beta.4

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.
Files changed (94) hide show
  1. package/dist/editor-context.js +0 -2
  2. package/dist/editor-context.js.map +1 -1
  3. package/dist/prosekit-preact-autocomplete.d.ts +10 -61
  4. package/dist/prosekit-preact-autocomplete.d.ts.map +1 -1
  5. package/dist/prosekit-preact-autocomplete.js +5 -50
  6. package/dist/prosekit-preact-autocomplete.js.map +1 -1
  7. package/dist/prosekit-preact-block-handle.d.ts +10 -61
  8. package/dist/prosekit-preact-block-handle.d.ts.map +1 -1
  9. package/dist/prosekit-preact-block-handle.js +5 -50
  10. package/dist/prosekit-preact-block-handle.js.map +1 -1
  11. package/dist/prosekit-preact-drop-indicator.d.ts +2 -13
  12. package/dist/prosekit-preact-drop-indicator.d.ts.map +1 -1
  13. package/dist/prosekit-preact-drop-indicator.js +1 -10
  14. package/dist/prosekit-preact-drop-indicator.js.map +1 -1
  15. package/dist/prosekit-preact-inline-popover.d.ts +6 -37
  16. package/dist/prosekit-preact-inline-popover.d.ts.map +1 -1
  17. package/dist/prosekit-preact-inline-popover.js +3 -30
  18. package/dist/prosekit-preact-inline-popover.js.map +1 -1
  19. package/dist/prosekit-preact-menu.d.ts +48 -88
  20. package/dist/prosekit-preact-menu.d.ts.map +1 -1
  21. package/dist/prosekit-preact-menu.js +37 -72
  22. package/dist/prosekit-preact-menu.js.map +1 -1
  23. package/dist/prosekit-preact-popover.d.ts +8 -49
  24. package/dist/prosekit-preact-popover.d.ts.map +1 -1
  25. package/dist/prosekit-preact-popover.js +4 -40
  26. package/dist/prosekit-preact-popover.js.map +1 -1
  27. package/dist/prosekit-preact-resizable.d.ts +4 -25
  28. package/dist/prosekit-preact-resizable.d.ts.map +1 -1
  29. package/dist/prosekit-preact-resizable.js +2 -20
  30. package/dist/prosekit-preact-resizable.js.map +1 -1
  31. package/dist/prosekit-preact-table-handle.d.ts +22 -133
  32. package/dist/prosekit-preact-table-handle.d.ts.map +1 -1
  33. package/dist/prosekit-preact-table-handle.js +11 -110
  34. package/dist/prosekit-preact-table-handle.js.map +1 -1
  35. package/dist/prosekit-preact-tooltip.d.ts +8 -49
  36. package/dist/prosekit-preact-tooltip.d.ts.map +1 -1
  37. package/dist/prosekit-preact-tooltip.js +4 -40
  38. package/dist/prosekit-preact-tooltip.js.map +1 -1
  39. package/dist/prosekit-preact.d.ts +0 -21
  40. package/dist/prosekit-preact.d.ts.map +1 -1
  41. package/dist/prosekit-preact.js +0 -26
  42. package/dist/prosekit-preact.js.map +1 -1
  43. package/package.json +5 -5
  44. package/src/components/autocomplete/autocomplete-empty.gen.ts +3 -13
  45. package/src/components/autocomplete/autocomplete-item.gen.ts +3 -13
  46. package/src/components/autocomplete/autocomplete-popup.gen.ts +3 -13
  47. package/src/components/autocomplete/autocomplete-positioner.gen.ts +3 -13
  48. package/src/components/autocomplete/autocomplete-root.gen.ts +3 -13
  49. package/src/components/autocomplete/index.gen.ts +1 -3
  50. package/src/components/block-handle/block-handle-add.gen.ts +3 -13
  51. package/src/components/block-handle/block-handle-draggable.gen.ts +3 -13
  52. package/src/components/block-handle/block-handle-popup.gen.ts +3 -13
  53. package/src/components/block-handle/block-handle-positioner.gen.ts +3 -13
  54. package/src/components/block-handle/block-handle-root.gen.ts +3 -13
  55. package/src/components/block-handle/index.gen.ts +1 -3
  56. package/src/components/drop-indicator/drop-indicator.gen.ts +3 -13
  57. package/src/components/drop-indicator/index.gen.ts +1 -3
  58. package/src/components/inline-popover/index.gen.ts +1 -3
  59. package/src/components/inline-popover/inline-popover-popup.gen.ts +3 -13
  60. package/src/components/inline-popover/inline-popover-positioner.gen.ts +3 -13
  61. package/src/components/inline-popover/inline-popover-root.gen.ts +3 -13
  62. package/src/components/menu/index.gen.ts +1 -3
  63. package/src/components/menu/menu-item.gen.ts +3 -13
  64. package/src/components/menu/menu-popup.gen.ts +3 -13
  65. package/src/components/menu/menu-positioner.gen.ts +3 -13
  66. package/src/components/menu/menu-root.gen.ts +3 -13
  67. package/src/components/menu/menu-submenu-root.gen.ts +49 -17
  68. package/src/components/menu/menu-submenu-trigger.gen.ts +27 -18
  69. package/src/components/menu/menu-trigger.gen.ts +3 -13
  70. package/src/components/popover/index.gen.ts +1 -3
  71. package/src/components/popover/popover-popup.gen.ts +3 -13
  72. package/src/components/popover/popover-positioner.gen.ts +3 -13
  73. package/src/components/popover/popover-root.gen.ts +3 -13
  74. package/src/components/popover/popover-trigger.gen.ts +3 -13
  75. package/src/components/resizable/index.gen.ts +1 -3
  76. package/src/components/resizable/resizable-handle.gen.ts +3 -13
  77. package/src/components/resizable/resizable-root.gen.ts +3 -13
  78. package/src/components/table-handle/index.gen.ts +1 -3
  79. package/src/components/table-handle/table-handle-column-menu-root.gen.ts +3 -13
  80. package/src/components/table-handle/table-handle-column-menu-trigger.gen.ts +3 -13
  81. package/src/components/table-handle/table-handle-column-popup.gen.ts +3 -13
  82. package/src/components/table-handle/table-handle-column-positioner.gen.ts +3 -13
  83. package/src/components/table-handle/table-handle-drag-preview.gen.ts +3 -13
  84. package/src/components/table-handle/table-handle-drop-indicator.gen.ts +3 -13
  85. package/src/components/table-handle/table-handle-root.gen.ts +3 -13
  86. package/src/components/table-handle/table-handle-row-menu-root.gen.ts +3 -13
  87. package/src/components/table-handle/table-handle-row-menu-trigger.gen.ts +3 -13
  88. package/src/components/table-handle/table-handle-row-popup.gen.ts +3 -13
  89. package/src/components/table-handle/table-handle-row-positioner.gen.ts +3 -13
  90. package/src/components/tooltip/index.gen.ts +1 -3
  91. package/src/components/tooltip/tooltip-popup.gen.ts +3 -13
  92. package/src/components/tooltip/tooltip-positioner.gen.ts +3 -13
  93. package/src/components/tooltip/tooltip-root.gen.ts +3 -13
  94. package/src/components/tooltip/tooltip-trigger.gen.ts +3 -13
@@ -5,7 +5,6 @@ import { EditorNotFoundError, ProseKitError, defineDocChangeHandler, defineKeyma
5
5
  import { AbstractPreactMarkView, AbstractPreactNodeView, buildPreactMarkViewCreator, buildPreactNodeViewCreator, usePreactRenderer } from "@prosemirror-adapter/preact";
6
6
  import { createPortal, useSyncExternalStore } from "preact/compat";
7
7
  import { queueExtension } from "@prosekit/web";
8
- //#region src/extensions/preact-mark-view.ts
9
8
  var ProseKitPreactMarkView = class extends AbstractPreactMarkView {
10
9
  constructor(..._args) {
11
10
  super(..._args);
@@ -36,8 +35,6 @@ function definePreactMarkView(options) {
36
35
  args: options
37
36
  });
38
37
  }
39
- //#endregion
40
- //#region src/extensions/preact-node-view.ts
41
38
  var ProseKitPreactNodeView = class extends AbstractPreactNodeView {
42
39
  constructor(..._args) {
43
40
  super(..._args);
@@ -68,8 +65,6 @@ function definePreactNodeView(options) {
68
65
  args: options
69
66
  });
70
67
  }
71
- //#endregion
72
- //#region src/hooks/use-editor-extension.ts
73
68
  /**
74
69
  * @internal
75
70
  */
@@ -79,8 +74,6 @@ function useEditorExtension(editor, extension) {
79
74
  if (extension) return queueExtension(editor, extension);
80
75
  }, [editor, extension]);
81
76
  }
82
- //#endregion
83
- //#region src/components/view-renderer.ts
84
77
  const ViewRenderer = ({ editor, children }) => {
85
78
  const { renderPreactRenderer, removePreactRenderer, render } = usePreactRenderer();
86
79
  useEditorExtension(editor, useMemo(() => {
@@ -88,8 +81,6 @@ const ViewRenderer = ({ editor, children }) => {
88
81
  }, [renderPreactRenderer, removePreactRenderer]));
89
82
  return createElement(Fragment, null, createElement(Fragment, null, children), createElement(Fragment, null, render()));
90
83
  };
91
- //#endregion
92
- //#region src/components/prosekit.ts
93
84
  /**
94
85
  * The root component for a ProseKit editor.
95
86
  *
@@ -102,8 +93,6 @@ const ProseKit = (props) => {
102
93
  children
103
94
  }));
104
95
  };
105
- //#endregion
106
- //#region src/hooks/use-event-callback.ts
107
96
  /**
108
97
  * @internal
109
98
  */
@@ -114,8 +103,6 @@ function useEventCallback(callback) {
114
103
  }, [callback]);
115
104
  return useCallback((...args) => callbackRef.current(...args), []);
116
105
  }
117
- //#endregion
118
- //#region src/hooks/use-priority-extension.ts
119
106
  /**
120
107
  * @internal
121
108
  */
@@ -124,8 +111,6 @@ function usePriorityExtension(extension, priority) {
124
111
  return extension && priority ? withPriority(extension, priority) : extension;
125
112
  }, [extension, priority]);
126
113
  }
127
- //#endregion
128
- //#region src/hooks/use-extension.ts
129
114
  /**
130
115
  * Add an extension to the editor.
131
116
  */
@@ -133,8 +118,6 @@ function useExtension(extension, options) {
133
118
  const editorContext = useEditorContext();
134
119
  useEditorExtension(options?.editor || editorContext, usePriorityExtension(extension, options?.priority));
135
120
  }
136
- //#endregion
137
- //#region src/hooks/use-doc-change.ts
138
121
  /**
139
122
  * Calls the given handler whenever the editor document changes.
140
123
  *
@@ -144,8 +127,6 @@ function useDocChange(handler, options) {
144
127
  const memoizedHandler = useEventCallback(handler);
145
128
  useExtension(useMemo(() => defineDocChangeHandler((view) => memoizedHandler(view.state.doc)), [memoizedHandler]), options);
146
129
  }
147
- //#endregion
148
- //#region src/hooks/use-editor-derived-value.ts
149
130
  /**
150
131
  * Runs a function to derive a value from the editor instance after editor state
151
132
  * changes.
@@ -186,8 +167,6 @@ function createEditorStore(editor, derive) {
186
167
  };
187
168
  return [subscribe, getSnapshot];
188
169
  }
189
- //#endregion
190
- //#region src/hooks/use-editor.ts
191
170
  /**
192
171
  * Retrieves the editor instance from the nearest ProseKit component.
193
172
  *
@@ -214,13 +193,9 @@ function useForceUpdate() {
214
193
  const [, dispatch] = useReducer((x) => x + 1, 0);
215
194
  return dispatch;
216
195
  }
217
- //#endregion
218
- //#region src/hooks/use-keymap.ts
219
196
  function useKeymap(keymap, options) {
220
197
  useExtension(useMemo(() => defineKeymap(keymap), [keymap]), options);
221
198
  }
222
- //#endregion
223
- //#region src/hooks/use-state-update.ts
224
199
  /**
225
200
  * Calls the given handler whenever the editor state changes.
226
201
  *
@@ -230,7 +205,6 @@ function useStateUpdate(handler, options) {
230
205
  const memoizedHandler = useEventCallback(handler);
231
206
  useExtension(useMemo(() => defineUpdateHandler((view) => memoizedHandler(view.state)), [memoizedHandler]), options);
232
207
  }
233
- //#endregion
234
208
  export { ProseKit, definePreactMarkView, definePreactNodeView, useDocChange, useEditor, useEditorDerivedValue, useExtension, useKeymap, useStateUpdate };
235
209
 
236
210
  //# sourceMappingURL=prosekit-preact.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosekit-preact.js","names":[],"sources":["../src/extensions/preact-mark-view.ts","../src/extensions/preact-node-view.ts","../src/hooks/use-editor-extension.ts","../src/components/view-renderer.ts","../src/components/prosekit.ts","../src/hooks/use-event-callback.ts","../src/hooks/use-priority-extension.ts","../src/hooks/use-extension.ts","../src/hooks/use-doc-change.ts","../src/hooks/use-editor-derived-value.ts","../src/hooks/use-editor.ts","../src/hooks/use-keymap.ts","../src/hooks/use-state-update.ts"],"sourcesContent":["import { defineMarkViewComponent, defineMarkViewFactory, type Extension } from '@prosekit/core'\nimport type { CoreMarkViewUserOptions } from '@prosemirror-adapter/core'\nimport {\n AbstractPreactMarkView,\n buildPreactMarkViewCreator,\n type MarkViewContext,\n type PreactRendererResult,\n} from '@prosemirror-adapter/preact'\nimport { createElement, type ComponentType } from 'preact'\nimport { createPortal } from 'preact/compat'\n\n/**\n * @public\n */\nexport interface PreactMarkViewProps extends MarkViewContext {}\n\n/**\n * @public\n */\nexport type PreactMarkViewComponent = ComponentType<PreactMarkViewProps>\n\n/**\n * Options for {@link definePreactMarkView}.\n *\n * @public\n */\nexport interface PreactMarkViewOptions extends CoreMarkViewUserOptions<PreactMarkViewComponent> {\n /**\n * The name of the mark type.\n */\n name: string\n}\n\nclass ProseKitPreactMarkView extends AbstractPreactMarkView<PreactMarkViewComponent> {\n render = () => {\n const UserComponent = this.component\n const props = { ...this.context }\n return createPortal(\n createElement(UserComponent, props),\n this.dom,\n )\n }\n}\n\n/**\n * @internal\n */\nexport function definePreactMarkViewFactory(\n renderPreactRenderer: PreactRendererResult['renderPreactRenderer'],\n removePreactRenderer: PreactRendererResult['removePreactRenderer'],\n): Extension {\n const factory = buildPreactMarkViewCreator(renderPreactRenderer, removePreactRenderer, ProseKitPreactMarkView)\n return defineMarkViewFactory<PreactMarkViewOptions>({\n group: 'preact',\n factory,\n })\n}\n\n/**\n * Defines a mark view using a Preact component.\n *\n * @public\n */\nexport function definePreactMarkView(options: PreactMarkViewOptions): Extension {\n return defineMarkViewComponent<PreactMarkViewOptions>({\n group: 'preact',\n name: options.name,\n args: options,\n })\n}\n","import { defineNodeViewComponent, defineNodeViewFactory, type Extension } from '@prosekit/core'\nimport type { CoreNodeViewUserOptions } from '@prosemirror-adapter/core'\nimport {\n AbstractPreactNodeView,\n buildPreactNodeViewCreator,\n type NodeViewContext,\n type PreactRendererResult,\n} from '@prosemirror-adapter/preact'\nimport { createElement, type ComponentType } from 'preact'\nimport { createPortal } from 'preact/compat'\n\n/**\n * @public\n */\nexport interface PreactNodeViewProps extends NodeViewContext {}\n\n/**\n * @public\n */\nexport type PreactNodeViewComponent = ComponentType<PreactNodeViewProps>\n\n/**\n * Options for {@link definePreactNodeView}.\n *\n * @public\n */\nexport interface PreactNodeViewOptions extends CoreNodeViewUserOptions<PreactNodeViewComponent> {\n /**\n * The name of the node type.\n */\n name: string\n}\n\nclass ProseKitPreactNodeView extends AbstractPreactNodeView<PreactNodeViewComponent> {\n render = () => {\n const UserComponent = this.component\n const props = { ...this.context }\n return createPortal(\n createElement(UserComponent, props),\n this.dom,\n )\n }\n}\n\n/**\n * @internal\n */\nexport function definePreactNodeViewFactory(\n renderPreactRenderer: PreactRendererResult['renderPreactRenderer'],\n removePreactRenderer: PreactRendererResult['removePreactRenderer'],\n): Extension {\n const factory = buildPreactNodeViewCreator(renderPreactRenderer, removePreactRenderer, ProseKitPreactNodeView)\n return defineNodeViewFactory<PreactNodeViewOptions>({\n group: 'preact',\n factory,\n })\n}\n\n/**\n * Defines a node view using a Preact component.\n *\n * @public\n */\nexport function definePreactNodeView(options: PreactNodeViewOptions): Extension {\n return defineNodeViewComponent<PreactNodeViewOptions>({\n group: 'preact',\n name: options.name,\n args: options,\n })\n}\n","import { EditorNotFoundError, type Editor, type Extension } from '@prosekit/core'\nimport { queueExtension } from '@prosekit/web'\nimport { useEffect } from 'preact/hooks'\n\n/**\n * @internal\n */\nexport function useEditorExtension(\n editor: Editor | null | undefined,\n extension: Extension | null,\n): void {\n if (!editor) {\n throw new EditorNotFoundError()\n }\n\n useEffect(() => {\n if (extension) {\n return queueExtension(editor, extension)\n }\n }, [editor, extension])\n}\n","import { union, type Editor } from '@prosekit/core'\nimport { usePreactRenderer } from '@prosemirror-adapter/preact'\nimport { createElement, Fragment, type ComponentChildren, type ComponentType } from 'preact'\nimport { useMemo } from 'preact/hooks'\n\nimport { definePreactMarkViewFactory } from '../extensions/preact-mark-view.ts'\nimport { definePreactNodeViewFactory } from '../extensions/preact-node-view.ts'\nimport { useEditorExtension } from '../hooks/use-editor-extension.ts'\n\ninterface ViewRendererProps {\n editor: Editor\n children: ComponentChildren\n}\n\nexport const ViewRenderer: ComponentType<ViewRendererProps> = ({ editor, children }) => {\n const { renderPreactRenderer, removePreactRenderer, render } = usePreactRenderer()\n\n const extension = useMemo(() => {\n return union([\n definePreactMarkViewFactory(renderPreactRenderer, removePreactRenderer),\n definePreactNodeViewFactory(renderPreactRenderer, removePreactRenderer),\n ])\n }, [renderPreactRenderer, removePreactRenderer])\n\n useEditorExtension(editor, extension)\n\n return createElement(Fragment, null, createElement(Fragment, null, children), createElement(Fragment, null, render()))\n}\n","import type { Editor } from '@prosekit/core'\nimport { createElement, type ComponentChildren, type ComponentType } from 'preact'\n\nimport { EditorContextProvider } from '../contexts/editor-context.ts'\n\nimport { ViewRenderer } from './view-renderer.ts'\n\nexport interface ProseKitProps {\n editor: Editor\n children?: ComponentChildren\n}\n\n/**\n * The root component for a ProseKit editor.\n *\n * @public\n */\nexport const ProseKit: ComponentType<ProseKitProps> = (props) => {\n const { editor, children } = props\n\n return createElement(\n EditorContextProvider,\n { value: editor },\n createElement(\n ViewRenderer,\n { editor, children },\n ),\n )\n}\n","import { useCallback, useLayoutEffect, useRef } from 'preact/hooks'\n\n/**\n * @internal\n */\nexport function useEventCallback<Args extends unknown[], Return>(\n callback: (...args: Args) => Return,\n): (...args: Args) => Return {\n const callbackRef = useRef(callback)\n useLayoutEffect(() => {\n callbackRef.current = callback\n }, [callback])\n return useCallback((...args: Args) => callbackRef.current(...args), [])\n}\n","import { withPriority, type Extension, type Priority } from '@prosekit/core'\nimport { useMemo } from 'preact/hooks'\n\n/**\n * @internal\n */\nexport function usePriorityExtension<T extends Extension = Extension>(\n extension: T | null,\n priority?: Priority | null,\n): T | null {\n return useMemo(() => {\n return extension && priority ? withPriority(extension, priority) : extension\n }, [extension, priority])\n}\n","import type { Editor, Extension, Priority } from '@prosekit/core'\n\nimport { useEditorContext } from '../contexts/editor-context.ts'\n\nimport { useEditorExtension } from './use-editor-extension.ts'\nimport { usePriorityExtension } from './use-priority-extension.ts'\n\nexport interface UseExtensionOptions {\n /**\n * The editor to add the extension to. If not provided, it will use the\n * editor from the nearest `<ProseKit>` component.\n */\n editor?: Editor\n\n /**\n * Optional priority to add the extension with.\n */\n priority?: Priority\n}\n\n/**\n * Add an extension to the editor.\n */\nexport function useExtension(\n /**\n * The extension to add to the editor. If it changes, the previous\n * extension will be removed and the new one (if not null) will be added.\n */\n extension: Extension | null,\n options?: UseExtensionOptions,\n): void {\n const editorContext = useEditorContext()\n useEditorExtension(\n options?.editor || editorContext,\n usePriorityExtension(extension, options?.priority),\n )\n}\n","import { defineDocChangeHandler } from '@prosekit/core'\nimport type { ProseMirrorNode } from '@prosekit/pm/model'\nimport { useMemo } from 'preact/hooks'\n\nimport { useEventCallback } from './use-event-callback.ts'\nimport { useExtension, type UseExtensionOptions } from './use-extension.ts'\n\n/**\n * Calls the given handler whenever the editor document changes.\n *\n * @public\n */\nexport function useDocChange(\n handler: (doc: ProseMirrorNode) => void,\n options?: UseExtensionOptions,\n): void {\n const memoizedHandler = useEventCallback(handler)\n const extension = useMemo(\n () => defineDocChangeHandler((view) => memoizedHandler(view.state.doc)),\n [memoizedHandler],\n )\n useExtension(extension, options)\n}\n","import { defineMountHandler, defineUpdateHandler, EditorNotFoundError, union, type Editor, type Extension } from '@prosekit/core'\nimport { useSyncExternalStore } from 'preact/compat'\nimport { useMemo } from 'preact/hooks'\n\nimport { useEditorContext } from '../contexts/editor-context.ts'\n\nexport interface UseEditorDerivedOptions<E extends Extension = any> {\n /**\n * The editor to add the extension to. If not provided, it will use the\n * editor from the nearest `<ProseKit>` component.\n */\n editor?: Editor<E>\n}\n\n/**\n * Runs a function to derive a value from the editor instance after editor state\n * changes.\n *\n * This is useful when you need to render something based on the editor state,\n * for example, whether the selected text is wrapped in an italic mark.\n *\n * It returns the derived value that updates whenever the editor state changes.\n *\n * @public\n */\nexport function useEditorDerivedValue<E extends Extension, Derived>(\n /**\n * A function that receives the editor instance and returns a derived value.\n *\n * It will be called whenever the editor's document state changes, or when it\n * mounts.\n *\n * This function should be memoized.\n */\n derive: (editor: Editor<E>) => Derived,\n options?: UseEditorDerivedOptions<E>,\n): Derived {\n const editorContext = useEditorContext<E>()\n const editor = options?.editor ?? editorContext\n if (!editor) {\n throw new EditorNotFoundError()\n }\n\n const [subscribe, getSnapshot] = useMemo(() => {\n return createEditorStore(editor, derive)\n }, [editor, derive])\n\n return useSyncExternalStore(subscribe, getSnapshot)\n}\n\nfunction createEditorStore<Derived, E extends Extension = any>(editor: Editor<E>, derive: (editor: Editor<E>) => Derived) {\n let dirty = true\n let derived: Derived\n\n const subscribe = (onChange: VoidFunction): VoidFunction => {\n const handleChange = () => {\n dirty = true\n onChange()\n }\n const extension = union(\n defineUpdateHandler(handleChange),\n defineMountHandler(handleChange),\n )\n return editor.use(extension)\n }\n\n const getSnapshot = () => {\n if (dirty) {\n dirty = false\n derived = derive(editor)\n }\n return derived\n }\n\n return [subscribe, getSnapshot] as const\n}\n","import { defineMountHandler, defineUpdateHandler, ProseKitError, union, type Editor, type Extension } from '@prosekit/core'\nimport { useEffect, useReducer } from 'preact/hooks'\n\nimport { useEditorContext } from '../contexts/editor-context.ts'\n\n/**\n * Retrieves the editor instance from the nearest ProseKit component.\n *\n * @public\n */\nexport function useEditor<E extends Extension = any>(options?: {\n /**\n * Whether to update the component when the editor is mounted or editor state\n * is updated.\n *\n * @default false\n */\n update?: boolean\n}): Editor<E> {\n const update = options?.update ?? false\n\n const editor = useEditorContext<E>()\n if (!editor) {\n throw new ProseKitError(\n 'useEditor must be used within the ProseKit component',\n )\n }\n\n const forceUpdate = useForceUpdate()\n\n useEffect(() => {\n if (update) {\n const extension = union(\n defineMountHandler(forceUpdate),\n defineUpdateHandler(forceUpdate),\n )\n return editor.use(extension)\n }\n }, [editor, update, forceUpdate])\n\n return editor\n}\n\nfunction useForceUpdate() {\n const [, dispatch] = useReducer((x: number) => x + 1, 0)\n return dispatch\n}\n","import { defineKeymap, type Keymap } from '@prosekit/core'\nimport { useMemo } from 'preact/hooks'\n\nimport { useExtension, type UseExtensionOptions } from './use-extension.ts'\n\nexport function useKeymap(keymap: Keymap, options?: UseExtensionOptions): void {\n const extension = useMemo(() => defineKeymap(keymap), [keymap])\n useExtension(extension, options)\n}\n","import { defineUpdateHandler } from '@prosekit/core'\nimport type { EditorState } from '@prosekit/pm/state'\nimport { useMemo } from 'preact/hooks'\n\nimport { useEventCallback } from './use-event-callback.ts'\nimport { useExtension, type UseExtensionOptions } from './use-extension.ts'\n\n/**\n * Calls the given handler whenever the editor state changes.\n *\n * @public\n */\nexport function useStateUpdate(\n handler: (state: EditorState) => void,\n options?: UseExtensionOptions,\n): void {\n const memoizedHandler = useEventCallback(handler)\n const extension = useMemo(\n () => defineUpdateHandler((view) => memoizedHandler(view.state)),\n [memoizedHandler],\n )\n useExtension(extension, options)\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"prosekit-preact.js","names":[],"sources":["../src/extensions/preact-mark-view.ts","../src/extensions/preact-node-view.ts","../src/hooks/use-editor-extension.ts","../src/components/view-renderer.ts","../src/components/prosekit.ts","../src/hooks/use-event-callback.ts","../src/hooks/use-priority-extension.ts","../src/hooks/use-extension.ts","../src/hooks/use-doc-change.ts","../src/hooks/use-editor-derived-value.ts","../src/hooks/use-editor.ts","../src/hooks/use-keymap.ts","../src/hooks/use-state-update.ts"],"sourcesContent":["import { defineMarkViewComponent, defineMarkViewFactory, type Extension } from '@prosekit/core'\nimport type { CoreMarkViewUserOptions } from '@prosemirror-adapter/core'\nimport {\n AbstractPreactMarkView,\n buildPreactMarkViewCreator,\n type MarkViewContext,\n type PreactRendererResult,\n} from '@prosemirror-adapter/preact'\nimport { createElement, type ComponentType } from 'preact'\nimport { createPortal } from 'preact/compat'\n\n/**\n * @public\n */\nexport interface PreactMarkViewProps extends MarkViewContext {}\n\n/**\n * @public\n */\nexport type PreactMarkViewComponent = ComponentType<PreactMarkViewProps>\n\n/**\n * Options for {@link definePreactMarkView}.\n *\n * @public\n */\nexport interface PreactMarkViewOptions extends CoreMarkViewUserOptions<PreactMarkViewComponent> {\n /**\n * The name of the mark type.\n */\n name: string\n}\n\nclass ProseKitPreactMarkView extends AbstractPreactMarkView<PreactMarkViewComponent> {\n render = () => {\n const UserComponent = this.component\n const props = { ...this.context }\n return createPortal(\n createElement(UserComponent, props),\n this.dom,\n )\n }\n}\n\n/**\n * @internal\n */\nexport function definePreactMarkViewFactory(\n renderPreactRenderer: PreactRendererResult['renderPreactRenderer'],\n removePreactRenderer: PreactRendererResult['removePreactRenderer'],\n): Extension {\n const factory = buildPreactMarkViewCreator(renderPreactRenderer, removePreactRenderer, ProseKitPreactMarkView)\n return defineMarkViewFactory<PreactMarkViewOptions>({\n group: 'preact',\n factory,\n })\n}\n\n/**\n * Defines a mark view using a Preact component.\n *\n * @public\n */\nexport function definePreactMarkView(options: PreactMarkViewOptions): Extension {\n return defineMarkViewComponent<PreactMarkViewOptions>({\n group: 'preact',\n name: options.name,\n args: options,\n })\n}\n","import { defineNodeViewComponent, defineNodeViewFactory, type Extension } from '@prosekit/core'\nimport type { CoreNodeViewUserOptions } from '@prosemirror-adapter/core'\nimport {\n AbstractPreactNodeView,\n buildPreactNodeViewCreator,\n type NodeViewContext,\n type PreactRendererResult,\n} from '@prosemirror-adapter/preact'\nimport { createElement, type ComponentType } from 'preact'\nimport { createPortal } from 'preact/compat'\n\n/**\n * @public\n */\nexport interface PreactNodeViewProps extends NodeViewContext {}\n\n/**\n * @public\n */\nexport type PreactNodeViewComponent = ComponentType<PreactNodeViewProps>\n\n/**\n * Options for {@link definePreactNodeView}.\n *\n * @public\n */\nexport interface PreactNodeViewOptions extends CoreNodeViewUserOptions<PreactNodeViewComponent> {\n /**\n * The name of the node type.\n */\n name: string\n}\n\nclass ProseKitPreactNodeView extends AbstractPreactNodeView<PreactNodeViewComponent> {\n render = () => {\n const UserComponent = this.component\n const props = { ...this.context }\n return createPortal(\n createElement(UserComponent, props),\n this.dom,\n )\n }\n}\n\n/**\n * @internal\n */\nexport function definePreactNodeViewFactory(\n renderPreactRenderer: PreactRendererResult['renderPreactRenderer'],\n removePreactRenderer: PreactRendererResult['removePreactRenderer'],\n): Extension {\n const factory = buildPreactNodeViewCreator(renderPreactRenderer, removePreactRenderer, ProseKitPreactNodeView)\n return defineNodeViewFactory<PreactNodeViewOptions>({\n group: 'preact',\n factory,\n })\n}\n\n/**\n * Defines a node view using a Preact component.\n *\n * @public\n */\nexport function definePreactNodeView(options: PreactNodeViewOptions): Extension {\n return defineNodeViewComponent<PreactNodeViewOptions>({\n group: 'preact',\n name: options.name,\n args: options,\n })\n}\n","import { EditorNotFoundError, type Editor, type Extension } from '@prosekit/core'\nimport { queueExtension } from '@prosekit/web'\nimport { useEffect } from 'preact/hooks'\n\n/**\n * @internal\n */\nexport function useEditorExtension(\n editor: Editor | null | undefined,\n extension: Extension | null,\n): void {\n if (!editor) {\n throw new EditorNotFoundError()\n }\n\n useEffect(() => {\n if (extension) {\n return queueExtension(editor, extension)\n }\n }, [editor, extension])\n}\n","import { union, type Editor } from '@prosekit/core'\nimport { usePreactRenderer } from '@prosemirror-adapter/preact'\nimport { createElement, Fragment, type ComponentChildren, type ComponentType } from 'preact'\nimport { useMemo } from 'preact/hooks'\n\nimport { definePreactMarkViewFactory } from '../extensions/preact-mark-view.ts'\nimport { definePreactNodeViewFactory } from '../extensions/preact-node-view.ts'\nimport { useEditorExtension } from '../hooks/use-editor-extension.ts'\n\ninterface ViewRendererProps {\n editor: Editor\n children: ComponentChildren\n}\n\nexport const ViewRenderer: ComponentType<ViewRendererProps> = ({ editor, children }) => {\n const { renderPreactRenderer, removePreactRenderer, render } = usePreactRenderer()\n\n const extension = useMemo(() => {\n return union([\n definePreactMarkViewFactory(renderPreactRenderer, removePreactRenderer),\n definePreactNodeViewFactory(renderPreactRenderer, removePreactRenderer),\n ])\n }, [renderPreactRenderer, removePreactRenderer])\n\n useEditorExtension(editor, extension)\n\n return createElement(Fragment, null, createElement(Fragment, null, children), createElement(Fragment, null, render()))\n}\n","import type { Editor } from '@prosekit/core'\nimport { createElement, type ComponentChildren, type ComponentType } from 'preact'\n\nimport { EditorContextProvider } from '../contexts/editor-context.ts'\n\nimport { ViewRenderer } from './view-renderer.ts'\n\nexport interface ProseKitProps {\n editor: Editor\n children?: ComponentChildren\n}\n\n/**\n * The root component for a ProseKit editor.\n *\n * @public\n */\nexport const ProseKit: ComponentType<ProseKitProps> = (props) => {\n const { editor, children } = props\n\n return createElement(\n EditorContextProvider,\n { value: editor },\n createElement(\n ViewRenderer,\n { editor, children },\n ),\n )\n}\n","import { useCallback, useLayoutEffect, useRef } from 'preact/hooks'\n\n/**\n * @internal\n */\nexport function useEventCallback<Args extends unknown[], Return>(\n callback: (...args: Args) => Return,\n): (...args: Args) => Return {\n const callbackRef = useRef(callback)\n useLayoutEffect(() => {\n callbackRef.current = callback\n }, [callback])\n return useCallback((...args: Args) => callbackRef.current(...args), [])\n}\n","import { withPriority, type Extension, type Priority } from '@prosekit/core'\nimport { useMemo } from 'preact/hooks'\n\n/**\n * @internal\n */\nexport function usePriorityExtension<T extends Extension = Extension>(\n extension: T | null,\n priority?: Priority | null,\n): T | null {\n return useMemo(() => {\n return extension && priority ? withPriority(extension, priority) : extension\n }, [extension, priority])\n}\n","import type { Editor, Extension, Priority } from '@prosekit/core'\n\nimport { useEditorContext } from '../contexts/editor-context.ts'\n\nimport { useEditorExtension } from './use-editor-extension.ts'\nimport { usePriorityExtension } from './use-priority-extension.ts'\n\nexport interface UseExtensionOptions {\n /**\n * The editor to add the extension to. If not provided, it will use the\n * editor from the nearest `<ProseKit>` component.\n */\n editor?: Editor\n\n /**\n * Optional priority to add the extension with.\n */\n priority?: Priority\n}\n\n/**\n * Add an extension to the editor.\n */\nexport function useExtension(\n /**\n * The extension to add to the editor. If it changes, the previous\n * extension will be removed and the new one (if not null) will be added.\n */\n extension: Extension | null,\n options?: UseExtensionOptions,\n): void {\n const editorContext = useEditorContext()\n useEditorExtension(\n options?.editor || editorContext,\n usePriorityExtension(extension, options?.priority),\n )\n}\n","import { defineDocChangeHandler } from '@prosekit/core'\nimport type { ProseMirrorNode } from '@prosekit/pm/model'\nimport { useMemo } from 'preact/hooks'\n\nimport { useEventCallback } from './use-event-callback.ts'\nimport { useExtension, type UseExtensionOptions } from './use-extension.ts'\n\n/**\n * Calls the given handler whenever the editor document changes.\n *\n * @public\n */\nexport function useDocChange(\n handler: (doc: ProseMirrorNode) => void,\n options?: UseExtensionOptions,\n): void {\n const memoizedHandler = useEventCallback(handler)\n const extension = useMemo(\n () => defineDocChangeHandler((view) => memoizedHandler(view.state.doc)),\n [memoizedHandler],\n )\n useExtension(extension, options)\n}\n","import { defineMountHandler, defineUpdateHandler, EditorNotFoundError, union, type Editor, type Extension } from '@prosekit/core'\nimport { useSyncExternalStore } from 'preact/compat'\nimport { useMemo } from 'preact/hooks'\n\nimport { useEditorContext } from '../contexts/editor-context.ts'\n\nexport interface UseEditorDerivedOptions<E extends Extension = any> {\n /**\n * The editor to add the extension to. If not provided, it will use the\n * editor from the nearest `<ProseKit>` component.\n */\n editor?: Editor<E>\n}\n\n/**\n * Runs a function to derive a value from the editor instance after editor state\n * changes.\n *\n * This is useful when you need to render something based on the editor state,\n * for example, whether the selected text is wrapped in an italic mark.\n *\n * It returns the derived value that updates whenever the editor state changes.\n *\n * @public\n */\nexport function useEditorDerivedValue<E extends Extension, Derived>(\n /**\n * A function that receives the editor instance and returns a derived value.\n *\n * It will be called whenever the editor's document state changes, or when it\n * mounts.\n *\n * This function should be memoized.\n */\n derive: (editor: Editor<E>) => Derived,\n options?: UseEditorDerivedOptions<E>,\n): Derived {\n const editorContext = useEditorContext<E>()\n const editor = options?.editor ?? editorContext\n if (!editor) {\n throw new EditorNotFoundError()\n }\n\n const [subscribe, getSnapshot] = useMemo(() => {\n return createEditorStore(editor, derive)\n }, [editor, derive])\n\n return useSyncExternalStore(subscribe, getSnapshot)\n}\n\nfunction createEditorStore<Derived, E extends Extension = any>(editor: Editor<E>, derive: (editor: Editor<E>) => Derived) {\n let dirty = true\n let derived: Derived\n\n const subscribe = (onChange: VoidFunction): VoidFunction => {\n const handleChange = () => {\n dirty = true\n onChange()\n }\n const extension = union(\n defineUpdateHandler(handleChange),\n defineMountHandler(handleChange),\n )\n return editor.use(extension)\n }\n\n const getSnapshot = () => {\n if (dirty) {\n dirty = false\n derived = derive(editor)\n }\n return derived\n }\n\n return [subscribe, getSnapshot] as const\n}\n","import { defineMountHandler, defineUpdateHandler, ProseKitError, union, type Editor, type Extension } from '@prosekit/core'\nimport { useEffect, useReducer } from 'preact/hooks'\n\nimport { useEditorContext } from '../contexts/editor-context.ts'\n\n/**\n * Retrieves the editor instance from the nearest ProseKit component.\n *\n * @public\n */\nexport function useEditor<E extends Extension = any>(options?: {\n /**\n * Whether to update the component when the editor is mounted or editor state\n * is updated.\n *\n * @default false\n */\n update?: boolean\n}): Editor<E> {\n const update = options?.update ?? false\n\n const editor = useEditorContext<E>()\n if (!editor) {\n throw new ProseKitError(\n 'useEditor must be used within the ProseKit component',\n )\n }\n\n const forceUpdate = useForceUpdate()\n\n useEffect(() => {\n if (update) {\n const extension = union(\n defineMountHandler(forceUpdate),\n defineUpdateHandler(forceUpdate),\n )\n return editor.use(extension)\n }\n }, [editor, update, forceUpdate])\n\n return editor\n}\n\nfunction useForceUpdate() {\n const [, dispatch] = useReducer((x: number) => x + 1, 0)\n return dispatch\n}\n","import { defineKeymap, type Keymap } from '@prosekit/core'\nimport { useMemo } from 'preact/hooks'\n\nimport { useExtension, type UseExtensionOptions } from './use-extension.ts'\n\nexport function useKeymap(keymap: Keymap, options?: UseExtensionOptions): void {\n const extension = useMemo(() => defineKeymap(keymap), [keymap])\n useExtension(extension, options)\n}\n","import { defineUpdateHandler } from '@prosekit/core'\nimport type { EditorState } from '@prosekit/pm/state'\nimport { useMemo } from 'preact/hooks'\n\nimport { useEventCallback } from './use-event-callback.ts'\nimport { useExtension, type UseExtensionOptions } from './use-extension.ts'\n\n/**\n * Calls the given handler whenever the editor state changes.\n *\n * @public\n */\nexport function useStateUpdate(\n handler: (state: EditorState) => void,\n options?: UseExtensionOptions,\n): void {\n const memoizedHandler = useEventCallback(handler)\n const extension = useMemo(\n () => defineUpdateHandler((view) => memoizedHandler(view.state)),\n [memoizedHandler],\n )\n useExtension(extension, options)\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@prosekit/preact",
3
3
  "type": "module",
4
- "version": "0.7.0-beta.3",
4
+ "version": "0.7.0-beta.4",
5
5
  "private": false,
6
6
  "description": "Preact components and utilities for ProseKit",
7
7
  "author": {
@@ -75,8 +75,8 @@
75
75
  "@prosemirror-adapter/core": "^0.5.3",
76
76
  "@prosemirror-adapter/preact": "^0.5.3",
77
77
  "@prosekit/core": "^0.12.0-beta.0",
78
- "@prosekit/pm": "^0.1.15",
79
- "@prosekit/web": "^0.8.0-beta.3"
78
+ "@prosekit/web": "^0.8.0-beta.4",
79
+ "@prosekit/pm": "^0.1.15"
80
80
  },
81
81
  "peerDependencies": {
82
82
  "preact": ">= 10.11.0"
@@ -93,9 +93,9 @@
93
93
  "vitest": "^4.1.4",
94
94
  "vitest-browser-preact": "^1.0.0",
95
95
  "@prosekit/config-ts": "0.0.0",
96
- "@prosekit/config-tsdown": "0.0.0",
97
96
  "@prosekit/config-vitest": "0.0.0",
98
- "@prosekit/testing": "0.0.0"
97
+ "@prosekit/testing": "0.0.0",
98
+ "@prosekit/config-tsdown": "0.0.0"
99
99
  },
100
100
  "publishConfig": {
101
101
  "dev": {}
@@ -1,17 +1,11 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerAutocompleteEmptyElement, type AutocompleteEmptyElement } from '@prosekit/web/autocomplete';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
7
5
  import { forwardRef, type ForwardRefExoticComponent, type RefAttributes } from 'preact/compat';
8
6
  import { useCallback, useRef } from 'preact/hooks';
9
7
 
10
- /**
11
- * Props for the {@link AutocompleteEmpty} Preact component.
12
- *
13
- * @public
14
- */
8
+ /** Props for the {@link AutocompleteEmpty} Preact component. */
15
9
  export interface AutocompleteEmptyProps {}
16
10
 
17
11
  function AutocompleteEmptyComponent(props: AutocompleteEmptyProps, forwardedRef: Ref<AutocompleteEmptyElement>) {
@@ -36,9 +30,5 @@ function AutocompleteEmptyComponent(props: AutocompleteEmptyProps, forwardedRef:
36
30
  return createElement('prosekit-autocomplete-empty', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
37
31
  }
38
32
 
39
- /**
40
- * A Preact component that renders an `prosekit-autocomplete-empty` custom element.
41
- *
42
- * @public
43
- */
33
+ /** A Preact component that renders an `prosekit-autocomplete-empty` custom element. */
44
34
  export const AutocompleteEmpty: ForwardRefExoticComponent<AutocompleteEmptyProps & HTMLAttributes<AutocompleteEmptyElement> & RefAttributes<AutocompleteEmptyElement>> = /* @__PURE__ */ forwardRef(AutocompleteEmptyComponent);
@@ -1,17 +1,11 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerAutocompleteItemElement, type AutocompleteItemElement, type AutocompleteItemProps as AutocompleteItemElementProps, type AutocompleteItemEvents } from '@prosekit/web/autocomplete';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
7
5
  import { forwardRef, type ForwardRefExoticComponent, type RefAttributes } from 'preact/compat';
8
6
  import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
- /**
11
- * Props for the {@link AutocompleteItem} Preact component.
12
- *
13
- * @public
14
- */
8
+ /** Props for the {@link AutocompleteItem} Preact component. */
15
9
  export interface AutocompleteItemProps {
16
10
  /**
17
11
  * The value of the item, which will be matched against the query.
@@ -77,9 +71,5 @@ function AutocompleteItemComponent(props: AutocompleteItemProps, forwardedRef: R
77
71
  return createElement('prosekit-autocomplete-item', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
78
72
  }
79
73
 
80
- /**
81
- * A Preact component that renders an `prosekit-autocomplete-item` custom element.
82
- *
83
- * @public
84
- */
74
+ /** A Preact component that renders an `prosekit-autocomplete-item` custom element. */
85
75
  export const AutocompleteItem: ForwardRefExoticComponent<AutocompleteItemProps & Omit<HTMLAttributes<AutocompleteItemElement>, 'onSelect'> & RefAttributes<AutocompleteItemElement>> = /* @__PURE__ */ forwardRef(AutocompleteItemComponent);
@@ -1,17 +1,11 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerAutocompletePopupElement, type AutocompletePopupElement, type AutocompletePopupEvents } from '@prosekit/web/autocomplete';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
7
5
  import { forwardRef, type ForwardRefExoticComponent, type RefAttributes } from 'preact/compat';
8
6
  import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
- /**
11
- * Props for the {@link AutocompletePopup} Preact component.
12
- *
13
- * @public
14
- */
8
+ /** Props for the {@link AutocompletePopup} Preact component. */
15
9
  export interface AutocompletePopupProps {
16
10
  /**
17
11
  * Emitted when the selected value changes. Only available when multiple is
@@ -70,9 +64,5 @@ function AutocompletePopupComponent(props: AutocompletePopupProps, forwardedRef:
70
64
  return createElement('prosekit-autocomplete-popup', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
71
65
  }
72
66
 
73
- /**
74
- * A Preact component that renders an `prosekit-autocomplete-popup` custom element.
75
- *
76
- * @public
77
- */
67
+ /** A Preact component that renders an `prosekit-autocomplete-popup` custom element. */
78
68
  export const AutocompletePopup: ForwardRefExoticComponent<AutocompletePopupProps & HTMLAttributes<AutocompletePopupElement> & RefAttributes<AutocompletePopupElement>> = /* @__PURE__ */ forwardRef(AutocompletePopupComponent);
@@ -1,17 +1,11 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerAutocompletePositionerElement, type AutocompletePositionerElement, type AutocompletePositionerProps as AutocompletePositionerElementProps } from '@prosekit/web/autocomplete';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
7
5
  import { forwardRef, type ForwardRefExoticComponent, type RefAttributes } from 'preact/compat';
8
6
  import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
- /**
11
- * Props for the {@link AutocompletePositioner} Preact component.
12
- *
13
- * @public
14
- */
8
+ /** Props for the {@link AutocompletePositioner} Preact component. */
15
9
  export interface AutocompletePositionerProps {
16
10
  /**
17
11
  * The placement of the popover, relative to the text cursor.
@@ -145,9 +139,5 @@ function AutocompletePositionerComponent(props: AutocompletePositionerProps, for
145
139
  return createElement('prosekit-autocomplete-positioner', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
146
140
  }
147
141
 
148
- /**
149
- * A Preact component that renders an `prosekit-autocomplete-positioner` custom element.
150
- *
151
- * @public
152
- */
142
+ /** A Preact component that renders an `prosekit-autocomplete-positioner` custom element. */
153
143
  export const AutocompletePositioner: ForwardRefExoticComponent<AutocompletePositionerProps & HTMLAttributes<AutocompletePositionerElement> & RefAttributes<AutocompletePositionerElement>> = /* @__PURE__ */ forwardRef(AutocompletePositionerComponent);
@@ -1,6 +1,4 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerAutocompleteRootElement, type AutocompleteRootElement, type AutocompleteRootProps as AutocompleteRootElementProps, type AutocompleteRootEvents } from '@prosekit/web/autocomplete';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
@@ -9,11 +7,7 @@ import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
8
  import { useEditorContext } from '../../contexts/editor-context.ts';
11
9
 
12
- /**
13
- * Props for the {@link AutocompleteRoot} Preact component.
14
- *
15
- * @public
16
- */
10
+ /** Props for the {@link AutocompleteRoot} Preact component. */
17
11
  export interface AutocompleteRootProps {
18
12
  /**
19
13
  * The ProseKit editor instance.
@@ -99,9 +93,5 @@ function AutocompleteRootComponent(props: AutocompleteRootProps, forwardedRef: R
99
93
  return createElement('prosekit-autocomplete-root', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
100
94
  }
101
95
 
102
- /**
103
- * A Preact component that renders an `prosekit-autocomplete-root` custom element.
104
- *
105
- * @public
106
- */
96
+ /** A Preact component that renders an `prosekit-autocomplete-root` custom element. */
107
97
  export const AutocompleteRoot: ForwardRefExoticComponent<AutocompleteRootProps & HTMLAttributes<AutocompleteRootElement> & RefAttributes<AutocompleteRootElement>> = /* @__PURE__ */ forwardRef(AutocompleteRootComponent);
@@ -1,6 +1,4 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  export { AutocompleteEmpty, type AutocompleteEmptyProps } from './autocomplete-empty.gen.ts';
6
4
 
@@ -1,6 +1,4 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerBlockHandleAddElement, type BlockHandleAddElement, type BlockHandleAddProps as BlockHandleAddElementProps } from '@prosekit/web/block-handle';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
@@ -9,11 +7,7 @@ import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
8
  import { useEditorContext } from '../../contexts/editor-context.ts';
11
9
 
12
- /**
13
- * Props for the {@link BlockHandleAdd} Preact component.
14
- *
15
- * @public
16
- */
10
+ /** Props for the {@link BlockHandleAdd} Preact component. */
17
11
  export interface BlockHandleAddProps {
18
12
  /**
19
13
  * The ProseKit editor instance.
@@ -54,9 +48,5 @@ function BlockHandleAddComponent(props: BlockHandleAddProps, forwardedRef: Ref<B
54
48
  return createElement('prosekit-block-handle-add', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
55
49
  }
56
50
 
57
- /**
58
- * A Preact component that renders an `prosekit-block-handle-add` custom element.
59
- *
60
- * @public
61
- */
51
+ /** A Preact component that renders an `prosekit-block-handle-add` custom element. */
62
52
  export const BlockHandleAdd: ForwardRefExoticComponent<BlockHandleAddProps & HTMLAttributes<BlockHandleAddElement> & RefAttributes<BlockHandleAddElement>> = /* @__PURE__ */ forwardRef(BlockHandleAddComponent);
@@ -1,6 +1,4 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerBlockHandleDraggableElement, type BlockHandleDraggableElement, type BlockHandleDraggableProps as BlockHandleDraggableElementProps } from '@prosekit/web/block-handle';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
@@ -9,11 +7,7 @@ import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
8
  import { useEditorContext } from '../../contexts/editor-context.ts';
11
9
 
12
- /**
13
- * Props for the {@link BlockHandleDraggable} Preact component.
14
- *
15
- * @public
16
- */
10
+ /** Props for the {@link BlockHandleDraggable} Preact component. */
17
11
  export interface BlockHandleDraggableProps {
18
12
  /**
19
13
  * The ProseKit editor instance.
@@ -54,9 +48,5 @@ function BlockHandleDraggableComponent(props: BlockHandleDraggableProps, forward
54
48
  return createElement('prosekit-block-handle-draggable', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
55
49
  }
56
50
 
57
- /**
58
- * A Preact component that renders an `prosekit-block-handle-draggable` custom element.
59
- *
60
- * @public
61
- */
51
+ /** A Preact component that renders an `prosekit-block-handle-draggable` custom element. */
62
52
  export const BlockHandleDraggable: ForwardRefExoticComponent<BlockHandleDraggableProps & HTMLAttributes<BlockHandleDraggableElement> & RefAttributes<BlockHandleDraggableElement>> = /* @__PURE__ */ forwardRef(BlockHandleDraggableComponent);
@@ -1,17 +1,11 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerBlockHandlePopupElement, type BlockHandlePopupElement } from '@prosekit/web/block-handle';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
7
5
  import { forwardRef, type ForwardRefExoticComponent, type RefAttributes } from 'preact/compat';
8
6
  import { useCallback, useRef } from 'preact/hooks';
9
7
 
10
- /**
11
- * Props for the {@link BlockHandlePopup} Preact component.
12
- *
13
- * @public
14
- */
8
+ /** Props for the {@link BlockHandlePopup} Preact component. */
15
9
  export interface BlockHandlePopupProps {}
16
10
 
17
11
  function BlockHandlePopupComponent(props: BlockHandlePopupProps, forwardedRef: Ref<BlockHandlePopupElement>) {
@@ -36,9 +30,5 @@ function BlockHandlePopupComponent(props: BlockHandlePopupProps, forwardedRef: R
36
30
  return createElement('prosekit-block-handle-popup', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
37
31
  }
38
32
 
39
- /**
40
- * A Preact component that renders an `prosekit-block-handle-popup` custom element.
41
- *
42
- * @public
43
- */
33
+ /** A Preact component that renders an `prosekit-block-handle-popup` custom element. */
44
34
  export const BlockHandlePopup: ForwardRefExoticComponent<BlockHandlePopupProps & HTMLAttributes<BlockHandlePopupElement> & RefAttributes<BlockHandlePopupElement>> = /* @__PURE__ */ forwardRef(BlockHandlePopupComponent);
@@ -1,17 +1,11 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerBlockHandlePositionerElement, type BlockHandlePositionerElement, type BlockHandlePositionerProps as BlockHandlePositionerElementProps } from '@prosekit/web/block-handle';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
7
5
  import { forwardRef, type ForwardRefExoticComponent, type RefAttributes } from 'preact/compat';
8
6
  import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
- /**
11
- * Props for the {@link BlockHandlePositioner} Preact component.
12
- *
13
- * @public
14
- */
8
+ /** Props for the {@link BlockHandlePositioner} Preact component. */
15
9
  export interface BlockHandlePositionerProps {
16
10
  /**
17
11
  * The placement of the popover, relative to the hovered block.
@@ -163,9 +157,5 @@ function BlockHandlePositionerComponent(props: BlockHandlePositionerProps, forwa
163
157
  return createElement('prosekit-block-handle-positioner', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
164
158
  }
165
159
 
166
- /**
167
- * A Preact component that renders an `prosekit-block-handle-positioner` custom element.
168
- *
169
- * @public
170
- */
160
+ /** A Preact component that renders an `prosekit-block-handle-positioner` custom element. */
171
161
  export const BlockHandlePositioner: ForwardRefExoticComponent<BlockHandlePositionerProps & HTMLAttributes<BlockHandlePositionerElement> & RefAttributes<BlockHandlePositionerElement>> = /* @__PURE__ */ forwardRef(BlockHandlePositionerComponent);
@@ -1,6 +1,4 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerBlockHandleRootElement, type BlockHandleRootElement, type BlockHandleRootProps as BlockHandleRootElementProps, type BlockHandleRootEvents } from '@prosekit/web/block-handle';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
@@ -9,11 +7,7 @@ import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
8
  import { useEditorContext } from '../../contexts/editor-context.ts';
11
9
 
12
- /**
13
- * Props for the {@link BlockHandleRoot} Preact component.
14
- *
15
- * @public
16
- */
10
+ /** Props for the {@link BlockHandleRoot} Preact component. */
17
11
  export interface BlockHandleRootProps {
18
12
  /**
19
13
  * The ProseKit editor instance.
@@ -74,9 +68,5 @@ function BlockHandleRootComponent(props: BlockHandleRootProps, forwardedRef: Ref
74
68
  return createElement('prosekit-block-handle-root', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
75
69
  }
76
70
 
77
- /**
78
- * A Preact component that renders an `prosekit-block-handle-root` custom element.
79
- *
80
- * @public
81
- */
71
+ /** A Preact component that renders an `prosekit-block-handle-root` custom element. */
82
72
  export const BlockHandleRoot: ForwardRefExoticComponent<BlockHandleRootProps & HTMLAttributes<BlockHandleRootElement> & RefAttributes<BlockHandleRootElement>> = /* @__PURE__ */ forwardRef(BlockHandleRootComponent);
@@ -1,6 +1,4 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  export { BlockHandleAdd, type BlockHandleAddProps } from './block-handle-add.gen.ts';
6
4
 
@@ -1,6 +1,4 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  import { registerDropIndicatorElement, type DropIndicatorElement, type DropIndicatorProps as DropIndicatorElementProps } from '@prosekit/web/drop-indicator';
6
4
  import { createElement, type HTMLAttributes, type Ref } from 'preact';
@@ -9,11 +7,7 @@ import { useCallback, useRef, useLayoutEffect } from 'preact/hooks';
9
7
 
10
8
  import { useEditorContext } from '../../contexts/editor-context.ts';
11
9
 
12
- /**
13
- * Props for the {@link DropIndicator} Preact component.
14
- *
15
- * @public
16
- */
10
+ /** Props for the {@link DropIndicator} Preact component. */
17
11
  export interface DropIndicatorProps {
18
12
  /**
19
13
  * The ProseKit editor instance.
@@ -60,9 +54,5 @@ function DropIndicatorComponent(props: DropIndicatorProps, forwardedRef: Ref<Dro
60
54
  return createElement('prosekit-drop-indicator', { ...restProps, ref: mergedRef, suppressHydrationWarning: true });
61
55
  }
62
56
 
63
- /**
64
- * A Preact component that renders an `prosekit-drop-indicator` custom element.
65
- *
66
- * @public
67
- */
57
+ /** A Preact component that renders an `prosekit-drop-indicator` custom element. */
68
58
  export const DropIndicator: ForwardRefExoticComponent<DropIndicatorProps & HTMLAttributes<DropIndicatorElement> & RefAttributes<DropIndicatorElement>> = /* @__PURE__ */ forwardRef(DropIndicatorComponent);
@@ -1,5 +1,3 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  export { DropIndicator, type DropIndicatorProps } from './drop-indicator.gen.ts';
@@ -1,6 +1,4 @@
1
- /**
2
- * This file is auto-generated by the "@aria-ui/cli" tool. Do not edit this file directly.
3
- */
1
+ // This file is auto-generated by "@aria-ui/cli". Do not edit this file directly.
4
2
 
5
3
  export { InlinePopoverPopup, type InlinePopoverPopupProps } from './inline-popover-popup.gen.ts';
6
4