summaryrefslogtreecommitdiff
path: root/src/main/resources/static/plugins/popper/umd/popper.js.flow
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/resources/static/plugins/popper/umd/popper.js.flow')
-rw-r--r--src/main/resources/static/plugins/popper/umd/popper.js.flow156
1 files changed, 156 insertions, 0 deletions
diff --git a/src/main/resources/static/plugins/popper/umd/popper.js.flow b/src/main/resources/static/plugins/popper/umd/popper.js.flow
new file mode 100644
index 0000000..d56fdda
--- /dev/null
+++ b/src/main/resources/static/plugins/popper/umd/popper.js.flow
@@ -0,0 +1,156 @@
+// @flow
+
+export type Position = 'top' | 'right' | 'bottom' | 'left';
+
+export type Placement =
+ | 'auto-start'
+ | 'auto'
+ | 'auto-end'
+ | 'top-start'
+ | 'top'
+ | 'top-end'
+ | 'right-start'
+ | 'right'
+ | 'right-end'
+ | 'bottom-end'
+ | 'bottom'
+ | 'bottom-start'
+ | 'left-end'
+ | 'left'
+ | 'left-start';
+
+export type Offset = {
+ top: number,
+ left: number,
+ width: number,
+ height: number,
+ position: Position,
+};
+
+export type Boundary = 'scrollParent' | 'viewport' | 'window';
+
+export type Behavior = 'flip' | 'clockwise' | 'counterclockwise';
+
+export type Data = {
+ instance: Popper,
+ placement: Placement,
+ originalPlacement: Placement,
+ flipped: boolean,
+ hide: boolean,
+ arrowElement: Element,
+ styles: CSSStyleDeclaration,
+ arrowStyles: CSSStyleDeclaration,
+ boundaries: Object,
+ offsets: {
+ popper: Offset,
+ reference: Offset,
+ arrow: {
+ top: number,
+ left: number,
+ },
+ },
+};
+
+export type ModifierFn = (data: Data, options: Object) => Data;
+
+export type Padding = {
+ top?: number,
+ bottom?: number,
+ left?: number,
+ right?: number,
+};
+
+export type BaseModifier = {
+ order?: number,
+ enabled?: boolean,
+ fn?: ModifierFn,
+};
+
+export type Modifiers = {
+ shift?: BaseModifier,
+ offset?: BaseModifier & {
+ offset?: number | string,
+ },
+ preventOverflow?: BaseModifier & {
+ priority?: Position[],
+ padding?: number | Padding,
+ boundariesElement?: Boundary | Element,
+ escapeWithReference?: boolean,
+ },
+ keepTogether?: BaseModifier,
+ arrow?: BaseModifier & {
+ element?: string | Element | null,
+ },
+ flip?: BaseModifier & {
+ behavior?: Behavior | Position[],
+ padding?: number | Padding,
+ boundariesElement?: Boundary | Element,
+ flipVariations?: boolean,
+ flipVariationsByContent?: boolean,
+ },
+ inner?: BaseModifier,
+ hide?: BaseModifier,
+ applyStyle?: BaseModifier & {
+ onLoad?: Function,
+ gpuAcceleration?: boolean,
+ },
+ computeStyle?: BaseModifier & {
+ gpuAcceleration?: boolean,
+ x?: 'bottom' | 'top',
+ y?: 'left' | 'right',
+ },
+
+ [name: string]: (BaseModifier & { [string]: * }) | null,
+};
+
+export type Options = {
+ placement?: Placement,
+ positionFixed?: boolean,
+ eventsEnabled?: boolean,
+ modifiers?: Modifiers,
+ removeOnDestroy?: boolean,
+
+ onCreate?: (data: Data) => void,
+
+ onUpdate?: (data: Data) => void,
+};
+
+export type ReferenceObject = {
+ +clientHeight: number,
+ +clientWidth: number,
+ +referenceNode?: Node,
+
+ getBoundingClientRect():
+ | ClientRect
+ | {
+ width: number,
+ height: number,
+ top: number,
+ right: number,
+ bottom: number,
+ left: number,
+ },
+};
+
+export type Instance = {
+ destroy: () => void,
+ scheduleUpdate: () => void,
+ update: () => void,
+ enableEventListeners: () => void,
+ disableEventListeners: () => void,
+};
+
+declare class Popper {
+ static placements: Placement;
+
+ popper: Element;
+ reference: Element | ReferenceObject;
+
+ constructor(
+ reference: Element | ReferenceObject,
+ popper: Element,
+ options?: Options
+ ): Instance;
+}
+
+declare export default typeof Popper;