diff --git a/packages/popper/index.d.ts b/packages/popper/index.d.ts index a180fa1681..0d419b93f4 100644 --- a/packages/popper/index.d.ts +++ b/packages/popper/index.d.ts @@ -35,6 +35,11 @@ declare namespace Popper { export type ModifierFn = (data: Data, options: Object) => Data; + export interface Attributes { + 'x-out-of-boundaries': '' | false; + 'x-placement': Placement; + } + export interface BaseModifier { order?: number; enabled?: boolean; @@ -92,6 +97,7 @@ declare namespace Popper { arrowElement: Element; styles: CSSStyleDeclaration; arrowStyles: CSSStyleDeclaration; + attributes: Attributes; boundaries: Object; offsets: { popper: Offset, diff --git a/packages/popper/tests/types/type-tests.ts b/packages/popper/tests/types/type-tests.ts index e32fca6b50..bf9feb540e 100644 --- a/packages/popper/tests/types/type-tests.ts +++ b/packages/popper/tests/types/type-tests.ts @@ -50,6 +50,8 @@ const options: Popper.PopperOptions = { console.log(data); }, onUpdate(data) { + console.log('x-out-of-boundaries', data.attributes); + console.log('x-placement', data.attributes['x-placement']); data.styles.alignContent = 'flex-start'; } };