@rafaelaugusto/jolt 0.1.0-beta.3 → 0.1.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +78 -13
- package/dist/animate.d.ts +3 -2
- package/dist/animate.d.ts.map +1 -1
- package/dist/animate.js +35 -5
- package/dist/animate.js.map +1 -1
- package/dist/color.d.ts +11 -0
- package/dist/color.d.ts.map +1 -0
- package/dist/color.js +73 -0
- package/dist/color.js.map +1 -0
- package/dist/decoration.d.ts +18 -0
- package/dist/decoration.d.ts.map +1 -0
- package/dist/decoration.js +155 -0
- package/dist/decoration.js.map +1 -0
- package/dist/driver/android-color.d.ts +20 -0
- package/dist/driver/android-color.d.ts.map +1 -0
- package/dist/driver/android-color.js +136 -0
- package/dist/driver/android-color.js.map +1 -0
- package/dist/driver/android-decoration.d.ts +22 -0
- package/dist/driver/android-decoration.d.ts.map +1 -0
- package/dist/driver/android-decoration.js +139 -0
- package/dist/driver/android-decoration.js.map +1 -0
- package/dist/driver/android-playback.d.ts +13 -0
- package/dist/driver/android-playback.d.ts.map +1 -0
- package/dist/driver/android-playback.js +141 -0
- package/dist/driver/android-playback.js.map +1 -0
- package/dist/driver/android.d.ts.map +1 -1
- package/dist/driver/android.js +28 -35
- package/dist/driver/android.js.map +1 -1
- package/dist/driver/index.d.ts +8 -1
- package/dist/driver/index.d.ts.map +1 -1
- package/dist/driver/index.js.map +1 -1
- package/dist/driver/ios-color.d.ts +16 -0
- package/dist/driver/ios-color.d.ts.map +1 -0
- package/dist/driver/ios-color.js +392 -0
- package/dist/driver/ios-color.js.map +1 -0
- package/dist/driver/ios-decoration.d.ts +17 -0
- package/dist/driver/ios-decoration.d.ts.map +1 -0
- package/dist/driver/ios-decoration.js +271 -0
- package/dist/driver/ios-decoration.js.map +1 -0
- package/dist/driver/ios-playback.d.ts +10 -0
- package/dist/driver/ios-playback.d.ts.map +1 -0
- package/dist/driver/ios-playback.js +33 -0
- package/dist/driver/ios-playback.js.map +1 -0
- package/dist/driver/ios-shadow.d.ts +6 -0
- package/dist/driver/ios-shadow.d.ts.map +1 -0
- package/dist/driver/ios-shadow.js +52 -0
- package/dist/driver/ios-shadow.js.map +1 -0
- package/dist/driver/ios.d.ts.map +1 -1
- package/dist/driver/ios.js +78 -35
- package/dist/driver/ios.js.map +1 -1
- package/dist/engine.d.ts +48 -2
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +217 -21
- package/dist/engine.js.map +1 -1
- package/dist/haptics.d.ts +4 -1
- package/dist/haptics.d.ts.map +1 -1
- package/dist/haptics.js +27 -3
- package/dist/haptics.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/liquid-grid.d.ts +3 -0
- package/dist/liquid-grid.d.ts.map +1 -0
- package/dist/liquid-grid.js +24 -0
- package/dist/liquid-grid.js.map +1 -0
- package/dist/liquid.d.ts +18 -0
- package/dist/liquid.d.ts.map +1 -0
- package/dist/liquid.js +229 -0
- package/dist/liquid.js.map +1 -0
- package/dist/playback-group.d.ts +6 -0
- package/dist/playback-group.d.ts.map +1 -0
- package/dist/playback-group.js +113 -0
- package/dist/playback-group.js.map +1 -0
- package/dist/playback.d.ts +25 -0
- package/dist/playback.d.ts.map +1 -0
- package/dist/playback.js +35 -0
- package/dist/playback.js.map +1 -0
- package/dist/press.d.ts.map +1 -1
- package/dist/press.js +6 -1
- package/dist/press.js.map +1 -1
- package/dist/properties.d.ts +5 -2
- package/dist/properties.d.ts.map +1 -1
- package/dist/properties.js +25 -1
- package/dist/properties.js.map +1 -1
- package/dist/sequence.d.ts.map +1 -1
- package/dist/sequence.js +6 -0
- package/dist/sequence.js.map +1 -1
- package/dist/text.d.ts.map +1 -1
- package/dist/text.js +3 -0
- package/dist/text.js.map +1 -1
- package/dist/track.d.ts +1 -1
- package/dist/track.d.ts.map +1 -1
- package/dist/track.js +48 -3
- package/dist/track.js.map +1 -1
- package/dist/transition.d.ts.map +1 -1
- package/dist/transition.js +11 -2
- package/dist/transition.js.map +1 -1
- package/dist/types.d.ts +20 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +11 -2
- package/platforms/android/include.gradle +7 -0
- package/platforms/android/java/org/rafaelaugusto/jolt/ColorTarget.java +102 -0
- package/platforms/android/java/org/rafaelaugusto/jolt/DecorationTarget.java +154 -0
- package/platforms/android/proguard-rules.pro +7 -0
- package/src/animate.ts +48 -9
- package/src/color.ts +101 -0
- package/src/decoration.ts +180 -0
- package/src/driver/android-color.ts +170 -0
- package/src/driver/android-decoration.ts +182 -0
- package/src/driver/android-playback.ts +157 -0
- package/src/driver/android.ts +50 -46
- package/src/driver/index.ts +19 -1
- package/src/driver/ios-color.ts +441 -0
- package/src/driver/ios-decoration.ts +332 -0
- package/src/driver/ios-playback.ts +37 -0
- package/src/driver/ios-shadow.ts +50 -0
- package/src/driver/ios.ts +91 -42
- package/src/engine.ts +227 -23
- package/src/haptics.ts +25 -2
- package/src/index.ts +4 -0
- package/src/liquid-grid.ts +28 -0
- package/src/liquid.ts +282 -0
- package/src/playback-group.ts +110 -0
- package/src/playback.ts +62 -0
- package/src/press.ts +8 -2
- package/src/properties.ts +31 -5
- package/src/sequence.ts +5 -0
- package/src/text.ts +2 -0
- package/src/track.ts +72 -3
- package/src/transition.ts +13 -2
- package/src/types.ts +20 -0
package/src/transition.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { resolveEasing, type Easing, type EasingFunction } from './easing.js'
|
|
2
2
|
import type { Property } from './properties.js'
|
|
3
|
+
import { isDecorationProperty } from './decoration.js'
|
|
4
|
+
import { isColorProperty } from './color.js'
|
|
3
5
|
import { springPhysics, type SpringPhysics } from './spring.js'
|
|
4
6
|
|
|
5
7
|
export interface Timing {
|
|
@@ -102,7 +104,11 @@ export function resolveTransition(
|
|
|
102
104
|
transition.type ??
|
|
103
105
|
(springKeys.some((key) => (transition as Spring)[key] !== undefined)
|
|
104
106
|
? 'spring'
|
|
105
|
-
: hasCurve(transition) ||
|
|
107
|
+
: hasCurve(transition) ||
|
|
108
|
+
property === 'opacity' ||
|
|
109
|
+
isColorProperty(property) ||
|
|
110
|
+
isDecorationProperty(property) ||
|
|
111
|
+
keyframes > 2
|
|
106
112
|
? 'tween'
|
|
107
113
|
: 'spring')
|
|
108
114
|
|
|
@@ -128,7 +134,12 @@ export function resolveTransition(
|
|
|
128
134
|
|
|
129
135
|
const tween = transition as Tween
|
|
130
136
|
const duration = tween.duration ?? DEFAULT_DURATION
|
|
131
|
-
if (
|
|
137
|
+
if (
|
|
138
|
+
duration < 0 ||
|
|
139
|
+
Number.isNaN(duration) ||
|
|
140
|
+
((isColorProperty(property) || isDecorationProperty(property)) &&
|
|
141
|
+
!Number.isFinite(duration))
|
|
142
|
+
) {
|
|
132
143
|
throw new RangeError(`Invalid duration: ${duration}.`)
|
|
133
144
|
}
|
|
134
145
|
|
package/src/types.ts
CHANGED
|
@@ -1,11 +1,31 @@
|
|
|
1
1
|
import type { View } from '@nativescript/core'
|
|
2
2
|
import type { Haptic } from './haptics.js'
|
|
3
3
|
import type { SpringName, Transition } from './transition.js'
|
|
4
|
+
import type { ColorKeyframes } from './color.js'
|
|
4
5
|
|
|
5
6
|
/** A value to animate to, or keyframes. `null` stands for the value the view has when the animation starts. */
|
|
6
7
|
export type KeyframeValue = number | readonly (number | null)[]
|
|
7
8
|
|
|
8
9
|
export interface Keyframes {
|
|
10
|
+
backgroundColor?: ColorKeyframes
|
|
11
|
+
/** Uniform starting edge colors; widths and radii may differ. */
|
|
12
|
+
borderColor?: ColorKeyframes
|
|
13
|
+
color?: ColorKeyframes
|
|
14
|
+
/** Uniform circular corners, in DIPs. */
|
|
15
|
+
borderRadius?: KeyframeValue
|
|
16
|
+
/** Uniform visual border width, in DIPs. Content layout uses the final width. */
|
|
17
|
+
borderWidth?: KeyframeValue
|
|
18
|
+
/** iOS: opacity of one existing boxShadow, from 0 to 1. */
|
|
19
|
+
shadowOpacity?: KeyframeValue
|
|
20
|
+
/** iOS: native blur radius in DIPs (half Core's boxShadow blurRadius). */
|
|
21
|
+
shadowRadius?: KeyframeValue
|
|
22
|
+
/** iOS: offset of one existing boxShadow, in DIPs. */
|
|
23
|
+
shadowOffsetX?: KeyframeValue
|
|
24
|
+
shadowOffsetY?: KeyframeValue
|
|
25
|
+
/** Android: base elevation in DIPs. */
|
|
26
|
+
elevation?: KeyframeValue
|
|
27
|
+
/** Android: dynamic Z offset in DIPs. Native state changes may replace it. */
|
|
28
|
+
translationZ?: KeyframeValue
|
|
9
29
|
opacity?: KeyframeValue
|
|
10
30
|
/** Same as `translateX`, in DIPs. */
|
|
11
31
|
x?: KeyframeValue
|