11// @flow
2- import deepEqual from " deep-equal" ;
2+ import deepEqual from ' deep-equal' ;
33import * as React from 'react' ;
44import { createPopper } from '@popperjs/core' ;
55import {
@@ -13,10 +13,10 @@ import {
1313} from '@popperjs/core/lib' ;
1414import { ManagerReferenceNodeContext } from './Manager' ;
1515import { unwrapArray , setRef , shallowEqual } from './utils' ;
16- import { type Ref } from " ./RefTypes" ;
16+ import { type Ref } from ' ./RefTypes' ;
1717
1818type ReferenceElement = ?( VirtualElement | HTMLElement ) ;
19- type Modifiers = Array < $Shape < Modifier < any >>>
19+ type Modifiers = Array < $Shape < Modifier < any >>> ;
2020
2121export type PopperArrowProps = { |
2222 ref : Ref ,
@@ -31,9 +31,10 @@ export type PopperChildrenProps = {|
3131 hasPopperEscaped : ?boolean ,
3232
3333 update : ( ) => Promise < null | $Shape < State >> ,
34+ forceUpdate : ( ) => $Shape < State > ,
3435 arrowProps : PopperArrowProps ,
3536| } ;
36- export type PopperChildren = PopperChildrenProps => React . Node ;
37+ export type PopperChildren = ( PopperChildrenProps ) => React . Node ;
3738
3839export type PopperProps = { |
3940 children : PopperChildren ,
@@ -42,7 +43,7 @@ export type PopperProps = {|
4243 placement ?: Placement ,
4344 strategy ?: PositioningStrategy ,
4445 referenceElement ?: ReferenceElement ,
45- onFirstUpdate ?: ( $Shape < State > ) => void
46+ onFirstUpdate ?: ( $Shape < State > ) => void ,
4647| } ;
4748
4849type PopperState = { |
@@ -122,13 +123,15 @@ export class InnerPopper extends React.Component<PopperProps, PopperState> {
122123
123124 getOptions = ( ) = > {
124125 const { modifiers = [ ] } = this . props ;
125- const arrowModifier = modifiers . find ( modifier => modifier . name === 'arrow' ) ;
126+ const arrowModifier = modifiers . find (
127+ ( modifier ) => modifier . name === 'arrow'
128+ ) ;
126129
127130 return {
128131 placement : this . props . placement ,
129132 strategy : this . props . strategy ,
130133 modifiers : [
131- ...modifiers . filter ( modifier => modifier . name !== 'arrow' ) ,
134+ ...modifiers . filter ( ( modifier ) => modifier . name !== 'arrow' ) ,
132135 {
133136 name : 'arrow' ,
134137 enabled : ! ! this . arrowNode ,
@@ -139,20 +142,18 @@ export class InnerPopper extends React.Component<PopperProps, PopperState> {
139142 } ,
140143 {
141144 name : 'applyStyles' ,
142- enabled : false
145+ enabled : false ,
143146 } ,
144147 this . updateStateModifier ,
145148 ] ,
146- onFirstUpdate : this . props . onFirstUpdate
149+ onFirstUpdate : this . props . onFirstUpdate ,
147150 } ;
148151 } ;
149152
150153 getPopperStyle = ( ) => {
151154 const computedInitialStyle = {
152155 ...initialPopperStyle ,
153- position : this . props . strategy === 'fixed'
154- ? 'fixed'
155- : 'absolute' ,
156+ position : this . props . strategy === 'fixed' ? 'fixed' : 'absolute' ,
156157 } ;
157158
158159 return ! this . popperNode || ! this . state . styles
@@ -205,23 +206,24 @@ export class InnerPopper extends React.Component<PopperProps, PopperState> {
205206 if (
206207 this . props . placement !== prevProps . placement ||
207208 this . props . strategy !== prevProps . strategy ||
208- ! deepEqual ( this . props . modifiers , prevProps . modifiers , { strict : true } )
209+ ! deepEqual ( this . props . modifiers , prevProps . modifiers , { strict : true } )
209210 ) {
210-
211211 // develop only check that modifiers isn't being updated needlessly
212- if ( process . env . NODE_ENV === " development" ) {
212+ if ( process . env . NODE_ENV === ' development' ) {
213213 if (
214214 this . props . modifiers !== prevProps . modifiers &&
215215 this . props . modifiers != null &&
216216 prevProps . modifiers != null &&
217217 shallowEqual ( this . props . modifiers , prevProps . modifiers )
218218 ) {
219- console . warn ( "'modifiers' prop reference updated even though all values appear the same.\nConsider memoizing the 'modifiers' object to avoid needless rendering." ) ;
219+ console . warn (
220+ "'modifiers' prop reference updated even though all values appear the same.\nConsider memoizing the 'modifiers' object to avoid needless rendering."
221+ ) ;
220222 }
221223 }
222224
223225 if ( this . popperInstance ) {
224- this . popperInstance . setOptions ( this . getOptions ( ) )
226+ this . popperInstance . setOptions ( this . getOptions ( ) ) ;
225227 }
226228 }
227229
0 commit comments