@prosekit/web 0.8.0-beta.0 → 0.8.0-beta.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.
Files changed (207) hide show
  1. package/dist/prosekit-web-autocomplete.d.ts +112 -90
  2. package/dist/prosekit-web-autocomplete.d.ts.map +1 -1
  3. package/dist/prosekit-web-autocomplete.js +292 -217
  4. package/dist/prosekit-web-autocomplete.js.map +1 -1
  5. package/dist/prosekit-web-block-handle.d.ts +95 -62
  6. package/dist/prosekit-web-block-handle.d.ts.map +1 -1
  7. package/dist/prosekit-web-block-handle.js +219 -114
  8. package/dist/prosekit-web-block-handle.js.map +1 -1
  9. package/dist/prosekit-web-drop-indicator.d.ts +13 -15
  10. package/dist/prosekit-web-drop-indicator.d.ts.map +1 -1
  11. package/dist/prosekit-web-drop-indicator.js +34 -30
  12. package/dist/prosekit-web-drop-indicator.js.map +1 -1
  13. package/dist/prosekit-web-inline-popover.d.ts +88 -54
  14. package/dist/prosekit-web-inline-popover.d.ts.map +1 -1
  15. package/dist/prosekit-web-inline-popover.js +129 -79
  16. package/dist/prosekit-web-inline-popover.js.map +1 -1
  17. package/dist/prosekit-web-menu.d.ts +13 -0
  18. package/dist/prosekit-web-menu.d.ts.map +1 -0
  19. package/dist/prosekit-web-menu.js +53 -0
  20. package/dist/prosekit-web-menu.js.map +1 -0
  21. package/dist/prosekit-web-popover.d.ts +7 -26
  22. package/dist/prosekit-web-popover.d.ts.map +1 -1
  23. package/dist/prosekit-web-popover.js +31 -29
  24. package/dist/prosekit-web-popover.js.map +1 -1
  25. package/dist/prosekit-web-resizable.d.ts +92 -51
  26. package/dist/prosekit-web-resizable.d.ts.map +1 -1
  27. package/dist/prosekit-web-resizable.js +139 -131
  28. package/dist/prosekit-web-resizable.js.map +1 -1
  29. package/dist/prosekit-web-table-handle.d.ts +166 -199
  30. package/dist/prosekit-web-table-handle.d.ts.map +1 -1
  31. package/dist/prosekit-web-table-handle.js +495 -496
  32. package/dist/prosekit-web-table-handle.js.map +1 -1
  33. package/dist/prosekit-web-tooltip.d.ts +7 -26
  34. package/dist/prosekit-web-tooltip.d.ts.map +1 -1
  35. package/dist/prosekit-web-tooltip.js +31 -29
  36. package/dist/prosekit-web-tooltip.js.map +1 -1
  37. package/dist/use-editor-extension.js +2 -2
  38. package/dist/use-editor-extension.js.map +1 -1
  39. package/dist/use-scrolling.js +17 -8
  40. package/dist/use-scrolling.js.map +1 -1
  41. package/package.json +28 -23
  42. package/src/components/autocomplete/autocomplete-empty.ts +45 -0
  43. package/src/components/autocomplete/autocomplete-item.ts +65 -0
  44. package/src/components/autocomplete/autocomplete-popup.ts +95 -0
  45. package/src/components/autocomplete/autocomplete-positioner.ts +98 -0
  46. package/src/components/autocomplete/autocomplete-root.ts +280 -0
  47. package/src/components/autocomplete/context.ts +16 -14
  48. package/src/components/autocomplete/index.ts +65 -0
  49. package/src/components/block-handle/block-handle-add.ts +71 -0
  50. package/src/components/block-handle/block-handle-draggable.ts +158 -0
  51. package/src/components/block-handle/block-handle-popup.ts +43 -0
  52. package/src/components/block-handle/block-handle-positioner.ts +89 -0
  53. package/src/components/block-handle/block-handle-root.ts +116 -0
  54. package/src/components/block-handle/context.ts +9 -18
  55. package/src/components/block-handle/hover-state.ts +16 -0
  56. package/src/components/block-handle/index.ts +59 -0
  57. package/src/components/block-handle/{block-handle-popover/pointer-move.ts → pointer-move.ts} +8 -7
  58. package/src/components/block-handle/{block-handle-draggable/set-drag-preview.ts → set-drag-preview.ts} +4 -4
  59. package/src/components/block-handle/use-hover-extension.ts +65 -0
  60. package/src/components/drop-indicator/drop-indicator.ts +128 -0
  61. package/src/components/drop-indicator/index.ts +18 -0
  62. package/src/components/inline-popover/index.ts +41 -0
  63. package/src/components/inline-popover/inline-popover-popup.ts +52 -0
  64. package/src/components/inline-popover/inline-popover-positioner.ts +98 -0
  65. package/src/components/inline-popover/inline-popover-root.ts +122 -0
  66. package/src/components/inline-popover/store.ts +6 -0
  67. package/src/components/menu/index.ts +92 -0
  68. package/src/components/popover/index.ts +53 -0
  69. package/src/components/resizable/{resizable-handle/calc-resize.ts → calc-resize.ts} +1 -1
  70. package/src/components/resizable/context.ts +3 -6
  71. package/src/components/resizable/index.ts +32 -0
  72. package/src/components/resizable/resizable-handle.ts +134 -0
  73. package/src/components/resizable/resizable-root.ts +184 -0
  74. package/src/components/table-handle/dnd.ts +16 -27
  75. package/src/components/table-handle/index.ts +125 -0
  76. package/src/components/table-handle/{table-handle-drag-preview/render-preview.ts → render-preview.ts} +5 -5
  77. package/src/components/table-handle/shared.ts +61 -0
  78. package/src/components/table-handle/store.ts +117 -0
  79. package/src/components/table-handle/table-handle-column-menu-root.ts +51 -0
  80. package/src/components/table-handle/table-handle-column-menu-trigger.ts +107 -0
  81. package/src/components/table-handle/table-handle-column-popup.ts +44 -0
  82. package/src/components/table-handle/table-handle-column-positioner.ts +67 -0
  83. package/src/components/table-handle/table-handle-drag-preview.ts +169 -0
  84. package/src/components/table-handle/table-handle-drop-indicator.ts +166 -0
  85. package/src/components/table-handle/table-handle-root.ts +103 -0
  86. package/src/components/table-handle/table-handle-row-menu-root.ts +51 -0
  87. package/src/components/table-handle/table-handle-row-menu-trigger.ts +107 -0
  88. package/src/components/table-handle/table-handle-row-popup.ts +42 -0
  89. package/src/components/table-handle/table-handle-row-positioner.ts +67 -0
  90. package/src/components/table-handle/use-drop.ts +74 -0
  91. package/src/components/table-handle/{hooks/use-empty-image.ts → use-empty-image.ts} +2 -3
  92. package/src/components/table-handle/utils.ts +0 -11
  93. package/src/components/tooltip/index.ts +52 -0
  94. package/src/hooks/use-editor-extension.ts +4 -4
  95. package/src/hooks/use-editor-focus-event.ts +4 -4
  96. package/src/hooks/use-editor-typing.ts +12 -16
  97. package/src/hooks/use-editor-update-event.ts +4 -4
  98. package/src/hooks/use-keymap.ts +4 -4
  99. package/src/hooks/use-scrolling.ts +11 -10
  100. package/src/hooks/use-selecting.ts +8 -15
  101. package/src/utils/event.ts +28 -0
  102. package/src/utils/lazy-signal.spec.ts +68 -0
  103. package/src/utils/lazy-signal.ts +17 -0
  104. package/src/utils/prefers-reduced-motion.ts +6 -0
  105. package/src/utils/prevent-default.ts +3 -0
  106. package/src/utils/use-html-element-at.ts +17 -0
  107. package/src/utils/use-no-focus.ts +7 -0
  108. package/dist/get-default-state.js +0 -11
  109. package/dist/get-default-state.js.map +0 -1
  110. package/src/components/autocomplete/autocomplete-empty/element.gen.ts +0 -18
  111. package/src/components/autocomplete/autocomplete-empty/setup.ts +0 -6
  112. package/src/components/autocomplete/autocomplete-empty/types.ts +0 -13
  113. package/src/components/autocomplete/autocomplete-item/element.gen.ts +0 -18
  114. package/src/components/autocomplete/autocomplete-item/setup.ts +0 -30
  115. package/src/components/autocomplete/autocomplete-item/types.ts +0 -25
  116. package/src/components/autocomplete/autocomplete-list/element.gen.ts +0 -18
  117. package/src/components/autocomplete/autocomplete-list/setup.ts +0 -125
  118. package/src/components/autocomplete/autocomplete-list/types.ts +0 -22
  119. package/src/components/autocomplete/autocomplete-popover/element.gen.ts +0 -18
  120. package/src/components/autocomplete/autocomplete-popover/setup.ts +0 -169
  121. package/src/components/autocomplete/autocomplete-popover/types.ts +0 -100
  122. package/src/components/autocomplete/index.gen.ts +0 -17
  123. package/src/components/block-handle/block-handle-add/element.gen.ts +0 -18
  124. package/src/components/block-handle/block-handle-add/setup.ts +0 -33
  125. package/src/components/block-handle/block-handle-add/types.ts +0 -23
  126. package/src/components/block-handle/block-handle-draggable/element.gen.ts +0 -18
  127. package/src/components/block-handle/block-handle-draggable/setup.ts +0 -113
  128. package/src/components/block-handle/block-handle-draggable/types.ts +0 -23
  129. package/src/components/block-handle/block-handle-popover/element.gen.ts +0 -18
  130. package/src/components/block-handle/block-handle-popover/setup.ts +0 -68
  131. package/src/components/block-handle/block-handle-popover/types.ts +0 -81
  132. package/src/components/block-handle/index.gen.ts +0 -13
  133. package/src/components/drop-indicator/drop-indicator/element.gen.ts +0 -18
  134. package/src/components/drop-indicator/drop-indicator/setup.ts +0 -75
  135. package/src/components/drop-indicator/drop-indicator/types.ts +0 -31
  136. package/src/components/drop-indicator/index.gen.ts +0 -5
  137. package/src/components/inline-popover/index.gen.ts +0 -5
  138. package/src/components/inline-popover/inline-popover/element.gen.ts +0 -18
  139. package/src/components/inline-popover/inline-popover/setup.ts +0 -111
  140. package/src/components/inline-popover/inline-popover/types.ts +0 -112
  141. package/src/components/popover/index.gen.ts +0 -13
  142. package/src/components/popover/popover-content/element.gen.ts +0 -18
  143. package/src/components/popover/popover-content/setup.ts +0 -1
  144. package/src/components/popover/popover-content/types.ts +0 -6
  145. package/src/components/popover/popover-root/element.gen.ts +0 -18
  146. package/src/components/popover/popover-root/setup.ts +0 -1
  147. package/src/components/popover/popover-root/types.ts +0 -6
  148. package/src/components/popover/popover-trigger/element.gen.ts +0 -18
  149. package/src/components/popover/popover-trigger/setup.ts +0 -1
  150. package/src/components/popover/popover-trigger/types.ts +0 -6
  151. package/src/components/resizable/index.gen.ts +0 -9
  152. package/src/components/resizable/resizable-handle/element.gen.ts +0 -18
  153. package/src/components/resizable/resizable-handle/setup.ts +0 -106
  154. package/src/components/resizable/resizable-handle/types.ts +0 -29
  155. package/src/components/resizable/resizable-root/element.gen.ts +0 -18
  156. package/src/components/resizable/resizable-root/setup.ts +0 -84
  157. package/src/components/resizable/resizable-root/types.ts +0 -59
  158. package/src/components/table-handle/context.ts +0 -43
  159. package/src/components/table-handle/hooks/use-drop.ts +0 -85
  160. package/src/components/table-handle/index.gen.ts +0 -37
  161. package/src/components/table-handle/table-handle-column-root/element.gen.ts +0 -18
  162. package/src/components/table-handle/table-handle-column-root/setup.ts +0 -60
  163. package/src/components/table-handle/table-handle-column-root/types.ts +0 -73
  164. package/src/components/table-handle/table-handle-column-trigger/element.gen.ts +0 -18
  165. package/src/components/table-handle/table-handle-column-trigger/setup.ts +0 -64
  166. package/src/components/table-handle/table-handle-column-trigger/types.ts +0 -20
  167. package/src/components/table-handle/table-handle-drag-preview/element.gen.ts +0 -18
  168. package/src/components/table-handle/table-handle-drag-preview/setup.ts +0 -57
  169. package/src/components/table-handle/table-handle-drag-preview/types.ts +0 -14
  170. package/src/components/table-handle/table-handle-drag-preview/updater.ts +0 -90
  171. package/src/components/table-handle/table-handle-drop-indicator/element.gen.ts +0 -18
  172. package/src/components/table-handle/table-handle-drop-indicator/setup.ts +0 -52
  173. package/src/components/table-handle/table-handle-drop-indicator/types.ts +0 -15
  174. package/src/components/table-handle/table-handle-drop-indicator/updater.ts +0 -96
  175. package/src/components/table-handle/table-handle-popover-content/element.gen.ts +0 -18
  176. package/src/components/table-handle/table-handle-popover-content/setup.ts +0 -83
  177. package/src/components/table-handle/table-handle-popover-content/types.ts +0 -32
  178. package/src/components/table-handle/table-handle-popover-item/element.gen.ts +0 -18
  179. package/src/components/table-handle/table-handle-popover-item/setup.ts +0 -17
  180. package/src/components/table-handle/table-handle-popover-item/types.ts +0 -16
  181. package/src/components/table-handle/table-handle-root/element.gen.ts +0 -18
  182. package/src/components/table-handle/table-handle-root/setup.ts +0 -86
  183. package/src/components/table-handle/table-handle-root/types.ts +0 -23
  184. package/src/components/table-handle/table-handle-row-root/element.gen.ts +0 -18
  185. package/src/components/table-handle/table-handle-row-root/setup.ts +0 -70
  186. package/src/components/table-handle/table-handle-row-root/types.ts +0 -68
  187. package/src/components/table-handle/table-handle-row-trigger/element.gen.ts +0 -18
  188. package/src/components/table-handle/table-handle-row-trigger/setup.ts +0 -63
  189. package/src/components/table-handle/table-handle-row-trigger/types.ts +0 -23
  190. package/src/components/tooltip/index.gen.ts +0 -13
  191. package/src/components/tooltip/tooltip-content/element.gen.ts +0 -18
  192. package/src/components/tooltip/tooltip-content/setup.ts +0 -1
  193. package/src/components/tooltip/tooltip-content/types.ts +0 -6
  194. package/src/components/tooltip/tooltip-root/element.gen.ts +0 -18
  195. package/src/components/tooltip/tooltip-root/setup.ts +0 -1
  196. package/src/components/tooltip/tooltip-root/types.ts +0 -6
  197. package/src/components/tooltip/tooltip-trigger/element.gen.ts +0 -18
  198. package/src/components/tooltip/tooltip-trigger/setup.ts +0 -1
  199. package/src/components/tooltip/tooltip-trigger/types.ts +0 -6
  200. package/src/hooks/use-first-rendering.ts +0 -15
  201. package/src/utils/get-default-state.spec.ts +0 -42
  202. package/src/utils/get-default-state.ts +0 -18
  203. /package/src/components/autocomplete/{autocomplete-popover/helpers.spec.ts → helpers.spec.ts} +0 -0
  204. /package/src/components/autocomplete/{autocomplete-popover/helpers.ts → helpers.ts} +0 -0
  205. /package/src/components/inline-popover/{inline-popover/virtual-selection-element.ts → virtual-selection-element.ts} +0 -0
  206. /package/src/components/resizable/{resizable-handle/calc-resize.spec.ts → calc-resize.spec.ts} +0 -0
  207. /package/src/components/table-handle/{table-handle-drop-indicator/calc-drag-over.ts → calc-drag-over.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"prosekit-web-inline-popover.js","names":["overlayPositionerProps","overlayPositionerEvents"],"sources":["../src/hooks/use-editor-focus-event.ts","../src/hooks/use-editor-update-event.ts","../src/hooks/use-keymap.ts","../src/components/inline-popover/inline-popover/virtual-selection-element.ts","../src/components/inline-popover/inline-popover/setup.ts","../src/components/inline-popover/inline-popover/types.ts","../src/components/inline-popover/inline-popover/element.gen.ts"],"sourcesContent":["import type { ConnectableElement, ReadonlySignal } from '@aria-ui/core'\nimport { defineFocusChangeHandler, type Editor, type FocusChangeHandler } from '@prosekit/core'\n\nimport { useEditorExtension } from './use-editor-extension.ts'\n\n/**\n * @internal\n */\nexport function useEditorFocusChangeEvent(\n host: ConnectableElement,\n editor: ReadonlySignal<Editor | null>,\n handler: FocusChangeHandler,\n): void {\n const extension = defineFocusChangeHandler(handler)\n useEditorExtension(host, editor, extension)\n}\n","import type { ConnectableElement, ReadonlySignal } from '@aria-ui/core'\nimport { defineUpdateHandler, type Editor, type UpdateHandler } from '@prosekit/core'\n\nimport { useEditorExtension } from './use-editor-extension.ts'\n\n/**\n * @internal\n */\nexport function useEditorUpdateEvent(\n host: ConnectableElement,\n editor: ReadonlySignal<Editor | null>,\n handler: UpdateHandler,\n): void {\n const extension = defineUpdateHandler(handler)\n useEditorExtension(host, editor, extension)\n}\n","import type { ConnectableElement, ReadonlySignal } from '@aria-ui/core'\nimport { defineKeymap, type Editor, type Keymap } from '@prosekit/core'\n\nimport { useEditorExtension } from './use-editor-extension.ts'\n\nexport function useKeymap(\n host: ConnectableElement,\n editor: ReadonlySignal<Editor | null>,\n keymap: Keymap,\n): void {\n const extension = defineKeymap(keymap)\n useEditorExtension(host, editor, extension)\n}\n","import type { ReferenceElement } from '@floating-ui/dom'\nimport { containsInlineNode, isInCodeBlock, isTextSelection } from '@prosekit/core'\nimport type { EditorView } from '@prosekit/pm/view'\n\nexport function getVirtualSelectionElement(\n view: EditorView,\n): ReferenceElement | undefined {\n if (typeof window === 'undefined' || view.isDestroyed) {\n return\n }\n\n const selection = view.state.selection\n\n if (\n !selection.empty\n && !isInCodeBlock(selection)\n && isTextSelection(selection)\n && containsInlineNode(view.state.doc, selection.from, selection.to)\n ) {\n return getDomDecoration(view) || getInlineDecoration(view)\n }\n}\n\nfunction getDomDecoration(view: EditorView): ReferenceElement | undefined {\n const range = getDomRange(view)\n if (range) {\n // To get it work properly in Safari, we cannot return the range directly.\n // We have to return a contextElement.\n return {\n contextElement: view.dom,\n getBoundingClientRect: () => range.getBoundingClientRect(),\n getClientRects: () => range.getClientRects(),\n }\n }\n}\n\nfunction getDomRange(view: EditorView): Range | undefined {\n const win = view.dom.ownerDocument.defaultView\n const selection = win?.getSelection()\n if (!selection || selection.isCollapsed) {\n return\n }\n\n const range = typeof selection.rangeCount === 'number'\n && selection.rangeCount > 0\n && selection.getRangeAt(0)\n\n if (!range) {\n return\n }\n\n return range\n}\n\nfunction getInlineDecoration(view: EditorView): ReferenceElement | undefined {\n const match = view.dom.querySelectorAll('.prosekit-virtual-selection')\n\n if (match.length === 0) {\n return\n }\n if (match.length === 1) {\n return match[0]\n }\n\n const items = Array.from(match)\n return {\n contextElement: items[0],\n getBoundingClientRect: () => items[0].getBoundingClientRect(),\n getClientRects: () => items.map((item) => item.getBoundingClientRect()),\n }\n}\n","import {\n createComputed,\n createSignal,\n useAttribute,\n useEffect,\n type ConnectableElement,\n type ReadonlySignal,\n type SetupOptions,\n} from '@aria-ui/core'\nimport { useOverlayPositionerState } from '@aria-ui/overlay/elements'\nimport { usePresence } from '@aria-ui/presence'\nimport type { ReferenceElement } from '@floating-ui/dom'\nimport type { Editor } from '@prosekit/core'\nimport type { Selection } from '@prosekit/pm/state'\n\nimport { useEditorFocusChangeEvent } from '../../../hooks/use-editor-focus-event.ts'\nimport { useEditorUpdateEvent } from '../../../hooks/use-editor-update-event.ts'\nimport { useKeymap } from '../../../hooks/use-keymap.ts'\n\nimport type { InlinePopoverEvents, InlinePopoverProps } from './types.ts'\nimport { getVirtualSelectionElement } from './virtual-selection-element.ts'\n\n/**\n * @internal\n */\nexport function useInlinePopover(\n host: ConnectableElement,\n { state, emit }: SetupOptions<InlinePopoverProps, InlinePopoverEvents>,\n): void {\n const { editor, defaultOpen, open, ...overlayState } = state\n\n const reference = useInlinePopoverReference(host, editor)\n const hasReference = createComputed(() => !!reference.get())\n\n useEffect(host, () => {\n const hasReferenceValue = hasReference.get()\n const defaultOpenValue = defaultOpen.peek()\n const openValue = open.peek()\n\n if (defaultOpenValue || openValue) {\n emit('openChange', hasReferenceValue)\n }\n })\n\n useEffect(host, () => {\n const hasReferenceValue = hasReference.get()\n const defaultOpenValue = defaultOpen.peek()\n\n if (hasReferenceValue && defaultOpenValue) {\n open.set(true)\n } else if (!hasReferenceValue) {\n open.set(false)\n }\n })\n\n useKeymap(host, editor, {\n Escape: () => {\n if (!state.dismissOnEscape.peek() || !open.peek()) {\n return false\n }\n open.set(false)\n emit('openChange', false)\n return true\n },\n })\n\n useOverlayPositionerState(host, overlayState, { reference })\n\n useAttribute(host, 'data-state', () => (open.get() ? 'open' : 'closed'))\n usePresence(host, open)\n}\n\nfunction useInlinePopoverReference(\n host: ConnectableElement,\n editor: ReadonlySignal<Editor | null>,\n) {\n const reference = createSignal<ReferenceElement | null>(null)\n let editorFocused = false\n\n useEditorFocusChangeEvent(host, editor, (focus) => {\n editorFocused = focus\n })\n\n let prevSelection: Selection | undefined\n\n useEditorUpdateEvent(host, editor, (view) => {\n const isPopoverFocused = !editorFocused && host.contains(host.ownerDocument.activeElement)\n\n if (isPopoverFocused) {\n return\n }\n\n const { selection } = view.state\n const selectionUnchanged = prevSelection?.eq(selection)\n prevSelection = selection\n\n // Skip reference update if only the document content has changed, not the\n // selection itself.\n //\n // Example: If the user selects text and then applies mark bold using the\n // popover, the selection may widen, but we don't want to reposition the\n // popover.\n if (selectionUnchanged) {\n return\n }\n\n reference.set(getVirtualSelectionElement(view) || null)\n })\n\n return reference\n}\n","import type { EventDeclarations, PropDeclarations } from '@aria-ui/core'\nimport {\n overlayPositionerEvents,\n overlayPositionerProps,\n type OverlayPositionerEvents,\n type OverlayPositionerProps,\n} from '@aria-ui/overlay'\nimport type { Editor } from '@prosekit/core'\n\nexport interface InlinePopoverProps extends\n Omit<\n OverlayPositionerProps,\n 'placement' | 'offset' | 'hide' | 'overlap' | 'inline' | 'overflowPadding'\n >\n{\n /**\n * The ProseKit editor instance.\n *\n * @default null\n * @hidden\n */\n editor: Editor | null\n\n /**\n * Whether the popover is open by default when some inline content is\n * selected.\n *\n * When `defaultOpen` is true, the popover will open or close based on the\n * inline selection. When `defaultOpen` is false, the popover will never be\n * opened unless the `open` prop is true.\n *\n * @default true\n */\n defaultOpen: boolean\n\n /**\n * Whether the popover is open.\n *\n * Notice that the popover will be always hidden if the inline selection is\n * empty.\n *\n * @default false\n */\n open: boolean\n\n /**\n * Whether the inline popover should be dismissed when the editor receives an\n * Escape key press.\n *\n * @default true\n */\n dismissOnEscape: boolean\n\n /**\n * @default \"top\"\n */\n placement: OverlayPositionerProps['placement']\n\n /**\n * @default 12\n */\n offset: OverlayPositionerProps['offset']\n\n /**\n * @default true\n */\n hide: OverlayPositionerProps['hide']\n\n /**\n * @default true\n */\n overlap: OverlayPositionerProps['overlap']\n\n /**\n * @default true\n */\n inline: OverlayPositionerProps['inline']\n\n /**\n * @default 8\n */\n overflowPadding: OverlayPositionerProps['overflowPadding']\n}\n\n/** @internal */\nexport const inlinePopoverProps: PropDeclarations<InlinePopoverProps> = Object.freeze({\n ...overlayPositionerProps,\n editor: { default: null },\n defaultOpen: { default: true },\n open: { default: false },\n dismissOnEscape: { default: true },\n\n placement: { default: 'top' },\n offset: { default: 12 },\n hide: { default: true },\n overlap: { default: true },\n inline: { default: true },\n overflowPadding: { default: 8 },\n})\n\nexport interface InlinePopoverEvents extends OverlayPositionerEvents {\n /**\n * Fired when the open state changes.\n */\n openChange: CustomEvent<boolean>\n}\n\n/** @internal */\nexport const inlinePopoverEvents: EventDeclarations<InlinePopoverEvents> = {\n ...overlayPositionerEvents,\n openChange: {},\n}\n","import { defineCustomElement, registerCustomElement, type BaseElementConstructor } from \"@aria-ui/core\"\n\nimport { useInlinePopover } from \"./setup.ts\"\nimport { inlinePopoverEvents, inlinePopoverProps, type InlinePopoverEvents, type InlinePopoverProps } from \"./types.ts\"\n\nconst InlinePopoverElementBase: BaseElementConstructor<InlinePopoverProps> = defineCustomElement<\n InlinePopoverProps,\n InlinePopoverEvents\n>({\n props: inlinePopoverProps,\n events: inlinePopoverEvents,\n setup: useInlinePopover,\n})\nclass InlinePopoverElement extends InlinePopoverElementBase {}\n\nregisterCustomElement('prosekit-inline-popover', InlinePopoverElement)\n \nexport { InlinePopoverElement }\n"],"mappings":";;;;;;;;;;AAQA,SAAgB,0BACd,MACA,QACA,SACM;AAEN,oBAAmB,MAAM,QADP,yBAAyB,QAAQ,CACR;;;;;;;ACN7C,SAAgB,qBACd,MACA,QACA,SACM;AAEN,oBAAmB,MAAM,QADP,oBAAoB,QAAQ,CACH;;;;ACT7C,SAAgB,UACd,MACA,QACA,QACM;AAEN,oBAAmB,MAAM,QADP,aAAa,OAAO,CACK;;;;ACP7C,SAAgB,2BACd,MAC8B;AAC9B,KAAI,OAAO,WAAW,eAAe,KAAK,YACxC;CAGF,MAAM,YAAY,KAAK,MAAM;AAE7B,KACE,CAAC,UAAU,SACR,CAAC,cAAc,UAAU,IACzB,gBAAgB,UAAU,IAC1B,mBAAmB,KAAK,MAAM,KAAK,UAAU,MAAM,UAAU,GAAG,CAEnE,QAAO,iBAAiB,KAAK,IAAI,oBAAoB,KAAK;;AAI9D,SAAS,iBAAiB,MAAgD;CACxE,MAAM,QAAQ,YAAY,KAAK;AAC/B,KAAI,MAGF,QAAO;EACL,gBAAgB,KAAK;EACrB,6BAA6B,MAAM,uBAAuB;EAC1D,sBAAsB,MAAM,gBAAgB;EAC7C;;AAIL,SAAS,YAAY,MAAqC;CAExD,MAAM,YADM,KAAK,IAAI,cAAc,aACZ,cAAc;AACrC,KAAI,CAAC,aAAa,UAAU,YAC1B;CAGF,MAAM,QAAQ,OAAO,UAAU,eAAe,YACzC,UAAU,aAAa,KACvB,UAAU,WAAW,EAAE;AAE5B,KAAI,CAAC,MACH;AAGF,QAAO;;AAGT,SAAS,oBAAoB,MAAgD;CAC3E,MAAM,QAAQ,KAAK,IAAI,iBAAiB,8BAA8B;AAEtE,KAAI,MAAM,WAAW,EACnB;AAEF,KAAI,MAAM,WAAW,EACnB,QAAO,MAAM;CAGf,MAAM,QAAQ,MAAM,KAAK,MAAM;AAC/B,QAAO;EACL,gBAAgB,MAAM;EACtB,6BAA6B,MAAM,GAAG,uBAAuB;EAC7D,sBAAsB,MAAM,KAAK,SAAS,KAAK,uBAAuB,CAAC;EACxE;;;;;;;AC5CH,SAAgB,iBACd,MACA,EAAE,OAAO,QACH;CACN,MAAM,EAAE,QAAQ,aAAa,MAAM,GAAG,iBAAiB;CAEvD,MAAM,YAAY,0BAA0B,MAAM,OAAO;CACzD,MAAM,eAAe,qBAAqB,CAAC,CAAC,UAAU,KAAK,CAAC;AAE5D,WAAU,YAAY;EACpB,MAAM,oBAAoB,aAAa,KAAK;EAC5C,MAAM,mBAAmB,YAAY,MAAM;EAC3C,MAAM,YAAY,KAAK,MAAM;AAE7B,MAAI,oBAAoB,UACtB,MAAK,cAAc,kBAAkB;GAEvC;AAEF,WAAU,YAAY;EACpB,MAAM,oBAAoB,aAAa,KAAK;EAC5C,MAAM,mBAAmB,YAAY,MAAM;AAE3C,MAAI,qBAAqB,iBACvB,MAAK,IAAI,KAAK;WACL,CAAC,kBACV,MAAK,IAAI,MAAM;GAEjB;AAEF,WAAU,MAAM,QAAQ,EACtB,cAAc;AACZ,MAAI,CAAC,MAAM,gBAAgB,MAAM,IAAI,CAAC,KAAK,MAAM,CAC/C,QAAO;AAET,OAAK,IAAI,MAAM;AACf,OAAK,cAAc,MAAM;AACzB,SAAO;IAEV,CAAC;AAEF,2BAA0B,MAAM,cAAc,EAAE,WAAW,CAAC;AAE5D,cAAa,MAAM,oBAAqB,KAAK,KAAK,GAAG,SAAS,SAAU;AACxE,aAAY,MAAM,KAAK;;AAGzB,SAAS,0BACP,MACA,QACA;CACA,MAAM,YAAY,aAAsC,KAAK;CAC7D,IAAI,gBAAgB;AAEpB,2BAA0B,MAAM,SAAS,UAAU;AACjD,kBAAgB;GAChB;CAEF,IAAI;AAEJ,sBAAqB,MAAM,SAAS,SAAS;AAG3C,MAFyB,CAAC,iBAAiB,KAAK,SAAS,KAAK,cAAc,cAAc,CAGxF;EAGF,MAAM,EAAE,cAAc,KAAK;EAC3B,MAAM,qBAAqB,eAAe,GAAG,UAAU;AACvD,kBAAgB;AAQhB,MAAI,mBACF;AAGF,YAAU,IAAI,2BAA2B,KAAK,IAAI,KAAK;GACvD;AAEF,QAAO;;;;;ACxBT,MAAa,qBAA2D,OAAO,OAAO;CACpF,GAAGA;CACH,QAAQ,EAAE,SAAS,MAAM;CACzB,aAAa,EAAE,SAAS,MAAM;CAC9B,MAAM,EAAE,SAAS,OAAO;CACxB,iBAAiB,EAAE,SAAS,MAAM;CAElC,WAAW,EAAE,SAAS,OAAO;CAC7B,QAAQ,EAAE,SAAS,IAAI;CACvB,MAAM,EAAE,SAAS,MAAM;CACvB,SAAS,EAAE,SAAS,MAAM;CAC1B,QAAQ,EAAE,SAAS,MAAM;CACzB,iBAAiB,EAAE,SAAS,GAAG;CAChC,CAAC;;AAUF,MAAa,sBAA8D;CACzE,GAAGC;CACH,YAAY,EAAE;CACf;;;AC1GD,MAAM,2BAAuE,oBAG3E;CACA,OAAO;CACP,QAAQ;CACR,OAAO;CACR,CAAC;AACF,IAAM,uBAAN,cAAmC,yBAAyB;AAE5D,sBAAsB,2BAA2B,qBAAqB"}
1
+ {"version":3,"file":"prosekit-web-inline-popover.js","names":[],"sources":["../src/components/inline-popover/store.ts","../src/components/inline-popover/inline-popover-popup.ts","../src/components/inline-popover/inline-popover-positioner.ts","../src/hooks/use-editor-focus-event.ts","../src/hooks/use-editor-update-event.ts","../src/hooks/use-keymap.ts","../src/components/inline-popover/virtual-selection-element.ts","../src/components/inline-popover/inline-popover-root.ts"],"sourcesContent":["import { createContext, type Context } from '@aria-ui/core'\nimport type { OverlayStore } from '@aria-ui/elements/overlay'\n\nexport const InlinePopoverStoreContext: Context<OverlayStore> = createContext<OverlayStore>(\n 'prosekit-inline-popover-store',\n)\n","import {\n computed,\n defineCustomElement,\n onMount,\n registerCustomElement,\n type HostElement,\n type HostElementConstructor,\n type PropsDeclaration,\n type State,\n} from '@aria-ui/core'\nimport { OverlayPopupPropsDeclaration, setupOverlayPopup, type OverlayPopupProps } from '@aria-ui/elements/overlay'\nimport { usePresence } from '@aria-ui/utils'\n\nimport { InlinePopoverStoreContext } from './store.ts'\n\n/**\n * @public\n */\nexport interface InlinePopoverPopupProps extends OverlayPopupProps {}\n\n/** @internal */\nexport const InlinePopoverPopupPropsDeclaration: PropsDeclaration<InlinePopoverPopupProps> = OverlayPopupPropsDeclaration\n\n/** @internal */\nexport function setupInlinePopoverPopup(\n host: HostElement,\n _props: State<InlinePopoverPopupProps>,\n): void {\n const getStore = InlinePopoverStoreContext.consume(host)\n setupOverlayPopup(host, getStore)\n const getOpen = computed(() => getStore()?.getIsOpen() ?? false)\n usePresence(host, getOpen)\n\n onMount(host, () => {\n host.role = 'dialog'\n })\n}\n\nconst InlinePopoverPopupElementBase: HostElementConstructor<InlinePopoverPopupProps> = defineCustomElement(\n setupInlinePopoverPopup,\n InlinePopoverPopupPropsDeclaration,\n)\n\n/**\n * @public\n */\nexport class InlinePopoverPopupElement extends InlinePopoverPopupElementBase {}\n\n/** @internal */\nexport function registerInlinePopoverPopupElement(): void {\n registerCustomElement('prosekit-inline-popover-popup', InlinePopoverPopupElement)\n}\n","import {\n defineCustomElement,\n defineProps,\n registerCustomElement,\n type HostElement,\n type HostElementConstructor,\n type PropsDeclaration,\n type State,\n} from '@aria-ui/core'\nimport { OverlayPositionerPropsDeclaration, setupOverlayPositioner, type OverlayPositionerProps } from '@aria-ui/elements/overlay'\n\nimport { InlinePopoverStoreContext } from './store.ts'\n\n/**\n * @public\n */\nexport interface InlinePopoverPositionerProps extends OverlayPositionerProps {\n /**\n * The initial placement of the floating element\n *\n * @default \"top\"\n */\n placement: OverlayPositionerProps['placement']\n\n /**\n * The distance between the reference and floating element.\n *\n * @default 12\n */\n offset: OverlayPositionerProps['offset']\n\n /**\n * Whether to hide the floating element when the reference element or the\n * floating element is fully clipped.\n *\n * @default true\n */\n hide: OverlayPositionerProps['hide']\n\n /**\n * Whether the floating element can overlap the reference element to keep it\n * in view.\n *\n * @default true\n */\n overlap: OverlayPositionerProps['overlap']\n\n /**\n * Whether to improve positioning for inline reference elements that span over\n * multiple lines.\n *\n * @default true\n */\n inline: OverlayPositionerProps['inline']\n\n /**\n * Describes the virtual padding around the boundary to check for overflow.\n *\n * @default 8\n */\n overflowPadding: OverlayPositionerProps['overflowPadding']\n}\n\n/** @internal */\nexport const InlinePopoverPositionerPropsDeclaration: PropsDeclaration<InlinePopoverPositionerProps> = /* @__PURE__ */ defineProps<\n InlinePopoverPositionerProps\n>({\n ...OverlayPositionerPropsDeclaration,\n placement: { default: 'top', attribute: 'placement', type: 'string' },\n offset: { default: 12, attribute: false, type: 'json' },\n hide: { default: true, attribute: 'hide', type: 'boolean' },\n overlap: { default: true, attribute: 'overlap', type: 'boolean' },\n inline: { default: true, attribute: 'inline', type: 'boolean' },\n overflowPadding: { default: 8, attribute: 'overflow-padding', type: 'number' },\n})\n\n/** @internal */\nexport function setupInlinePopoverPositioner(\n host: HostElement,\n props: State<InlinePopoverPositionerProps>,\n): void {\n setupOverlayPositioner(host, props, InlinePopoverStoreContext.consume(host))\n}\n\nconst InlinePopoverPositionerElementBase: HostElementConstructor<InlinePopoverPositionerProps> = defineCustomElement(\n setupInlinePopoverPositioner,\n InlinePopoverPositionerPropsDeclaration,\n)\n\n/**\n * @public\n */\nexport class InlinePopoverPositionerElement extends InlinePopoverPositionerElementBase {}\n\n/** @internal */\nexport function registerInlinePopoverPositionerElement(): void {\n registerCustomElement('prosekit-inline-popover-positioner', InlinePopoverPositionerElement)\n}\n","import type { HostElement } from '@aria-ui/core'\nimport { defineFocusChangeHandler, type Editor, type FocusChangeHandler } from '@prosekit/core'\n\nimport { useEditorExtension } from './use-editor-extension.ts'\n\n/**\n * @internal\n */\nexport function useEditorFocusChangeEvent(\n host: HostElement,\n getEditor: () => Editor | null,\n handler: FocusChangeHandler,\n): void {\n const extension = defineFocusChangeHandler(handler)\n useEditorExtension(host, getEditor, extension)\n}\n","import type { HostElement } from '@aria-ui/core'\nimport { defineUpdateHandler, type Editor, type UpdateHandler } from '@prosekit/core'\n\nimport { useEditorExtension } from './use-editor-extension.ts'\n\n/**\n * @internal\n */\nexport function useEditorUpdateEvent(\n host: HostElement,\n getEditor: () => Editor | null,\n handler: UpdateHandler,\n): void {\n const extension = defineUpdateHandler(handler)\n useEditorExtension(host, getEditor, extension)\n}\n","import type { HostElement } from '@aria-ui/core'\nimport { defineKeymap, type Editor, type Keymap } from '@prosekit/core'\n\nimport { useEditorExtension } from './use-editor-extension.ts'\n\nexport function useKeymap(\n host: HostElement,\n getEditor: () => Editor | null,\n keymap: Keymap,\n): void {\n const extension = defineKeymap(keymap)\n useEditorExtension(host, getEditor, extension)\n}\n","import type { ReferenceElement } from '@floating-ui/dom'\nimport { containsInlineNode, isInCodeBlock, isTextSelection } from '@prosekit/core'\nimport type { EditorView } from '@prosekit/pm/view'\n\nexport function getVirtualSelectionElement(\n view: EditorView,\n): ReferenceElement | undefined {\n if (typeof window === 'undefined' || view.isDestroyed) {\n return\n }\n\n const selection = view.state.selection\n\n if (\n !selection.empty\n && !isInCodeBlock(selection)\n && isTextSelection(selection)\n && containsInlineNode(view.state.doc, selection.from, selection.to)\n ) {\n return getDomDecoration(view) || getInlineDecoration(view)\n }\n}\n\nfunction getDomDecoration(view: EditorView): ReferenceElement | undefined {\n const range = getDomRange(view)\n if (range) {\n // To get it work properly in Safari, we cannot return the range directly.\n // We have to return a contextElement.\n return {\n contextElement: view.dom,\n getBoundingClientRect: () => range.getBoundingClientRect(),\n getClientRects: () => range.getClientRects(),\n }\n }\n}\n\nfunction getDomRange(view: EditorView): Range | undefined {\n const win = view.dom.ownerDocument.defaultView\n const selection = win?.getSelection()\n if (!selection || selection.isCollapsed) {\n return\n }\n\n const range = typeof selection.rangeCount === 'number'\n && selection.rangeCount > 0\n && selection.getRangeAt(0)\n\n if (!range) {\n return\n }\n\n return range\n}\n\nfunction getInlineDecoration(view: EditorView): ReferenceElement | undefined {\n const match = view.dom.querySelectorAll('.prosekit-virtual-selection')\n\n if (match.length === 0) {\n return\n }\n if (match.length === 1) {\n return match[0]\n }\n\n const items = Array.from(match)\n return {\n contextElement: items[0],\n getBoundingClientRect: () => items[0].getBoundingClientRect(),\n getClientRects: () => items.map((item) => item.getBoundingClientRect()),\n }\n}\n","import {\n defineCustomElement,\n defineProps,\n registerCustomElement,\n type HostElement,\n type HostElementConstructor,\n type PropsDeclaration,\n type State,\n} from '@aria-ui/core'\nimport type { OpenChangeEvent } from '@aria-ui/elements/overlay'\nimport { OverlayRootPropsDeclaration, useOverlayStore, type OverlayRootProps } from '@aria-ui/elements/overlay'\nimport type { Editor } from '@prosekit/core'\nimport type { Selection } from '@prosekit/pm/state'\n\nimport { useEditorFocusChangeEvent } from '../../hooks/use-editor-focus-event.ts'\nimport { useEditorUpdateEvent } from '../../hooks/use-editor-update-event.ts'\nimport { useKeymap } from '../../hooks/use-keymap.ts'\n\nimport { InlinePopoverStoreContext } from './store.ts'\nimport { getVirtualSelectionElement } from './virtual-selection-element.ts'\n\n/**\n * @public\n */\nexport interface InlinePopoverRootProps extends OverlayRootProps {\n /**\n * The ProseKit editor instance.\n *\n * @default null\n * @hidden\n */\n editor: Editor | null\n\n /**\n * Whether the popover is open by default when some inline content is\n * selected.\n *\n * @default true\n */\n defaultOpen: boolean\n\n /**\n * Whether the inline popover should be dismissed when the editor receives an\n * Escape key press.\n *\n * @default true\n */\n dismissOnEscape: boolean\n}\n\n/** @internal */\nexport const InlinePopoverRootPropsDeclaration: PropsDeclaration<InlinePopoverRootProps> = /* @__PURE__ */ defineProps<\n InlinePopoverRootProps\n>({\n ...OverlayRootPropsDeclaration,\n editor: { default: null, attribute: false, type: 'json' },\n defaultOpen: { default: true, attribute: 'default-open', type: 'boolean' },\n dismissOnEscape: { default: true, attribute: 'dismiss-on-escape', type: 'boolean' },\n})\n\n/**\n * @public\n */\nexport interface InlinePopoverRootEvents {\n openChange: OpenChangeEvent\n}\n\n/** @internal */\nexport function setupInlinePopoverRoot(\n host: HostElement,\n props: State<InlinePopoverRootProps>,\n): void {\n const store = useOverlayStore(host, props)\n InlinePopoverStoreContext.provide(host, store)\n\n let editorFocused = false\n useEditorFocusChangeEvent(host, props.editor.get, (focus) => {\n editorFocused = focus\n })\n\n let prevSelection: Selection | undefined\n useEditorUpdateEvent(host, props.editor.get, (view) => {\n const isPopoverFocused = !editorFocused && host.contains(host.ownerDocument.activeElement)\n if (isPopoverFocused) return\n\n const { selection } = view.state\n if (prevSelection?.eq(selection)) return\n prevSelection = selection\n\n const reference = getVirtualSelectionElement(view)\n store.setAnchorElement(reference)\n\n if (reference && props.defaultOpen.get()) {\n store.requestOpenChange(true)\n } else if (!reference) {\n store.requestOpenChange(false)\n }\n })\n\n useKeymap(host, props.editor.get, {\n Escape: () => {\n if (!props.dismissOnEscape.get() || !store.getIsOpen()) return false\n store.requestOpenChange(false)\n return true\n },\n })\n}\n\nconst InlinePopoverRootElementBase: HostElementConstructor<InlinePopoverRootProps> = defineCustomElement(\n setupInlinePopoverRoot,\n InlinePopoverRootPropsDeclaration,\n)\n\n/**\n * @public\n */\nexport class InlinePopoverRootElement extends InlinePopoverRootElementBase {}\n\n/** @internal */\nexport function registerInlinePopoverRootElement(): void {\n registerCustomElement('prosekit-inline-popover-root', InlinePopoverRootElement)\n}\n"],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { MenuItemElement, MenuItemEvents, MenuItemProps, MenuItemPropsDeclaration, MenuPopupElement, MenuPopupProps, MenuPopupPropsDeclaration, MenuPositionerElement, MenuPositionerProps, MenuPositionerPropsDeclaration, MenuRootElement, MenuRootEvents, MenuRootProps, MenuRootPropsDeclaration, MenuSubmenuRootElement, MenuSubmenuRootPropsDeclaration, MenuSubmenuTriggerElement, MenuSubmenuTriggerPropsDeclaration, MenuTriggerElement, MenuTriggerEvents, MenuTriggerProps, MenuTriggerPropsDeclaration, OpenChangeEvent, SelectEvent, setupMenuItem, setupMenuPopup, setupMenuPositioner, setupMenuRoot, setupMenuSubmenuRoot, setupMenuSubmenuTrigger, setupMenuTrigger } from "@aria-ui/elements/menu";
2
+
3
+ //#region src/components/menu/index.d.ts
4
+ declare function registerMenuRootElement(): void;
5
+ declare function registerMenuTriggerElement(): void;
6
+ declare function registerMenuPositionerElement(): void;
7
+ declare function registerMenuPopupElement(): void;
8
+ declare function registerMenuItemElement(): void;
9
+ declare function registerMenuSubmenuRootElement(): void;
10
+ declare function registerMenuSubmenuTriggerElement(): void;
11
+ //#endregion
12
+ export { MenuItemElement, type MenuItemEvents, type MenuItemProps, MenuItemPropsDeclaration, MenuPopupElement, type MenuPopupProps, MenuPopupPropsDeclaration, MenuPositionerElement, type MenuPositionerProps, MenuPositionerPropsDeclaration, MenuRootElement, type MenuRootEvents, type MenuRootProps, MenuRootPropsDeclaration, MenuSubmenuRootElement, MenuSubmenuRootPropsDeclaration, MenuSubmenuTriggerElement, MenuSubmenuTriggerPropsDeclaration, MenuTriggerElement, type MenuTriggerEvents, type MenuTriggerProps, MenuTriggerPropsDeclaration, OpenChangeEvent, SelectEvent, registerMenuItemElement, registerMenuPopupElement, registerMenuPositionerElement, registerMenuRootElement, registerMenuSubmenuRootElement, registerMenuSubmenuTriggerElement, registerMenuTriggerElement, setupMenuItem, setupMenuPopup, setupMenuPositioner, setupMenuRoot, setupMenuSubmenuRoot, setupMenuSubmenuTrigger, setupMenuTrigger };
13
+ //# sourceMappingURL=prosekit-web-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prosekit-web-menu.d.ts","names":[],"sources":["../src/components/menu/index.ts"],"mappings":";;;iBAuEgB,uBAAA,CAAA;AAAA,iBAGA,0BAAA,CAAA;AAAA,iBAGA,6BAAA,CAAA;AAAA,iBAGA,wBAAA,CAAA;AAAA,iBAGA,uBAAA,CAAA;AAAA,iBAGA,8BAAA,CAAA;AAAA,iBAGA,iCAAA,CAAA"}
@@ -0,0 +1,53 @@
1
+ import { registerCustomElement } from "@aria-ui/core";
2
+ import { MenuItemElement, MenuItemElement as MenuItemElement$1, MenuItemPropsDeclaration, MenuPopupElement, MenuPopupElement as MenuPopupElement$1, MenuPopupPropsDeclaration, MenuPositionerElement, MenuPositionerElement as MenuPositionerElement$1, MenuPositionerPropsDeclaration, MenuRootElement, MenuRootElement as MenuRootElement$1, MenuRootPropsDeclaration, MenuSubmenuRootElement, MenuSubmenuRootElement as MenuSubmenuRootElement$1, MenuSubmenuRootPropsDeclaration, MenuSubmenuTriggerElement, MenuSubmenuTriggerElement as MenuSubmenuTriggerElement$1, MenuSubmenuTriggerPropsDeclaration, MenuTriggerElement, MenuTriggerElement as MenuTriggerElement$1, MenuTriggerPropsDeclaration, OpenChangeEvent, SelectEvent, setupMenuItem, setupMenuPopup, setupMenuPositioner, setupMenuRoot, setupMenuSubmenuRoot, setupMenuSubmenuTrigger, setupMenuTrigger } from "@aria-ui/elements/menu";
3
+ //#region src/components/menu/index.ts
4
+ /**
5
+
6
+ @module
7
+
8
+ ## Anatomy
9
+
10
+ ```html
11
+ <prosekit-menu-root>
12
+ <prosekit-menu-trigger>...</prosekit-menu-trigger>
13
+ <prosekit-menu-positioner>
14
+ <prosekit-menu-popup>
15
+ <prosekit-menu-item>...</prosekit-menu-item>
16
+ <prosekit-menu-submenu-root>
17
+ <prosekit-menu-submenu-trigger>...</prosekit-menu-submenu-trigger>
18
+ <prosekit-menu-positioner>
19
+ <prosekit-menu-popup>
20
+ <prosekit-menu-item>...</prosekit-menu-item>
21
+ </prosekit-menu-popup>
22
+ </prosekit-menu-positioner>
23
+ </prosekit-menu-submenu-root>
24
+ </prosekit-menu-popup>
25
+ </prosekit-menu-positioner>
26
+ </prosekit-menu-root>
27
+ ```
28
+ */
29
+ function registerMenuRootElement() {
30
+ registerCustomElement("prosekit-menu-root", MenuRootElement$1);
31
+ }
32
+ function registerMenuTriggerElement() {
33
+ registerCustomElement("prosekit-menu-trigger", MenuTriggerElement$1);
34
+ }
35
+ function registerMenuPositionerElement() {
36
+ registerCustomElement("prosekit-menu-positioner", MenuPositionerElement$1);
37
+ }
38
+ function registerMenuPopupElement() {
39
+ registerCustomElement("prosekit-menu-popup", MenuPopupElement$1);
40
+ }
41
+ function registerMenuItemElement() {
42
+ registerCustomElement("prosekit-menu-item", MenuItemElement$1);
43
+ }
44
+ function registerMenuSubmenuRootElement() {
45
+ registerCustomElement("prosekit-menu-submenu-root", MenuSubmenuRootElement$1);
46
+ }
47
+ function registerMenuSubmenuTriggerElement() {
48
+ registerCustomElement("prosekit-menu-submenu-trigger", MenuSubmenuTriggerElement$1);
49
+ }
50
+ //#endregion
51
+ export { MenuItemElement, MenuItemPropsDeclaration, MenuPopupElement, MenuPopupPropsDeclaration, MenuPositionerElement, MenuPositionerPropsDeclaration, MenuRootElement, MenuRootPropsDeclaration, MenuSubmenuRootElement, MenuSubmenuRootPropsDeclaration, MenuSubmenuTriggerElement, MenuSubmenuTriggerPropsDeclaration, MenuTriggerElement, MenuTriggerPropsDeclaration, OpenChangeEvent, SelectEvent, registerMenuItemElement, registerMenuPopupElement, registerMenuPositionerElement, registerMenuRootElement, registerMenuSubmenuRootElement, registerMenuSubmenuTriggerElement, registerMenuTriggerElement, setupMenuItem, setupMenuPopup, setupMenuPositioner, setupMenuRoot, setupMenuSubmenuRoot, setupMenuSubmenuTrigger, setupMenuTrigger };
52
+
53
+ //# sourceMappingURL=prosekit-web-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prosekit-web-menu.js","names":["MenuRootElement","MenuTriggerElement","MenuPositionerElement","MenuPopupElement","MenuItemElement","MenuSubmenuRootElement","MenuSubmenuTriggerElement"],"sources":["../src/components/menu/index.ts"],"sourcesContent":["/**\n\n@module\n\n## Anatomy\n\n```html\n<prosekit-menu-root>\n <prosekit-menu-trigger>...</prosekit-menu-trigger>\n <prosekit-menu-positioner>\n <prosekit-menu-popup>\n <prosekit-menu-item>...</prosekit-menu-item>\n <prosekit-menu-submenu-root>\n <prosekit-menu-submenu-trigger>...</prosekit-menu-submenu-trigger>\n <prosekit-menu-positioner>\n <prosekit-menu-popup>\n <prosekit-menu-item>...</prosekit-menu-item>\n </prosekit-menu-popup>\n </prosekit-menu-positioner>\n </prosekit-menu-submenu-root>\n </prosekit-menu-popup>\n </prosekit-menu-positioner>\n</prosekit-menu-root>\n```\n*/\n\nimport { registerCustomElement } from '@aria-ui/core'\nimport {\n MenuItemElement,\n MenuPopupElement,\n MenuPositionerElement,\n MenuRootElement,\n MenuSubmenuRootElement,\n MenuSubmenuTriggerElement,\n MenuTriggerElement,\n} from '@aria-ui/elements/menu'\n\nexport {\n MenuItemElement,\n MenuItemPropsDeclaration,\n MenuPopupElement,\n MenuPopupPropsDeclaration,\n MenuPositionerElement,\n MenuPositionerPropsDeclaration,\n MenuRootElement,\n MenuRootPropsDeclaration,\n MenuSubmenuRootElement,\n MenuSubmenuRootPropsDeclaration,\n MenuSubmenuTriggerElement,\n MenuSubmenuTriggerPropsDeclaration,\n MenuTriggerElement,\n MenuTriggerPropsDeclaration,\n OpenChangeEvent,\n SelectEvent,\n setupMenuItem,\n setupMenuPopup,\n setupMenuPositioner,\n setupMenuRoot,\n setupMenuSubmenuRoot,\n setupMenuSubmenuTrigger,\n setupMenuTrigger,\n type MenuItemEvents,\n type MenuItemProps,\n type MenuPopupProps,\n type MenuPositionerProps,\n type MenuRootEvents,\n type MenuRootProps,\n type MenuTriggerEvents,\n type MenuTriggerProps,\n} from '@aria-ui/elements/menu'\n\nexport function registerMenuRootElement(): void {\n registerCustomElement('prosekit-menu-root', MenuRootElement)\n}\nexport function registerMenuTriggerElement(): void {\n registerCustomElement('prosekit-menu-trigger', MenuTriggerElement)\n}\nexport function registerMenuPositionerElement(): void {\n registerCustomElement('prosekit-menu-positioner', MenuPositionerElement)\n}\nexport function registerMenuPopupElement(): void {\n registerCustomElement('prosekit-menu-popup', MenuPopupElement)\n}\nexport function registerMenuItemElement(): void {\n registerCustomElement('prosekit-menu-item', MenuItemElement)\n}\nexport function registerMenuSubmenuRootElement(): void {\n registerCustomElement('prosekit-menu-submenu-root', MenuSubmenuRootElement)\n}\nexport function registerMenuSubmenuTriggerElement(): void {\n registerCustomElement('prosekit-menu-submenu-trigger', MenuSubmenuTriggerElement)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,SAAgB,0BAAgC;AAC9C,uBAAsB,sBAAsBA,kBAAgB;;AAE9D,SAAgB,6BAAmC;AACjD,uBAAsB,yBAAyBC,qBAAmB;;AAEpE,SAAgB,gCAAsC;AACpD,uBAAsB,4BAA4BC,wBAAsB;;AAE1E,SAAgB,2BAAiC;AAC/C,uBAAsB,uBAAuBC,mBAAiB;;AAEhE,SAAgB,0BAAgC;AAC9C,uBAAsB,sBAAsBC,kBAAgB;;AAE9D,SAAgB,iCAAuC;AACrD,uBAAsB,8BAA8BC,yBAAuB;;AAE7E,SAAgB,oCAA0C;AACxD,uBAAsB,iCAAiCC,4BAA0B"}
@@ -1,29 +1,10 @@
1
- import { BaseElementConstructor } from "@aria-ui/core";
2
- import { PopoverContentEvents as PopoverContentEvents$1, PopoverContentProps as PopoverContentProps$1, PopoverRootEvents as PopoverRootEvents$1, PopoverRootProps as PopoverRootProps$1, PopoverTriggerEvents as PopoverTriggerEvents$1, PopoverTriggerProps as PopoverTriggerProps$1, popoverContentEvents, popoverContentProps, popoverRootEvents, popoverRootProps, popoverTriggerEvents, popoverTriggerProps, usePopoverContent, usePopoverRoot, usePopoverTrigger } from "@aria-ui/popover/elements";
1
+ import { OpenChangeEvent, PopoverPopupElement, PopoverPopupProps, PopoverPopupPropsDeclaration, PopoverPositionerElement, PopoverPositionerProps, PopoverPositionerPropsDeclaration, PopoverRootElement, PopoverRootEvents, PopoverRootProps, PopoverRootPropsDeclaration, PopoverTriggerElement, PopoverTriggerEvents, PopoverTriggerProps, PopoverTriggerPropsDeclaration, setupPopoverPopup, setupPopoverPositioner, setupPopoverRoot, setupPopoverTrigger } from "@aria-ui/elements/popover";
3
2
 
4
- //#region src/components/popover/popover-content/types.d.ts
5
- interface PopoverContentProps extends PopoverContentProps$1 {}
6
- interface PopoverContentEvents extends PopoverContentEvents$1 {}
3
+ //#region src/components/popover/index.d.ts
4
+ declare function registerPopoverRootElement(): void;
5
+ declare function registerPopoverTriggerElement(): void;
6
+ declare function registerPopoverPopupElement(): void;
7
+ declare function registerPopoverPositionerElement(): void;
7
8
  //#endregion
8
- //#region src/components/popover/popover-content/element.gen.d.ts
9
- declare const PopoverContentElementBase: BaseElementConstructor<PopoverContentProps>;
10
- declare class PopoverContentElement extends PopoverContentElementBase {}
11
- //#endregion
12
- //#region src/components/popover/popover-root/types.d.ts
13
- interface PopoverRootProps extends PopoverRootProps$1 {}
14
- interface PopoverRootEvents extends PopoverRootEvents$1 {}
15
- //#endregion
16
- //#region src/components/popover/popover-root/element.gen.d.ts
17
- declare const PopoverRootElementBase: BaseElementConstructor<PopoverRootProps>;
18
- declare class PopoverRootElement extends PopoverRootElementBase {}
19
- //#endregion
20
- //#region src/components/popover/popover-trigger/types.d.ts
21
- interface PopoverTriggerProps extends PopoverTriggerProps$1 {}
22
- interface PopoverTriggerEvents extends PopoverTriggerEvents$1 {}
23
- //#endregion
24
- //#region src/components/popover/popover-trigger/element.gen.d.ts
25
- declare const PopoverTriggerElementBase: BaseElementConstructor<PopoverTriggerProps>;
26
- declare class PopoverTriggerElement extends PopoverTriggerElementBase {}
27
- //#endregion
28
- export { PopoverContentElement, type PopoverContentEvents, type PopoverContentProps, PopoverRootElement, type PopoverRootEvents, type PopoverRootProps, PopoverTriggerElement, type PopoverTriggerEvents, type PopoverTriggerProps, popoverContentEvents, popoverContentProps, popoverRootEvents, popoverRootProps, popoverTriggerEvents, popoverTriggerProps, usePopoverContent, usePopoverRoot, usePopoverTrigger };
9
+ export { OpenChangeEvent, PopoverPopupElement, type PopoverPopupProps, PopoverPopupPropsDeclaration, PopoverPositionerElement, type PopoverPositionerProps, PopoverPositionerPropsDeclaration, PopoverRootElement, type PopoverRootEvents, type PopoverRootProps, PopoverRootPropsDeclaration, PopoverTriggerElement, type PopoverTriggerEvents, type PopoverTriggerProps, PopoverTriggerPropsDeclaration, registerPopoverPopupElement, registerPopoverPositionerElement, registerPopoverRootElement, registerPopoverTriggerElement, setupPopoverPopup, setupPopoverPositioner, setupPopoverRoot, setupPopoverTrigger };
29
10
  //# sourceMappingURL=prosekit-web-popover.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosekit-web-popover.d.ts","names":[],"sources":["../src/components/popover/popover-content/types.ts","../src/components/popover/popover-content/element.gen.ts","../src/components/popover/popover-root/types.ts","../src/components/popover/popover-root/element.gen.ts","../src/components/popover/popover-trigger/types.ts","../src/components/popover/popover-trigger/element.gen.ts"],"mappings":";;;;UAIiB,mBAAA,SAA4B,qBAAA;AAAA,UAC5B,oBAAA,SAA6B,sBAAA;;;cCAxC,yBAAA,EAA2B,sBAAA,CAAuB,mBAAA;AAAA,cAQlD,qBAAA,SAA8B,yBAAA;;;UCTnB,gBAAA,SAAyB,kBAAA;AAAA,UACzB,iBAAA,SAA0B,mBAAA;;;cCArC,sBAAA,EAAwB,sBAAA,CAAuB,gBAAA;AAAA,cAQ/C,kBAAA,SAA2B,sBAAA;;;UCThB,mBAAA,SAA4B,qBAAA;AAAA,UAC5B,oBAAA,SAA6B,sBAAA;;;cCAxC,yBAAA,EAA2B,sBAAA,CAAuB,mBAAA;AAAA,cAQlD,qBAAA,SAA8B,yBAAA"}
1
+ {"version":3,"file":"prosekit-web-popover.d.ts","names":[],"sources":["../src/components/popover/index.ts"],"mappings":";;;iBAyCgB,0BAAA,CAAA;AAAA,iBAGA,6BAAA,CAAA;AAAA,iBAGA,2BAAA,CAAA;AAAA,iBAGA,gCAAA,CAAA"}
@@ -1,32 +1,34 @@
1
- import { defineCustomElement, registerCustomElement } from "@aria-ui/core";
2
- import { popoverContentEvents, popoverContentProps, popoverRootEvents, popoverRootProps, popoverTriggerEvents, popoverTriggerProps, usePopoverContent, usePopoverRoot, usePopoverTrigger } from "@aria-ui/popover/elements";
3
- //#region src/components/popover/popover-content/element.gen.ts
4
- const PopoverContentElementBase = defineCustomElement({
5
- props: popoverContentProps,
6
- events: popoverContentEvents,
7
- setup: usePopoverContent
8
- });
9
- var PopoverContentElement = class extends PopoverContentElementBase {};
10
- registerCustomElement("prosekit-popover-content", PopoverContentElement);
11
- //#endregion
12
- //#region src/components/popover/popover-root/element.gen.ts
13
- const PopoverRootElementBase = defineCustomElement({
14
- props: popoverRootProps,
15
- events: popoverRootEvents,
16
- setup: usePopoverRoot
17
- });
18
- var PopoverRootElement = class extends PopoverRootElementBase {};
19
- registerCustomElement("prosekit-popover-root", PopoverRootElement);
20
- //#endregion
21
- //#region src/components/popover/popover-trigger/element.gen.ts
22
- const PopoverTriggerElementBase = defineCustomElement({
23
- props: popoverTriggerProps,
24
- events: popoverTriggerEvents,
25
- setup: usePopoverTrigger
26
- });
27
- var PopoverTriggerElement = class extends PopoverTriggerElementBase {};
28
- registerCustomElement("prosekit-popover-trigger", PopoverTriggerElement);
1
+ import { registerCustomElement } from "@aria-ui/core";
2
+ import { OpenChangeEvent, PopoverPopupElement, PopoverPopupElement as PopoverPopupElement$1, PopoverPopupPropsDeclaration, PopoverPositionerElement, PopoverPositionerElement as PopoverPositionerElement$1, PopoverPositionerPropsDeclaration, PopoverRootElement, PopoverRootElement as PopoverRootElement$1, PopoverRootPropsDeclaration, PopoverTriggerElement, PopoverTriggerElement as PopoverTriggerElement$1, PopoverTriggerPropsDeclaration, setupPopoverPopup, setupPopoverPositioner, setupPopoverRoot, setupPopoverTrigger } from "@aria-ui/elements/popover";
3
+ //#region src/components/popover/index.ts
4
+ /**
5
+
6
+ @module
7
+
8
+ ## Anatomy
9
+
10
+ ```html
11
+ <prosekit-popover-root>
12
+ <prosekit-popover-trigger>...</prosekit-popover-trigger>
13
+ <prosekit-popover-positioner>
14
+ <prosekit-popover-popup>...</prosekit-popover-popup>
15
+ </prosekit-popover-positioner>
16
+ </prosekit-popover-root>
17
+ ```
18
+ */
19
+ function registerPopoverRootElement() {
20
+ registerCustomElement("prosekit-popover-root", PopoverRootElement$1);
21
+ }
22
+ function registerPopoverTriggerElement() {
23
+ registerCustomElement("prosekit-popover-trigger", PopoverTriggerElement$1);
24
+ }
25
+ function registerPopoverPopupElement() {
26
+ registerCustomElement("prosekit-popover-popup", PopoverPopupElement$1);
27
+ }
28
+ function registerPopoverPositionerElement() {
29
+ registerCustomElement("prosekit-popover-positioner", PopoverPositionerElement$1);
30
+ }
29
31
  //#endregion
30
- export { PopoverContentElement, PopoverRootElement, PopoverTriggerElement, popoverContentEvents, popoverContentProps, popoverRootEvents, popoverRootProps, popoverTriggerEvents, popoverTriggerProps, usePopoverContent, usePopoverRoot, usePopoverTrigger };
32
+ export { OpenChangeEvent, PopoverPopupElement, PopoverPopupPropsDeclaration, PopoverPositionerElement, PopoverPositionerPropsDeclaration, PopoverRootElement, PopoverRootPropsDeclaration, PopoverTriggerElement, PopoverTriggerPropsDeclaration, registerPopoverPopupElement, registerPopoverPositionerElement, registerPopoverRootElement, registerPopoverTriggerElement, setupPopoverPopup, setupPopoverPositioner, setupPopoverRoot, setupPopoverTrigger };
31
33
 
32
34
  //# sourceMappingURL=prosekit-web-popover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosekit-web-popover.js","names":[],"sources":["../src/components/popover/popover-content/element.gen.ts","../src/components/popover/popover-root/element.gen.ts","../src/components/popover/popover-trigger/element.gen.ts"],"sourcesContent":["import { defineCustomElement, registerCustomElement, type BaseElementConstructor } from \"@aria-ui/core\"\n\nimport { usePopoverContent } from \"./setup.ts\"\nimport { popoverContentEvents, popoverContentProps, type PopoverContentEvents, type PopoverContentProps } from \"./types.ts\"\n\nconst PopoverContentElementBase: BaseElementConstructor<PopoverContentProps> = defineCustomElement<\n PopoverContentProps,\n PopoverContentEvents\n>({\n props: popoverContentProps,\n events: popoverContentEvents,\n setup: usePopoverContent,\n})\nclass PopoverContentElement extends PopoverContentElementBase {}\n\nregisterCustomElement('prosekit-popover-content', PopoverContentElement)\n \nexport { PopoverContentElement }\n","import { defineCustomElement, registerCustomElement, type BaseElementConstructor } from \"@aria-ui/core\"\n\nimport { usePopoverRoot } from \"./setup.ts\"\nimport { popoverRootEvents, popoverRootProps, type PopoverRootEvents, type PopoverRootProps } from \"./types.ts\"\n\nconst PopoverRootElementBase: BaseElementConstructor<PopoverRootProps> = defineCustomElement<\n PopoverRootProps,\n PopoverRootEvents\n>({\n props: popoverRootProps,\n events: popoverRootEvents,\n setup: usePopoverRoot,\n})\nclass PopoverRootElement extends PopoverRootElementBase {}\n\nregisterCustomElement('prosekit-popover-root', PopoverRootElement)\n \nexport { PopoverRootElement }\n","import { defineCustomElement, registerCustomElement, type BaseElementConstructor } from \"@aria-ui/core\"\n\nimport { usePopoverTrigger } from \"./setup.ts\"\nimport { popoverTriggerEvents, popoverTriggerProps, type PopoverTriggerEvents, type PopoverTriggerProps } from \"./types.ts\"\n\nconst PopoverTriggerElementBase: BaseElementConstructor<PopoverTriggerProps> = defineCustomElement<\n PopoverTriggerProps,\n PopoverTriggerEvents\n>({\n props: popoverTriggerProps,\n events: popoverTriggerEvents,\n setup: usePopoverTrigger,\n})\nclass PopoverTriggerElement extends PopoverTriggerElementBase {}\n\nregisterCustomElement('prosekit-popover-trigger', PopoverTriggerElement)\n \nexport { PopoverTriggerElement }\n"],"mappings":";;;AAKA,MAAM,4BAAyE,oBAG7E;CACA,OAAO;CACP,QAAQ;CACR,OAAO;CACR,CAAC;AACF,IAAM,wBAAN,cAAoC,0BAA0B;AAE9D,sBAAsB,4BAA4B,sBAAsB;;;ACVxE,MAAM,yBAAmE,oBAGvE;CACA,OAAO;CACP,QAAQ;CACR,OAAO;CACR,CAAC;AACF,IAAM,qBAAN,cAAiC,uBAAuB;AAExD,sBAAsB,yBAAyB,mBAAmB;;;ACVlE,MAAM,4BAAyE,oBAG7E;CACA,OAAO;CACP,QAAQ;CACR,OAAO;CACR,CAAC;AACF,IAAM,wBAAN,cAAoC,0BAA0B;AAE9D,sBAAsB,4BAA4B,sBAAsB"}
1
+ {"version":3,"file":"prosekit-web-popover.js","names":["PopoverRootElement","PopoverTriggerElement","PopoverPopupElement","PopoverPositionerElement"],"sources":["../src/components/popover/index.ts"],"sourcesContent":["/**\n\n@module\n\n## Anatomy\n\n```html\n<prosekit-popover-root>\n <prosekit-popover-trigger>...</prosekit-popover-trigger>\n <prosekit-popover-positioner>\n <prosekit-popover-popup>...</prosekit-popover-popup>\n </prosekit-popover-positioner>\n</prosekit-popover-root>\n```\n*/\n\nimport { registerCustomElement } from '@aria-ui/core'\nimport { PopoverPopupElement, PopoverPositionerElement, PopoverRootElement, PopoverTriggerElement } from '@aria-ui/elements/popover'\n\nexport {\n OpenChangeEvent,\n PopoverPopupElement,\n PopoverPopupPropsDeclaration,\n PopoverPositionerElement,\n PopoverPositionerPropsDeclaration,\n PopoverRootElement,\n PopoverRootPropsDeclaration,\n PopoverTriggerElement,\n PopoverTriggerPropsDeclaration,\n setupPopoverPopup,\n setupPopoverPositioner,\n setupPopoverRoot,\n setupPopoverTrigger,\n type PopoverPopupProps,\n type PopoverPositionerProps,\n type PopoverRootEvents,\n type PopoverRootProps,\n type PopoverTriggerEvents,\n type PopoverTriggerProps,\n} from '@aria-ui/elements/popover'\n\nexport function registerPopoverRootElement(): void {\n registerCustomElement('prosekit-popover-root', PopoverRootElement)\n}\nexport function registerPopoverTriggerElement(): void {\n registerCustomElement('prosekit-popover-trigger', PopoverTriggerElement)\n}\nexport function registerPopoverPopupElement(): void {\n registerCustomElement('prosekit-popover-popup', PopoverPopupElement)\n}\nexport function registerPopoverPositionerElement(): void {\n registerCustomElement('prosekit-popover-positioner', PopoverPositionerElement)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAyCA,SAAgB,6BAAmC;AACjD,uBAAsB,yBAAyBA,qBAAmB;;AAEpE,SAAgB,gCAAsC;AACpD,uBAAsB,4BAA4BC,wBAAsB;;AAE1E,SAAgB,8BAAoC;AAClD,uBAAsB,0BAA0BC,sBAAoB;;AAEtE,SAAgB,mCAAyC;AACvD,uBAAsB,+BAA+BC,2BAAyB"}
@@ -1,68 +1,109 @@
1
- import { BaseElementConstructor, ConnectableElement, EventDeclarations, PropDeclarations, SetupOptions, SignalState } from "@aria-ui/core";
1
+ import { HostElement, HostElementConstructor, PropsDeclaration, State } from "@aria-ui/core";
2
2
 
3
- //#region src/components/resizable/resizable-handle/types.d.ts
4
- interface ResizableHandleProps {
5
- /**
6
- * The position of the handle.
7
- *
8
- * @default "bottom-right"
9
- */
10
- position: 'top' | 'right' | 'bottom' | 'left' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
11
- }
12
- /** @internal */
13
- declare const resizableHandleProps: PropDeclarations<ResizableHandleProps>;
14
- /** @internal */
15
- interface ResizableHandleEvents {}
16
- /** @internal */
17
- declare const resizableHandleEvents: EventDeclarations<ResizableHandleEvents>;
18
- //#endregion
19
- //#region src/components/resizable/resizable-handle/element.gen.d.ts
20
- declare const ResizableHandleElementBase: BaseElementConstructor<ResizableHandleProps>;
21
- declare class ResizableHandleElement extends ResizableHandleElementBase {}
22
- //#endregion
23
- //#region src/components/resizable/resizable-handle/setup.d.ts
3
+ //#region src/components/resizable/resizable-root.d.ts
24
4
  /**
25
- * @internal
5
+ * @public
26
6
  */
27
- declare function useResizableHandle(host: ConnectableElement, {
28
- state
29
- }: {
30
- state: SignalState<ResizableHandleProps>;
31
- }): void;
32
- //#endregion
33
- //#region src/components/resizable/resizable-root/types.d.ts
34
7
  interface ResizableRootProps {
8
+ /**
9
+ * The width of the resizable element.
10
+ *
11
+ * @default null
12
+ */
35
13
  width: number | null;
14
+ /**
15
+ * The height of the resizable element.
16
+ *
17
+ * @default null
18
+ */
36
19
  height: number | null;
20
+ /**
21
+ * The aspect ratio of the resizable element.
22
+ *
23
+ * @default null
24
+ */
37
25
  aspectRatio: number | null;
38
26
  }
39
- /** @internal */
40
- declare const resizableRootProps: PropDeclarations<ResizableRootProps>;
27
+ /**
28
+ * @internal
29
+ */
30
+ declare const ResizableRootPropsDeclaration: PropsDeclaration<ResizableRootProps>;
31
+ /**
32
+ * @public
33
+ */
41
34
  interface ResizableRootEvents {
42
- resizeStart: CustomEvent<{
43
- width: number;
44
- height: number;
45
- }>;
46
- resizeEnd: CustomEvent<{
47
- width: number;
48
- height: number;
49
- }>;
35
+ /**
36
+ * Emitted when a resize operation starts.
37
+ */
38
+ resizeStart: ResizeStartEvent;
39
+ /**
40
+ * Emitted when a resize operation ends.
41
+ */
42
+ resizeEnd: ResizeEndEvent;
50
43
  }
51
- /** @internal */
52
- declare const resizableRootEvents: EventDeclarations<ResizableRootEvents>;
53
- //#endregion
54
- //#region src/components/resizable/resizable-root/element.gen.d.ts
55
- declare const ResizableRootElementBase: BaseElementConstructor<ResizableRootProps>;
44
+ /**
45
+ * @public
46
+ */
47
+ declare class ResizeStartEvent extends Event {
48
+ readonly detail: {
49
+ readonly width: number;
50
+ readonly height: number;
51
+ };
52
+ constructor(width: number, height: number);
53
+ }
54
+ /**
55
+ * @public
56
+ */
57
+ declare class ResizeEndEvent extends Event {
58
+ readonly detail: {
59
+ readonly width: number;
60
+ readonly height: number;
61
+ };
62
+ constructor(width: number, height: number);
63
+ }
64
+ /**
65
+ * @internal
66
+ */
67
+ declare function setupResizableRoot(host: HostElement, props: State<ResizableRootProps>): void;
68
+ declare const ResizableRootElementBase: HostElementConstructor<ResizableRootProps>;
69
+ /**
70
+ * @public
71
+ */
56
72
  declare class ResizableRootElement extends ResizableRootElementBase {}
73
+ /**
74
+ * @internal
75
+ */
76
+ declare function registerResizableRootElement(): void;
57
77
  //#endregion
58
- //#region src/components/resizable/resizable-root/setup.d.ts
78
+ //#region src/components/resizable/resizable-handle.d.ts
79
+ /**
80
+ * @public
81
+ */
82
+ interface ResizableHandleProps {
83
+ /**
84
+ * The position of the handle.
85
+ *
86
+ * @default "bottom-right"
87
+ */
88
+ position: 'top' | 'right' | 'bottom' | 'left' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
89
+ }
90
+ /**
91
+ * @internal
92
+ */
93
+ declare const ResizableHandlePropsDeclaration: PropsDeclaration<ResizableHandleProps>;
94
+ /**
95
+ * @internal
96
+ */
97
+ declare function setupResizableHandle(host: HostElement, props: State<ResizableHandleProps>): void;
98
+ declare const ResizableHandleElementBase: HostElementConstructor<ResizableHandleProps>;
99
+ /**
100
+ * @public
101
+ */
102
+ declare class ResizableHandleElement extends ResizableHandleElementBase {}
59
103
  /**
60
104
  * @internal
61
105
  */
62
- declare function useResizableRoot(host: ConnectableElement, {
63
- state,
64
- emit
65
- }: SetupOptions<ResizableRootProps, ResizableRootEvents>): void;
106
+ declare function registerResizableHandleElement(): void;
66
107
  //#endregion
67
- export { ResizableHandleElement, type ResizableHandleEvents, type ResizableHandleProps, ResizableRootElement, type ResizableRootEvents, type ResizableRootProps, resizableHandleEvents, resizableHandleProps, resizableRootEvents, resizableRootProps, useResizableHandle, useResizableRoot };
108
+ export { ResizableHandleElement, type ResizableHandleProps, ResizableHandlePropsDeclaration, ResizableRootElement, type ResizableRootEvents, type ResizableRootProps, ResizableRootPropsDeclaration, ResizeEndEvent, ResizeStartEvent, registerResizableHandleElement, registerResizableRootElement, setupResizableHandle, setupResizableRoot };
68
109
  //# sourceMappingURL=prosekit-web-resizable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prosekit-web-resizable.d.ts","names":[],"sources":["../src/components/resizable/resizable-handle/types.ts","../src/components/resizable/resizable-handle/element.gen.ts","../src/components/resizable/resizable-handle/setup.ts","../src/components/resizable/resizable-root/types.ts","../src/components/resizable/resizable-root/element.gen.ts","../src/components/resizable/resizable-root/setup.ts"],"mappings":";;;UAEiB,oBAAA;;AAAjB;;;;EAME,QAAA;AAAA;;cAYW,oBAAA,EAAsB,gBAAA,CAAiB,oBAAA;;UAKnC,qBAAA;;cAGJ,qBAAA,EAAuB,iBAAA,CAAkB,qBAAA;;;cCvBhD,0BAAA,EAA4B,sBAAA,CAAuB,oBAAA;AAAA,cAQnD,sBAAA,SAA+B,0BAAA;;;;ADXrC;;iBEgBgB,kBAAA,CACd,IAAA,EAAM,kBAAA;EACJ;AAAA;EAAW,KAAA,EAAO,WAAA,CAAY,oBAAA;AAAA;;;UChBjB,kBAAA;EACf,KAAA;EACA,MAAA;EACA,WAAA;AAAA;;cAqBW,kBAAA,EAAoB,gBAAA,CAAiB,kBAAA;AAAA,UAqBjC,mBAAA;EACf,WAAA,EAAa,WAAA;IAAc,KAAA;IAAe,MAAA;EAAA;EAC1C,SAAA,EAAW,WAAA;IAAc,KAAA;IAAe,MAAA;EAAA;AAAA;AHvB1C;AAAA,cG2Ba,mBAAA,EAAqB,iBAAA,CAAkB,mBAAA;;;cClD9C,wBAAA,EAA0B,sBAAA,CAAuB,kBAAA;AAAA,cAQjD,oBAAA,SAA6B,wBAAA;;;;AJXnC;;iBKegB,gBAAA,CACd,IAAA,EAAM,kBAAA;EACJ,KAAA;EAAO;AAAA,GAAQ,YAAA,CAAa,kBAAA,EAAoB,mBAAA"}
1
+ {"version":3,"file":"prosekit-web-resizable.d.ts","names":[],"sources":["../src/components/resizable/resizable-root.ts","../src/components/resizable/resizable-handle.ts"],"mappings":";;;;AAkBA;;UAAiB,kBAAA;EAAkB;;;;;EAMjC,KAAA;EAoBW;;;;;EAbX,MAAA;EAsBkC;;;;;EAflC,WAAA;AAAA;;;AA8BF;cAxBa,6BAAA,EAA+B,gBAAA,CAAiB,kBAAA;;;;UAS5C,mBAAA;EAiBJ;;;EAbX,WAAA,EAAa,gBAAA;EAgBc;;;EAX3B,SAAA,EAAW,cAAA;AAAA;;;;cAMA,gBAAA,SAAyB,KAAA;EAAA,SAC3B,MAAA;IAAA,SACE,KAAA;IAAA,SACA,MAAA;EAAA;cAEC,KAAA,UAAe,MAAA;AAAA;;AAuB7B;;cAda,cAAA,SAAuB,KAAA;EAAA,SACzB,MAAA;IAAA,SACE,KAAA;IAAA,SACA,MAAA;EAAA;cAEC,KAAA,UAAe,MAAA;AAAA;;;;iBASb,kBAAA,CACd,IAAA,EAAM,WAAA,EACN,KAAA,EAAO,KAAA,CAAM,kBAAA;AAAA,cAkET,wBAAA,EAA0B,sBAAA,CAAuB,kBAAA;;AAvBtD;;cA+BY,oBAAA,SAA6B,wBAAA;;AAA1C;;iBAOgB,4BAAA,CAAA;;;;AAjKhB;;UCRiB,oBAAA;EDQkB;;;;;ECFjC,QAAA;AAAA;;;;cAcW,+BAAA,EAAiC,gBAAA,CAAiB,oBAAA;ADuB/D;;;AAAA,iBChBgB,oBAAA,CACd,IAAA,EAAM,WAAA,EACN,KAAA,EAAO,KAAA,CAAM,oBAAA;AAAA,cA2ET,0BAAA,EAA4B,sBAAA,CAAuB,oBAAA;;;;cAQ5C,sBAAA,SAA+B,0BAAA;ADtD5C;;;AAAA,iBC6DgB,8BAAA,CAAA"}