useFloating
Импорт
import { useFloating, floatingAvailableHeightVar, createFloatingAnchor } from '@feugene/granularity/composables/useFloating'Экспорты
UseFloatingPlacementtypetype UseFloatingPlacement = PlacementfloatingAvailableHeightVarconstconst floatingAvailableHeightVar = "--gr-floating-available-height"Кастомное свойство, в которое слой пишет доступное место по вертикали — расстояние от панели до края вьюпорта на той стороне, куда её в итоге поставило.
GrFloatingAnchorRectinterfaceinterface GrFloatingAnchorRectПрямоугольник в координатах вьюпорта — якорь, которого нет в DOM.
UseFloatingReferencetypetype UseFloatingReference = HTMLElement | VirtualElement | nullСсылка позиционирования: элемент, виртуальный якорь или ничего.
createFloatingAnchorfunctionfunction createFloatingAnchor(get: () => GrFloatingAnchorRect | null | undefined, options?:Виртуальный якорь: объект создаётся один раз, координаты читает геттер на каждом измерении.
UseFloatingOptionsinterfaceinterface UseFloatingOptionsUseFloatingReturninterfaceinterface UseFloatingReturnuseFloatingfunctionfunction useFloating(reference: Ref<HTMLElement | null> | (() => UseFloatingReference), floatingEl: Ref<HTMLElement | null>, open: Ref<boolean>, options?: UseFloatingOptions): UseFloatingReturnЕдиный движок позиционирования floating-панелей (Dropdown/Select/TreeSelect/Tooltip) поверх `@floating-ui/dom`: flip (переворот при нехватке места), shift (клэмп к границам viewport), опциональный `size`-мидлвар для растягивания по ширине триггера.
Источник: @feugene/granularity 0.41.0, package.json#exports и dist/types