From 237a673af363a86303ce37073ba0fe322536b95e Mon Sep 17 00:00:00 2001 From: Benjamin Canac Date: Sat, 8 Oct 2022 22:24:42 +0200 Subject: [PATCH] chore(popper): add more options --- src/runtime/composables/usePopper.ts | 20 +++++++++++++++++++- src/runtime/types/popper.d.ts | 4 ++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/runtime/composables/usePopper.ts b/src/runtime/composables/usePopper.ts index b18b0f79..8b6b5d0a 100644 --- a/src/runtime/composables/usePopper.ts +++ b/src/runtime/composables/usePopper.ts @@ -6,9 +6,11 @@ import { omitBy, isUndefined } from 'lodash-es' import flip from '@popperjs/core/lib/modifiers/flip' import offset from '@popperjs/core/lib/modifiers/offset' import preventOverflow from '@popperjs/core/lib/modifiers/preventOverflow' +import computeStyles from '@popperjs/core/lib/modifiers/computeStyles' +import eventListeners from '@popperjs/core/lib/modifiers/eventListeners' export const createPopper = popperGenerator({ - defaultModifiers: [...defaultModifiers, offset, flip, preventOverflow] + defaultModifiers: [...defaultModifiers, offset, flip, preventOverflow, computeStyles, eventListeners] }) export function usePopper ({ @@ -16,6 +18,10 @@ export function usePopper ({ overflowPadding = 8, offsetDistance = 8, offsetSkid = 0, + gpuAcceleration = true, + adaptive = true, + scroll = true, + resize = true, placement, strategy }, virtualReference) { @@ -50,6 +56,18 @@ export function usePopper ({ options: { offset: [offsetSkid, offsetDistance] } + }, { + name: 'computeStyles', + options: { + adaptive, + gpuAcceleration + } + }, { + name: 'eventListeners', + options: { + scroll, + resize + } }] }, isUndefined)) diff --git a/src/runtime/types/popper.d.ts b/src/runtime/types/popper.d.ts index 84bb2d33..138b0af2 100644 --- a/src/runtime/types/popper.d.ts +++ b/src/runtime/types/popper.d.ts @@ -7,4 +7,8 @@ export interface PopperOptions { offsetSkid?: number placement?: Placement strategy?: PositioningStrategy + gpuAcceleration?: boolean + adaptive?: boolean + scroll?: boolean + resize?: boolean }