11import { SpringInterpolator , InterpolatorConfig } from './types'
2+ import { ElementType } from 'react'
23
34declare const window : {
45 requestAnimationFrame : ( cb : ( time : number ) => void ) => number
@@ -16,8 +17,12 @@ export interface AnimatedRef<T> {
1617// Required
1718//
1819
20+ export let defaultElement : string | ElementType
21+
1922export let applyAnimatedValues : ( node : any , props : Props ) => boolean | void
2023
24+ export let createAnimatedInterpolation : SpringInterpolator
25+
2126export let createStringInterpolator : (
2227 config : InterpolatorConfig < string >
2328) => ( input : number ) => string
@@ -35,28 +40,26 @@ export let frameLoop: {
3540
3641export let now = ( ) => Date . now ( )
3742
38- export let colorNames : { [ key : string ] : number } | undefined
43+ export let colorNames : { [ key : string ] : number } | null = null as any
3944
4045export let skipAnimation = false
4146
42- export let defaultElement : any
43-
44- export let createAnimatedStyle : ( ( style : any ) => any ) | undefined
47+ export let createAnimatedStyle : ( ( style : any ) => any ) | null = null as any
4548
46- export let createAnimatedTransform : ( ( transform : any ) => any ) | undefined
47-
48- export let createAnimatedInterpolation : SpringInterpolator
49+ export let createAnimatedTransform :
50+ | ( ( transform : any ) => any )
51+ | null = null as any
4952
5053export let createAnimatedRef : < T extends React . ElementType > (
5154 node : React . MutableRefObject < T > ,
5255 mounted : React . MutableRefObject < boolean > ,
5356 forceUpdate : ( ) => void
5457) => T | AnimatedRef < T > = node => node . current
5558
56- export let requestAnimationFrame =
57- typeof window !== 'undefined' ? window . requestAnimationFrame : ( ) => { }
59+ export let requestAnimationFrame : typeof window . requestAnimationFrame =
60+ typeof window !== 'undefined' ? window . requestAnimationFrame : ( ) => - 1
5861
59- export let cancelAnimationFrame =
62+ export let cancelAnimationFrame : typeof window . cancelAnimationFrame =
6063 typeof window !== 'undefined' ? window . cancelAnimationFrame : ( ) => { }
6164
6265//
@@ -110,5 +113,14 @@ export const assign = (globals: AnimatedGlobals): AnimatedGlobals =>
110113 requestAnimationFrame,
111114 cancelAnimationFrame,
112115 } ,
113- globals
116+ pluckDefined ( globals )
114117 ) )
118+
119+ // Ignore undefined values
120+ function pluckDefined ( globals : any ) {
121+ const defined : any = { }
122+ for ( const key in globals ) {
123+ if ( globals [ key ] !== void 0 ) defined [ key ] = globals [ key ]
124+ }
125+ return defined
126+ }
0 commit comments