Skip to content

prosekit/web/table-handle

<prosekit-table-handle-root>
  <prosekit-table-handle-drag-preview></prosekit-table-handle-drag-preview>
  <prosekit-table-handle-drop-indicator></prosekit-table-handle-drop-indicator>
  <prosekit-table-handle-column-positioner>
    <prosekit-table-handle-column-popup>
      <prosekit-table-handle-column-menu-root>
        <prosekit-table-handle-column-menu-trigger>...</prosekit-table-handle-column-menu-trigger>
        <prosekit-menu-positioner>
          <prosekit-menu-popup>
            <prosekit-menu-item>...</prosekit-menu-item>
          </prosekit-menu-popup>
        </prosekit-menu-positioner>
      </prosekit-table-handle-column-menu-root>
    </prosekit-table-handle-column-popup>
  </prosekit-table-handle-column-positioner>
  <prosekit-table-handle-row-positioner>
    <prosekit-table-handle-row-popup>
      <prosekit-table-handle-row-menu-root>
        <prosekit-table-handle-row-menu-trigger>...</prosekit-table-handle-row-menu-trigger>
        <prosekit-menu-positioner>
          <prosekit-menu-popup>
            <prosekit-menu-item>...</prosekit-menu-item>
          </prosekit-menu-popup>
        </prosekit-menu-positioner>
      </prosekit-table-handle-row-menu-root>
    </prosekit-table-handle-row-popup>
  </prosekit-table-handle-row-positioner>
</prosekit-table-handle-root>

<prosekit-table-handle-column-menu-root> custom element.

Properties: TableHandleColumnMenuRootProps

new TableHandleColumnMenuRootElement(): TableHandleColumnMenuRootElement

defaultOpen: boolean

Whether the overlay is initially open.

false

open: boolean | null

Whether the overlay is currently open.

null

disabled: boolean

Whether the component should ignore user interaction.

false

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-column-menu-trigger> custom element.

Properties: TableHandleColumnMenuTriggerProps

new TableHandleColumnMenuTriggerElement(): TableHandleColumnMenuTriggerElement

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-column-popup> custom element.

Properties: TableHandleColumnPopupProps

Data attributes:

AttributeDescription
data-state"open" when visible, "closed" otherwise

new TableHandleColumnPopupElement(): TableHandleColumnPopupElement

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-column-positioner> custom element.

Properties: TableHandleColumnPositionerProps

Data attributes:

AttributeDescription
data-state"open" when visible, "closed" otherwise
data-sideThe side of the anchor element the positioner is on
data-alignThe alignment of the positioner relative to the anchor element

CSS variables:

VariableDescription
--transform-originThe coordinates that this element is anchored to. Useful for scale animations.

new TableHandleColumnPositionerElement(): TableHandleColumnPositionerElement

strategy: "fixed" | "absolute"

The strategy to use for positioning

"absolute"

autoUpdate: boolean | AutoUpdateOptions

Options to activate auto-update listeners

https://floating-ui.com/docs/autoUpdate

true

overlap: boolean

Whether the floating element can overlap the reference element to keep it in view.

false

fitViewport: boolean

Whether to constrain the floating element's width and height to not exceed the viewport.

false

sameWidth: boolean

Whether to constrain the floating element's width so that it matches the reference element.

false

sameHeight: boolean

Whether to constrain the floating element's height so that it matches the reference element.

false

inline: boolean

Whether to improve positioning for inline reference elements that span over multiple lines.

false

boundary: Boundary

Describes the clipping element(s) or area that overflow will be checked relative to. Please see https://floating-ui.com/docs/detectoverflow#boundary for more information.

'clippingAncestors'

rootBoundary: RootBoundary

Describes the root boundary that the element will be checked for overflow relative to. Please see https://floating-ui.com/docs/detectoverflow#rootboundary for more information.

'viewport'

overflowPadding: number

Describes the virtual padding around the boundary to check for overflow. Please see https://floating-ui.com/docs/detectoverflow#padding for more information.

4

elementContext: ElementContext

The element that will be used to check for overflow. Please see https://floating-ui.com/docs/detectoverflow#elementcontext for more information.

'floating'

altBoundary: boolean

Whether to check the alternate elementContext's boundary. Please see https://floating-ui.com/docs/detectoverflow#altboundary for more information.

false

hoist: boolean

Whether to use the browser Popover API to place the floating element on top of other page content.

false

placement: Placement

The placement of the popover, relative to the hovered table cell.

"top"

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-drag-preview> custom element.

Properties: TableHandleDragPreviewProps

new TableHandleDragPreviewElement(): TableHandleDragPreviewElement

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-drop-indicator> custom element.

Properties: TableHandleDropIndicatorProps

new TableHandleDropIndicatorElement(): TableHandleDropIndicatorElement

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-root> custom element.

Properties: TableHandleRootProps

new TableHandleRootElement(): TableHandleRootElement

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-row-menu-root> custom element.

Properties: TableHandleRowMenuRootProps

new TableHandleRowMenuRootElement(): TableHandleRowMenuRootElement

defaultOpen: boolean

Whether the overlay is initially open.

false

open: boolean | null

Whether the overlay is currently open.

null

disabled: boolean

Whether the component should ignore user interaction.

false

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-row-menu-trigger> custom element.

Properties: TableHandleRowMenuTriggerProps

new TableHandleRowMenuTriggerElement(): TableHandleRowMenuTriggerElement

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-row-popup> custom element.

Properties: TableHandleRowPopupProps

Data attributes:

AttributeDescription
data-state"open" when visible, "closed" otherwise

new TableHandleRowPopupElement(): TableHandleRowPopupElement

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void


<prosekit-table-handle-row-positioner> custom element.

Properties: TableHandleRowPositionerProps

Data attributes:

AttributeDescription
data-state"open" when visible, "closed" otherwise
data-sideThe side of the anchor element the positioner is on
data-alignThe alignment of the positioner relative to the anchor element

CSS variables:

VariableDescription
--transform-originThe coordinates that this element is anchored to. Useful for scale animations.

new TableHandleRowPositionerElement(): TableHandleRowPositionerElement

strategy: "fixed" | "absolute"

The strategy to use for positioning

"absolute"

autoUpdate: boolean | AutoUpdateOptions

Options to activate auto-update listeners

https://floating-ui.com/docs/autoUpdate

true

overlap: boolean

Whether the floating element can overlap the reference element to keep it in view.

false

fitViewport: boolean

Whether to constrain the floating element's width and height to not exceed the viewport.

false

sameWidth: boolean

Whether to constrain the floating element's width so that it matches the reference element.

false

sameHeight: boolean

Whether to constrain the floating element's height so that it matches the reference element.

false

inline: boolean

Whether to improve positioning for inline reference elements that span over multiple lines.

false

boundary: Boundary

Describes the clipping element(s) or area that overflow will be checked relative to. Please see https://floating-ui.com/docs/detectoverflow#boundary for more information.

'clippingAncestors'

rootBoundary: RootBoundary

Describes the root boundary that the element will be checked for overflow relative to. Please see https://floating-ui.com/docs/detectoverflow#rootboundary for more information.

'viewport'

overflowPadding: number

Describes the virtual padding around the boundary to check for overflow. Please see https://floating-ui.com/docs/detectoverflow#padding for more information.

4

elementContext: ElementContext

The element that will be used to check for overflow. Please see https://floating-ui.com/docs/detectoverflow#elementcontext for more information.

'floating'

altBoundary: boolean

Whether to check the alternate elementContext's boundary. Please see https://floating-ui.com/docs/detectoverflow#altboundary for more information.

false

hoist: boolean

Whether to use the browser Popover API to place the floating element on top of other page content.

false

placement: Placement

The placement of the popover, relative to the hovered table cell.

"left"

addController(controller: ReactiveController): void

removeController(controller: ReactiveController): void

connectedCallback(): void

disconnectedCallback(): void

defaultOpen: boolean

Whether the overlay is initially open.

false

open: boolean | null

Whether the overlay is currently open.

null

disabled: boolean

Whether the component should ignore user interaction.

false




strategy: "fixed" | "absolute"

The strategy to use for positioning

"absolute"

autoUpdate: boolean | AutoUpdateOptions

Options to activate auto-update listeners

https://floating-ui.com/docs/autoUpdate

true

overlap: boolean

Whether the floating element can overlap the reference element to keep it in view.

false

fitViewport: boolean

Whether to constrain the floating element's width and height to not exceed the viewport.

false

sameWidth: boolean

Whether to constrain the floating element's width so that it matches the reference element.

false

sameHeight: boolean

Whether to constrain the floating element's height so that it matches the reference element.

false

inline: boolean

Whether to improve positioning for inline reference elements that span over multiple lines.

false

boundary: Boundary

Describes the clipping element(s) or area that overflow will be checked relative to. Please see https://floating-ui.com/docs/detectoverflow#boundary for more information.

'clippingAncestors'

rootBoundary: RootBoundary

Describes the root boundary that the element will be checked for overflow relative to. Please see https://floating-ui.com/docs/detectoverflow#rootboundary for more information.

'viewport'

overflowPadding: number

Describes the virtual padding around the boundary to check for overflow. Please see https://floating-ui.com/docs/detectoverflow#padding for more information.

4

elementContext: ElementContext

The element that will be used to check for overflow. Please see https://floating-ui.com/docs/detectoverflow#elementcontext for more information.

'floating'

altBoundary: boolean

Whether to check the alternate elementContext's boundary. Please see https://floating-ui.com/docs/detectoverflow#altboundary for more information.

false

hoist: boolean

Whether to use the browser Popover API to place the floating element on top of other page content.

false

placement: Placement

The placement of the popover, relative to the hovered table cell.

"top"





defaultOpen: boolean

Whether the overlay is initially open.

false

open: boolean | null

Whether the overlay is currently open.

null

disabled: boolean

Whether the component should ignore user interaction.

false




strategy: "fixed" | "absolute"

The strategy to use for positioning

"absolute"

autoUpdate: boolean | AutoUpdateOptions

Options to activate auto-update listeners

https://floating-ui.com/docs/autoUpdate

true

overlap: boolean

Whether the floating element can overlap the reference element to keep it in view.

false

fitViewport: boolean

Whether to constrain the floating element's width and height to not exceed the viewport.

false

sameWidth: boolean

Whether to constrain the floating element's width so that it matches the reference element.

false

sameHeight: boolean

Whether to constrain the floating element's height so that it matches the reference element.

false

inline: boolean

Whether to improve positioning for inline reference elements that span over multiple lines.

false

boundary: Boundary

Describes the clipping element(s) or area that overflow will be checked relative to. Please see https://floating-ui.com/docs/detectoverflow#boundary for more information.

'clippingAncestors'

rootBoundary: RootBoundary

Describes the root boundary that the element will be checked for overflow relative to. Please see https://floating-ui.com/docs/detectoverflow#rootboundary for more information.

'viewport'

overflowPadding: number

Describes the virtual padding around the boundary to check for overflow. Please see https://floating-ui.com/docs/detectoverflow#padding for more information.

4

elementContext: ElementContext

The element that will be used to check for overflow. Please see https://floating-ui.com/docs/detectoverflow#elementcontext for more information.

'floating'

altBoundary: boolean

Whether to check the alternate elementContext's boundary. Please see https://floating-ui.com/docs/detectoverflow#altboundary for more information.

false

hoist: boolean

Whether to use the browser Popover API to place the floating element on top of other page content.

false

placement: Placement

The placement of the popover, relative to the hovered table cell.

"left"