prosekit/web/popover
Anatomy
Section titled “Anatomy”Classes
Section titled “Classes”PopoverPopupElement
Section titled “PopoverPopupElement”<prosekit-popover-popup> custom element.
Properties: PopoverPopupProps
Data attributes:
| Attribute | Description |
|---|---|
data-state | "open" when the popover is visible, "closed" otherwise |
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”Methods
Section titled “Methods”-
addController(controller:ReactiveController):void
-
removeController(controller:ReactiveController):void
-
connectedCallback():void
-
disconnectedCallback():void
PopoverPositionerElement
Section titled “PopoverPositionerElement”<prosekit-popover-positioner> custom element.
Properties: PopoverPositionerProps
Data attributes:
| Attribute | Description |
|---|---|
data-state | "open" when the popover is visible, "closed" otherwise |
CSS variables:
| Variable | Description |
|---|---|
--transform-origin | The coordinates that this element is anchored to. Useful for scale animations. |
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”Properties
Section titled “Properties”-
strategy:"fixed"|"absolute" -
The strategy to use for positioning
Default
Section titled “Default”"absolute"
-
placement:Placement -
The initial placement of the floating element
Default
Section titled “Default”"top"
-
autoUpdate:boolean|AutoUpdateOptions -
Options to activate auto-update listeners
https://floating-ui.com/docs/autoUpdate
Default
Section titled “Default”true
-
hoist:boolean -
Whether to use the browser Popover API to place the floating element on top of other page content.
Default
Section titled “Default”true
-
offset:OffsetOptions -
The distance between the reference and floating element.
Default
Section titled “Default”6
-
flip:boolean|Placement[] -
Whether to flip the
placementin order to keep it in view when the preferred placement(s) will overflow the clipping boundary. You can also provide an array of placements to try sequentially if the preferredplacementdoes not fit.Default
Section titled “Default”true
-
shift:boolean -
Whether the floating element should shift to keep it in view.
Default
Section titled “Default”true
-
overlap:boolean -
Whether the floating element can overlap the reference element to keep it in view.
Default
Section titled “Default”false
-
fitViewport:boolean -
Whether to constrain the floating element's width and height to not exceed the viewport.
Default
Section titled “Default”false
-
sameWidth:boolean -
Whether to constrain the floating element's width so that it matches the reference element.
Default
Section titled “Default”false
-
sameHeight:boolean -
Whether to constrain the floating element's height so that it matches the reference element.
Default
Section titled “Default”false
-
inline:boolean -
Whether to improve positioning for inline reference elements that span over multiple lines.
Default
Section titled “Default”false
-
hide:boolean -
Whether to hide the floating element when the reference element or the floating element is fully clipped.
Default
Section titled “Default”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.
Default
Section titled “Default”'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.
Default
Section titled “Default”'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.
Default
Section titled “Default”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.
Default
Section titled “Default”'floating'
-
altBoundary:boolean -
Whether to check the alternate elementContext's boundary. Please see https://floating-ui.com/docs/detectoverflow#altboundary for more information.
Default
Section titled “Default”false
Methods
Section titled “Methods”-
addController(controller:ReactiveController):void
-
removeController(controller:ReactiveController):void
-
connectedCallback():void
-
disconnectedCallback():void
PopoverRootElement
Section titled “PopoverRootElement”<prosekit-popover-root> custom element.
Properties: PopoverRootProps
Events: PopoverRootEvents
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”Properties
Section titled “Properties”-
defaultOpen:boolean -
Whether the overlay is initially open.
Default
Section titled “Default”false
-
open:boolean|null -
Whether the overlay is currently open.
Default
Section titled “Default”null
-
disabled:boolean -
Whether the component should ignore user interaction.
Default
Section titled “Default”false
-
modal:boolean -
Whether the popover should be modal. When true, the popover will trap focus and prevent interaction with the rest of the page.
Default
Section titled “Default”false
Methods
Section titled “Methods”-
addController(controller:ReactiveController):void
-
removeController(controller:ReactiveController):void
-
connectedCallback():void
-
disconnectedCallback():void
PopoverTriggerElement
Section titled “PopoverTriggerElement”<prosekit-popover-trigger> custom element.
Properties: PopoverTriggerProps
Events: PopoverTriggerEvents
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”Properties
Section titled “Properties”-
disabled:boolean -
Whether the component should ignore user interaction.
Default
Section titled “Default”false
-
openOnHover:boolean -
Whether the popover should also open when the trigger is hovered.
Default
Section titled “Default”false
-
delay:number -
The delay in milliseconds before opening the popover when hovering. Only applies when
openOnHoveris true.Default
Section titled “Default”300
-
closeDelay:number -
The delay in milliseconds before closing the popover when hover ends. Only applies when
openOnHoveris true.Default
Section titled “Default”0
Methods
Section titled “Methods”-
addController(controller:ReactiveController):void
-
removeController(controller:ReactiveController):void
-
connectedCallback():void
-
disconnectedCallback():void
Interfaces
Section titled “Interfaces”PopoverPopupProps
Section titled “PopoverPopupProps”PopoverPositionerProps
Section titled “PopoverPositionerProps”Properties
Section titled “Properties”-
strategy:"fixed"|"absolute" -
The strategy to use for positioning
Default
Section titled “Default”"absolute"
-
placement:Placement -
The initial placement of the floating element
Default
Section titled “Default”"top"
-
autoUpdate:boolean|AutoUpdateOptions -
Options to activate auto-update listeners
https://floating-ui.com/docs/autoUpdate
Default
Section titled “Default”true
-
hoist:boolean -
Whether to use the browser Popover API to place the floating element on top of other page content.
Default
Section titled “Default”true
-
offset:OffsetOptions -
The distance between the reference and floating element.
Default
Section titled “Default”6
-
flip:boolean|Placement[] -
Whether to flip the
placementin order to keep it in view when the preferred placement(s) will overflow the clipping boundary. You can also provide an array of placements to try sequentially if the preferredplacementdoes not fit.Default
Section titled “Default”true
-
shift:boolean -
Whether the floating element should shift to keep it in view.
Default
Section titled “Default”true
-
overlap:boolean -
Whether the floating element can overlap the reference element to keep it in view.
Default
Section titled “Default”false
-
fitViewport:boolean -
Whether to constrain the floating element's width and height to not exceed the viewport.
Default
Section titled “Default”false
-
sameWidth:boolean -
Whether to constrain the floating element's width so that it matches the reference element.
Default
Section titled “Default”false
-
sameHeight:boolean -
Whether to constrain the floating element's height so that it matches the reference element.
Default
Section titled “Default”false
-
inline:boolean -
Whether to improve positioning for inline reference elements that span over multiple lines.
Default
Section titled “Default”false
-
hide:boolean -
Whether to hide the floating element when the reference element or the floating element is fully clipped.
Default
Section titled “Default”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.
Default
Section titled “Default”'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.
Default
Section titled “Default”'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.
Default
Section titled “Default”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.
Default
Section titled “Default”'floating'
-
altBoundary:boolean -
Whether to check the alternate elementContext's boundary. Please see https://floating-ui.com/docs/detectoverflow#altboundary for more information.
Default
Section titled “Default”false
PopoverRootProps
Section titled “PopoverRootProps”Properties
Section titled “Properties”-
defaultOpen:boolean -
Whether the overlay is initially open.
Default
Section titled “Default”false
-
open:boolean|null -
Whether the overlay is currently open.
Default
Section titled “Default”null
-
disabled:boolean -
Whether the component should ignore user interaction.
Default
Section titled “Default”false
-
modal:boolean -
Whether the popover should be modal. When true, the popover will trap focus and prevent interaction with the rest of the page.
Default
Section titled “Default”false
PopoverTriggerProps
Section titled “PopoverTriggerProps”Properties
Section titled “Properties”-
disabled:boolean -
Whether the component should ignore user interaction.
Default
Section titled “Default”false
-
openOnHover:boolean -
Whether the popover should also open when the trigger is hovered.
Default
Section titled “Default”false
-
delay:number -
The delay in milliseconds before opening the popover when hovering. Only applies when
openOnHoveris true.Default
Section titled “Default”300
-
closeDelay:number -
The delay in milliseconds before closing the popover when hover ends. Only applies when
openOnHoveris true.Default
Section titled “Default”0
PopoverRootEvents
Section titled “PopoverRootEvents”Properties
Section titled “Properties”-
Emitted when the popover is opened or closed.
PopoverTriggerEvents
Section titled “PopoverTriggerEvents”Properties
Section titled “Properties”-
Emitted when the popover is opened or closed.
Functions
Section titled “Functions”registerPopoverRootElement()
Section titled “registerPopoverRootElement()”-
function registerPopoverRootElement():void
registerPopoverTriggerElement()
Section titled “registerPopoverTriggerElement()”-
function registerPopoverTriggerElement():void
registerPopoverPopupElement()
Section titled “registerPopoverPopupElement()”-
function registerPopoverPopupElement():void
registerPopoverPositionerElement()
Section titled “registerPopoverPositionerElement()”-
function registerPopoverPositionerElement():void
References
Section titled “References”OpenChangeEvent
Section titled “OpenChangeEvent”Re-exports OpenChangeEvent