@rafaelaugusto/jolt 0.1.0-beta.12 → 0.1.0-beta.14

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.
Files changed (151) hide show
  1. package/README.md +9 -6
  2. package/dist/animate.d.ts +6 -4
  3. package/dist/animate.d.ts.map +1 -1
  4. package/dist/animate.js +3 -1
  5. package/dist/animate.js.map +1 -1
  6. package/dist/drag.js +3 -3
  7. package/dist/drag.js.map +1 -1
  8. package/dist/driver/android-gradient.d.ts.map +1 -1
  9. package/dist/driver/android-gradient.js +11 -1
  10. package/dist/driver/android-gradient.js.map +1 -1
  11. package/dist/driver/android-particles.d.ts +6 -0
  12. package/dist/driver/android-particles.d.ts.map +1 -0
  13. package/dist/driver/android-particles.js +93 -0
  14. package/dist/driver/android-particles.js.map +1 -0
  15. package/dist/driver/android.d.ts.map +1 -1
  16. package/dist/driver/android.js +2 -0
  17. package/dist/driver/android.js.map +1 -1
  18. package/dist/driver/frame.d.ts +3 -0
  19. package/dist/driver/frame.d.ts.map +1 -0
  20. package/dist/driver/frame.js +7 -0
  21. package/dist/driver/frame.js.map +1 -0
  22. package/dist/driver/index.d.ts +2 -0
  23. package/dist/driver/index.d.ts.map +1 -1
  24. package/dist/driver/index.js.map +1 -1
  25. package/dist/driver/ios-gradient.d.ts.map +1 -1
  26. package/dist/driver/ios-gradient.js +24 -2
  27. package/dist/driver/ios-gradient.js.map +1 -1
  28. package/dist/driver/ios.d.ts.map +1 -1
  29. package/dist/driver/ios.js +2 -0
  30. package/dist/driver/ios.js.map +1 -1
  31. package/dist/engine.d.ts +2 -1
  32. package/dist/engine.d.ts.map +1 -1
  33. package/dist/engine.js +32 -5
  34. package/dist/engine.js.map +1 -1
  35. package/dist/gradient-binding.d.ts +38 -0
  36. package/dist/gradient-binding.d.ts.map +1 -0
  37. package/dist/gradient-binding.js +128 -0
  38. package/dist/gradient-binding.js.map +1 -0
  39. package/dist/gradient.d.ts +19 -4
  40. package/dist/gradient.d.ts.map +1 -1
  41. package/dist/gradient.js +331 -70
  42. package/dist/gradient.js.map +1 -1
  43. package/dist/haptics.d.ts.map +1 -1
  44. package/dist/haptics.js +101 -28
  45. package/dist/haptics.js.map +1 -1
  46. package/dist/image-effect.d.ts +1 -0
  47. package/dist/image-effect.d.ts.map +1 -1
  48. package/dist/image-effect.js +10 -2
  49. package/dist/image-effect.js.map +1 -1
  50. package/dist/index.d.ts +6 -2
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +2 -0
  53. package/dist/index.js.map +1 -1
  54. package/dist/motion-scope.d.ts +3 -2
  55. package/dist/motion-scope.d.ts.map +1 -1
  56. package/dist/motion-scope.js +12 -2
  57. package/dist/motion-scope.js.map +1 -1
  58. package/dist/motion-value.d.ts +62 -8
  59. package/dist/motion-value.d.ts.map +1 -1
  60. package/dist/motion-value.js +327 -91
  61. package/dist/motion-value.js.map +1 -1
  62. package/dist/native/index.d.ts +7 -0
  63. package/dist/native/index.d.ts.map +1 -0
  64. package/dist/native/index.js +4 -0
  65. package/dist/native/index.js.map +1 -0
  66. package/dist/native-properties.d.ts +28 -0
  67. package/dist/native-properties.d.ts.map +1 -0
  68. package/dist/native-properties.js +154 -0
  69. package/dist/native-properties.js.map +1 -0
  70. package/dist/native-property-driver.d.ts +19 -0
  71. package/dist/native-property-driver.d.ts.map +1 -0
  72. package/dist/native-property-driver.js +69 -0
  73. package/dist/native-property-driver.js.map +1 -0
  74. package/dist/native-property.d.ts +35 -0
  75. package/dist/native-property.d.ts.map +1 -0
  76. package/dist/native-property.js +277 -0
  77. package/dist/native-property.js.map +1 -0
  78. package/dist/particles.d.ts +5 -2
  79. package/dist/particles.d.ts.map +1 -1
  80. package/dist/particles.js +16 -10
  81. package/dist/particles.js.map +1 -1
  82. package/dist/playback-group.d.ts.map +1 -1
  83. package/dist/playback-group.js +17 -1
  84. package/dist/playback-group.js.map +1 -1
  85. package/dist/playback.d.ts +15 -0
  86. package/dist/playback.d.ts.map +1 -1
  87. package/dist/playback.js +23 -0
  88. package/dist/playback.js.map +1 -1
  89. package/dist/scene-appearance.d.ts +14 -0
  90. package/dist/scene-appearance.d.ts.map +1 -0
  91. package/dist/scene-appearance.js +68 -0
  92. package/dist/scene-appearance.js.map +1 -0
  93. package/dist/sequence.d.ts +24 -0
  94. package/dist/sequence.d.ts.map +1 -1
  95. package/dist/sequence.js +181 -19
  96. package/dist/sequence.js.map +1 -1
  97. package/dist/timed-animation.d.ts +38 -0
  98. package/dist/timed-animation.d.ts.map +1 -0
  99. package/dist/timed-animation.js +177 -0
  100. package/dist/timed-animation.js.map +1 -0
  101. package/dist/types.d.ts +1 -1
  102. package/dist/types.d.ts.map +1 -1
  103. package/dist/value-observers.d.ts +19 -0
  104. package/dist/value-observers.d.ts.map +1 -0
  105. package/dist/value-observers.js +111 -0
  106. package/dist/value-observers.js.map +1 -0
  107. package/dist/value-track.d.ts +13 -0
  108. package/dist/value-track.d.ts.map +1 -0
  109. package/dist/value-track.js +59 -0
  110. package/dist/value-track.js.map +1 -0
  111. package/dist/vue/index.d.ts.map +1 -1
  112. package/dist/vue/index.js +28 -5
  113. package/dist/vue/index.js.map +1 -1
  114. package/package.json +6 -2
  115. package/platforms/android/java/org/rafaelaugusto/jolt/GradientLayer.java +30 -1
  116. package/platforms/android/java/org/rafaelaugusto/jolt/ParticleEmitter.java +192 -0
  117. package/platforms/android/java/org/rafaelaugusto/jolt/ParticleSimulation.java +114 -0
  118. package/platforms/android/proguard-rules.pro +2 -0
  119. package/src/android-plugin.d.ts +93 -0
  120. package/src/animate.ts +13 -7
  121. package/src/drag.ts +3 -3
  122. package/src/driver/android-gradient.ts +8 -1
  123. package/src/driver/android-particles.ts +118 -0
  124. package/src/driver/android.ts +2 -0
  125. package/src/driver/frame.ts +10 -0
  126. package/src/driver/index.ts +2 -0
  127. package/src/driver/ios-gradient.ts +24 -2
  128. package/src/driver/ios.ts +2 -0
  129. package/src/engine.ts +33 -6
  130. package/src/gradient-binding.ts +158 -0
  131. package/src/gradient.ts +376 -91
  132. package/src/haptics.ts +106 -28
  133. package/src/image-effect.ts +10 -2
  134. package/src/index.ts +6 -0
  135. package/src/ios-plugin.d.ts +40 -0
  136. package/src/motion-scope.ts +14 -3
  137. package/src/motion-value.ts +374 -99
  138. package/src/native/index.ts +23 -0
  139. package/src/native-properties.ts +188 -0
  140. package/src/native-property-driver.ts +123 -0
  141. package/src/native-property.ts +353 -0
  142. package/src/particles.ts +18 -17
  143. package/src/playback-group.ts +17 -1
  144. package/src/playback.ts +41 -0
  145. package/src/scene-appearance.ts +92 -0
  146. package/src/sequence.ts +209 -20
  147. package/src/timed-animation.ts +192 -0
  148. package/src/types.ts +1 -1
  149. package/src/value-observers.ts +133 -0
  150. package/src/value-track.ts +71 -0
  151. package/src/vue/index.ts +29 -5
@@ -4,11 +4,15 @@ import { colorMixer, isColorProperty, parseColor, validateColorTarget, } from '.
4
4
  import { reducedMotion } from './config.js';
5
5
  import { clampDecoration, isDecorationProperty, validateDecorationTarget, } from './decoration.js';
6
6
  import { getDriver } from './driver/index.js';
7
- import { setArrival, setBase, stopBase, ViewAnimation, } from './engine.js';
7
+ import { setBase, stopBase, ViewAnimation } from './engine.js';
8
8
  import { linear } from './easing.js';
9
9
  import { isProperty } from './properties.js';
10
10
  import { createTrack, instantTrack } from './track.js';
11
11
  import { resolveTransition, springs, } from './transition.js';
12
+ import { playbackSource } from './playback.js';
13
+ import { TimedAnimation } from './timed-animation.js';
14
+ import { valueTrack } from './value-track.js';
15
+ import { ValueObservers, } from './value-observers.js';
12
16
  const bound = new WeakMap();
13
17
  class Derived {
14
18
  source;
@@ -26,6 +30,9 @@ class Derived {
26
30
  const value = this.read(this.root.raw());
27
31
  return this.color ? new Color(value) : value;
28
32
  }
33
+ subscribe(listener, options) {
34
+ return this.root.observers.subscribe(this.read, this.color, listener, options);
35
+ }
29
36
  to(input, output, options) {
30
37
  if (this.color)
31
38
  throw new TypeError('A color cannot be mapped again.');
@@ -36,135 +43,201 @@ class Derived {
36
43
  }
37
44
  class Root extends Derived {
38
45
  bindings = new Set();
39
- current;
40
- run;
46
+ listeners = new Set();
47
+ observers = new ValueObservers((time) => this.raw(time));
48
+ rests = new Map();
49
+ runs = new Map();
50
+ presentation;
51
+ cancelPresentation;
41
52
  constructor(initial) {
42
53
  super(undefined, (value) => value, false);
43
54
  if (!Number.isFinite(initial))
44
55
  throw new RangeError(`A motion value starts from a finite number, got ${initial}.`);
45
- this.current = initial;
56
+ this.rests.set('', initial);
46
57
  }
47
- raw() {
48
- const run = this.run;
49
- if (!run)
50
- return this.current;
51
- return run.base + run.span * run.track.valueAt(getDriver().now() - run.startedAt);
58
+ raw(time = getDriver().now()) {
59
+ let result = 0;
60
+ for (const key of new Set([...this.rests.keys(), ...this.runs.keys()]))
61
+ result += this.part(key, time);
62
+ return result;
52
63
  }
53
- velocity() {
54
- const run = this.run;
55
- if (!run)
64
+ /** Drag input owns only the base; bounds and snap points stay in base units. */
65
+ base() {
66
+ return this.part('');
67
+ }
68
+ part(key, time = getDriver().now()) {
69
+ const run = this.runs.get(key);
70
+ return run
71
+ ? run.base + run.span * run.track.valueAt(this.runTime(run, time))
72
+ : (this.rests.get(key) ?? 0);
73
+ }
74
+ runTime(run, time = getDriver().now()) {
75
+ return run.clock?.time() ?? time - run.startedAt;
76
+ }
77
+ velocity(key) {
78
+ const run = this.runs.get(key);
79
+ if (!run || run.animation.paused)
56
80
  return 0;
57
- return run.span * run.track.velocityAt(getDriver().now() - run.startedAt);
81
+ return run.span * run.track.velocityAt(this.runTime(run));
58
82
  }
59
83
  animate(target, transition = {}) {
60
- const from = this.raw();
84
+ const options = typeof transition === 'string' ? springOf(transition) : transition;
85
+ const key = options.layer === undefined ? '' : layerName(options.layer);
86
+ const from = this.part(key);
61
87
  const frames = (typeof target === 'number' ? [null, target] : [...target]).map((frame) => (frame === null ? from : frame));
62
88
  if (frames.length < 2)
63
89
  frames.unshift(from);
64
90
  if (frames.some((frame) => typeof frame !== 'number' || !Number.isFinite(frame)))
65
91
  throw new RangeError(`Invalid motion value keyframes: ${JSON.stringify(target)}.`);
66
- const options = typeof transition === 'string' ? springOf(transition) : transition;
67
92
  const resolved = resolveTransition(options, 'x', frames.length);
68
93
  const base = Math.min(...frames);
69
94
  const span = Math.max(...frames) - base;
70
- const velocity = this.velocity();
71
- this.halt();
72
- if (span === 0)
73
- return this.jump(frames.at(-1));
95
+ const velocity = this.velocity(key);
96
+ if (span === 0) {
97
+ this.halt(key);
98
+ return this.jump(frames.at(-1), key);
99
+ }
74
100
  // Sampled in the value's own range so springs settle relative to the distance.
75
101
  const track = createTrack('opacity', frames.map((frame) => (frame - base) / span), resolved, velocity / span);
76
- return this.start(track, base, span);
102
+ this.halt(key);
103
+ return track.end === 0
104
+ ? this.jump(base + span * track.to, key)
105
+ : this.start(track, base, span, key);
77
106
  }
78
107
  /** Plays a track sampled in the value's own units, such as a drag release. */
79
108
  play(track) {
80
- this.halt();
81
- return track.end === 0 ? this.jump(track.to) : this.start(track, 0, 1);
109
+ this.halt('');
110
+ return track.end === 0 ? this.jump(track.to, '') : this.start(track, 0, 1, '');
82
111
  }
83
- jump(value) {
84
- const { animation, settle } = this.handle();
85
- this.current = value;
86
- for (const binding of this.bindings)
87
- binding.sync();
88
- settle(true);
89
- setArrival(animation, Promise.resolve());
112
+ jump(value, key) {
113
+ this.rests.set(key, value);
114
+ this.sync();
115
+ const animation = new TimedAnimation(0, 0, () => { }, () => { });
116
+ animation.start();
90
117
  return animation;
91
118
  }
92
- handle() {
93
- let settle;
94
- const finished = new Promise((resolve) => (settle = resolve));
95
- const animation = {
96
- finished,
97
- stop: () => {
98
- if (this.run?.animation === animation)
99
- this.stop();
100
- },
101
- then: (onfulfilled, onrejected) => finished.then(onfulfilled, onrejected),
102
- };
103
- return { animation, settle };
104
- }
105
- start(track, base, span) {
106
- const { animation, settle } = this.handle();
107
- let arrive = () => { };
108
- let run;
119
+ start(track, base, span, key) {
109
120
  const driver = getDriver();
110
- setArrival(animation, new Promise((resolve) => (arrive = resolve)));
111
- const timers = [
112
- Number.isFinite(track.end)
113
- ? driver.after(track.end, () => {
114
- if (this.run !== run)
115
- return;
116
- this.current = base + span * track.to;
117
- this.run = undefined;
118
- arrive();
119
- settle(true);
120
- })
121
- : undefined,
122
- Number.isFinite(track.arrival)
123
- ? driver.after(track.arrival, () => arrive())
124
- : undefined,
125
- ];
126
- this.run = run = {
121
+ const animation = new TimedAnimation(track.end, track.arrival, () => this.sync(), (completed) => {
122
+ if (this.runs.get(key)?.animation !== animation)
123
+ return;
124
+ const held = base + span * track.valueAt(animation.time);
125
+ this.runs.delete(key);
126
+ if (!completed && key !== '')
127
+ this.rests.delete(key);
128
+ else
129
+ this.rests.set(key, completed ? base + span * track.to : held);
130
+ this.sync();
131
+ });
132
+ const run = {
127
133
  track,
128
134
  base,
129
135
  span,
130
136
  animation,
131
137
  startedAt: driver.now(),
132
- settle: (completed) => {
133
- arrive();
134
- settle(completed);
135
- },
136
- cancel: () => timers.forEach((cancel) => cancel?.()),
138
+ clock: { time: () => animation.time },
137
139
  };
138
- for (const binding of this.bindings)
139
- binding.sync();
140
+ this.runs.set(key, run);
141
+ this.sync();
142
+ animation.start();
140
143
  return animation;
141
144
  }
142
145
  set(value) {
143
146
  if (!Number.isFinite(value))
144
147
  throw new RangeError(`A motion value takes a finite number, got ${value}.`);
145
- this.halt();
146
- this.current = value;
147
- for (const binding of this.bindings)
148
- binding.sync();
148
+ for (const key of [...this.runs.keys()])
149
+ this.halt(key);
150
+ this.rests.clear();
151
+ this.rests.set('', value);
152
+ this.sync();
153
+ }
154
+ setBase(value) {
155
+ if (!Number.isFinite(value))
156
+ throw new RangeError('A motion value takes a finite number.');
157
+ this.halt('');
158
+ this.rests.set('', value);
159
+ this.sync();
149
160
  }
150
- stop() {
151
- if (!this.run)
161
+ stopBase() {
162
+ this.stopChannel('');
163
+ }
164
+ stop(layer) {
165
+ if (layer !== undefined)
166
+ return this.stopChannel(layerName(layer));
167
+ if (!this.runs.size && this.rests.size === 1)
152
168
  return;
153
169
  const value = this.raw();
154
- this.halt();
155
- this.current = value;
170
+ for (const key of [...this.runs.keys()])
171
+ this.halt(key);
172
+ this.rests.clear();
173
+ this.rests.set('', value);
174
+ this.sync();
175
+ }
176
+ stopChannel(key) {
177
+ if (!this.runs.has(key) && (key === '' || !this.rests.has(key)))
178
+ return;
179
+ const held = this.part(key);
180
+ this.halt(key);
181
+ if (key === '')
182
+ this.rests.set(key, held);
183
+ else
184
+ this.rests.delete(key);
185
+ this.sync();
186
+ }
187
+ sync() {
188
+ this.cancelPresentation?.();
189
+ this.cancelPresentation = undefined;
190
+ const now = getDriver().now();
191
+ let rest = 0;
192
+ for (const [key, value] of this.rests)
193
+ if (!this.runs.has(key))
194
+ rest += value;
195
+ const runs = [...this.runs.values()].filter((run) => !run.animation.paused);
196
+ for (const [key, run] of this.runs)
197
+ if (run.animation.paused)
198
+ rest += this.part(key, now);
199
+ if (!runs.length)
200
+ this.presentation = undefined;
201
+ else if (runs.length === 1) {
202
+ const run = runs[0];
203
+ this.presentation = { ...run, base: run.base + rest };
204
+ }
205
+ else {
206
+ const { track, windowed } = valueTrack(runs.map((run) => ({
207
+ track: run.track,
208
+ base: run.base,
209
+ span: run.span,
210
+ elapsed: this.runTime(run, now),
211
+ })), rest);
212
+ const driver = getDriver();
213
+ const clock = driver.clock?.(track.end);
214
+ this.presentation = { track, base: 0, span: 1, startedAt: now, clock };
215
+ const cancelWindow = windowed
216
+ ? driver.after(track.end, () => this.sync())
217
+ : undefined;
218
+ this.cancelPresentation = () => {
219
+ cancelWindow?.();
220
+ clock?.cancel();
221
+ };
222
+ }
223
+ this.changed();
224
+ }
225
+ changed() {
156
226
  for (const binding of this.bindings)
157
227
  binding.sync();
228
+ for (const listener of [...this.listeners])
229
+ listener();
230
+ this.observers.changed(this.running);
158
231
  }
159
232
  /** The plan that plays this value's run, mapped, on one bound property. */
160
233
  plan(binding) {
161
- const run = this.run;
234
+ const run = this.presentation;
162
235
  const { property, read } = binding;
163
236
  const write = (value) => isDecorationProperty(property)
164
237
  ? clampDecoration(property, read(value))
165
238
  : read(value);
166
239
  if (!run) {
167
- const value = write(this.current);
240
+ const value = write(this.raw());
168
241
  return {
169
242
  property,
170
243
  keyframes: [],
@@ -208,21 +281,33 @@ class Root extends Derived {
208
281
  };
209
282
  return { property, keyframes: [], transition, track: mapped };
210
283
  }
284
+ /** Capture the current native presentation clock, even if a later command replaces it. */
285
+ captureTime() {
286
+ const run = this.presentation;
287
+ return run ? () => this.runTime(run) : () => 0;
288
+ }
211
289
  elapsed() {
212
- return this.run ? getDriver().now() - this.run.startedAt : 0;
290
+ return this.presentation ? this.runTime(this.presentation) : 0;
291
+ }
292
+ get paused() {
293
+ return this.runs.size > 0 && !this.running;
213
294
  }
214
295
  get running() {
215
- return this.run !== undefined;
296
+ return [...this.runs.values()].some((run) => !run.animation.paused);
216
297
  }
217
- halt() {
218
- const run = this.run;
298
+ halt(key) {
299
+ const run = this.runs.get(key);
219
300
  if (!run)
220
301
  return;
221
- this.run = undefined;
222
- run.cancel();
223
- run.settle(false);
302
+ this.runs.delete(key);
303
+ run.animation.stop();
224
304
  }
225
305
  }
306
+ function layerName(name) {
307
+ if (typeof name !== 'string' || !name.length)
308
+ throw new TypeError('A layer is named by a nonempty string.');
309
+ return name;
310
+ }
226
311
  const still = {
227
312
  curve: { type: 'tween', duration: 0, ease: [linear], times: undefined },
228
313
  delay: 0,
@@ -309,9 +394,13 @@ function attach(view, property, source) {
309
394
  getDriver().sync?.(view);
310
395
  return;
311
396
  }
312
- const elapsed = root.elapsed();
313
397
  const animation = new ViewAnimation(view, [root.plan(binding)]);
314
- if (elapsed > 1 && animation.duration > 0)
398
+ // Native keyframe setup can take time, especially for a composite track on Android.
399
+ // Catch up after construction so each binding joins the source's current phase.
400
+ const elapsed = root.elapsed();
401
+ if (root.paused)
402
+ animation.pause();
403
+ if ((elapsed > 1 || root.paused) && animation.duration > 0)
315
404
  animation.seekTime(elapsed);
316
405
  binding.animation = animation;
317
406
  },
@@ -330,6 +419,145 @@ function attach(view, property, source) {
330
419
  }
331
420
  };
332
421
  }
422
+ /** A read-only value on an existing finite animation's clock. No second animation or timer. */
423
+ export function playbackProgress(animation) {
424
+ const source = playbackSource(animation);
425
+ if (!Number.isFinite(source.read().duration))
426
+ throw new RangeError('Progress requires a finite animation.');
427
+ const root = new PlaybackValue(source);
428
+ return new Derived(root, (value) => value, false);
429
+ }
430
+ class PlaybackValue extends Root {
431
+ playback;
432
+ constructor(playback) {
433
+ super(0);
434
+ this.playback = playback;
435
+ const source = playback;
436
+ const off = source.subscribe(() => {
437
+ this.changed();
438
+ if (source.read().settled)
439
+ off();
440
+ });
441
+ if (source.read().settled)
442
+ off();
443
+ this.observers.changed(this.running);
444
+ }
445
+ raw() {
446
+ const state = this.playback.read();
447
+ return (state.position ??
448
+ (state.completed
449
+ ? 1
450
+ : state.duration > 0
451
+ ? Math.max(0, Math.min(1, state.time / state.duration))
452
+ : 0));
453
+ }
454
+ get running() {
455
+ const state = this.playback.read();
456
+ return state.ready && !state.settled && !state.paused && state.duration > 0;
457
+ }
458
+ get paused() {
459
+ return this.playback.read().paused;
460
+ }
461
+ captureTime() {
462
+ return () => this.playback.read().time;
463
+ }
464
+ elapsed() {
465
+ return this.playback.read().time;
466
+ }
467
+ plan(binding) {
468
+ const state = this.playback.read();
469
+ if (!state.ready || state.settled || state.duration === 0)
470
+ return {
471
+ property: binding.property,
472
+ keyframes: [],
473
+ transition: still,
474
+ track: () => instantTrack(binding.property, binding.read(this.raw())),
475
+ };
476
+ // Bypass timeScale: the source duration is already in platform playback milliseconds.
477
+ const duration = state.duration;
478
+ const at = (ms) => binding.read(Math.max(0, Math.min(1, ms / duration)));
479
+ const track = {
480
+ property: binding.property,
481
+ delay: 0,
482
+ duration,
483
+ repeat: 0,
484
+ reverse: false,
485
+ times: [0, 1],
486
+ values: [at(0), at(duration)],
487
+ to: at(duration),
488
+ end: duration,
489
+ arrival: duration,
490
+ valueAt: at,
491
+ velocityAt: (ms) => (at(ms + 0.5) - at(ms - 0.5)) * 1000,
492
+ };
493
+ // Piecewise/color derivations need intermediate samples, not only the two endpoints.
494
+ const steps = Math.max(1, Math.min(6000, Math.ceil((duration * 60) / 1000)));
495
+ const times = Array.from({ length: steps + 1 }, (_, i) => i / steps);
496
+ return {
497
+ property: binding.property,
498
+ keyframes: [],
499
+ transition: still,
500
+ track: () => reducedMotion() &&
501
+ binding.property !== 'opacity' &&
502
+ !isColorProperty(binding.property)
503
+ ? instantTrack(binding.property, at(duration))
504
+ : { ...track, times, values: times.map((time) => at(time * duration)) },
505
+ };
506
+ }
507
+ }
508
+ /** Internal compound-binding bridge. One raw snapshot per root keeps sibling mappings coherent. */
509
+ export function valueSource(source, color) {
510
+ if (!(source instanceof Derived) || source.color !== color)
511
+ throw new TypeError(`Gradient component needs a ${color ? 'color' : 'numeric'} Jolt value.`);
512
+ const { root, read } = source;
513
+ return {
514
+ identity: root,
515
+ read,
516
+ snapshot() {
517
+ return {
518
+ track: root.plan({ property: 'opacity', read: (value) => value })
519
+ .track(),
520
+ elapsed: root.elapsed(),
521
+ time: root.captureTime(),
522
+ running: root.running,
523
+ value: root.raw(),
524
+ };
525
+ },
526
+ subscribe(listener) {
527
+ root.listeners.add(listener);
528
+ return () => {
529
+ root.listeners.delete(listener);
530
+ };
531
+ },
532
+ };
533
+ }
534
+ /** Treat values as opaque identities in declarative option comparisons. */
535
+ export function isDerived(value) {
536
+ return value instanceof Derived;
537
+ }
538
+ /** Internal native-adapter bridge. Mappings are sampled at boundaries, never per frame. */
539
+ export function valuePlayback(source) {
540
+ if (!(source instanceof Derived) || source.color)
541
+ throw new TypeError('A native binding needs a numeric Jolt value.');
542
+ const { root, read } = source;
543
+ return {
544
+ snapshot() {
545
+ return {
546
+ track: root.plan({ property: 'opacity', read }).track(),
547
+ elapsed: root.elapsed(),
548
+ paused: root.paused,
549
+ running: root.running,
550
+ value: read(root.raw()),
551
+ };
552
+ },
553
+ subscribe(listener) {
554
+ root.listeners.add(listener);
555
+ return () => {
556
+ root.listeners.delete(listener);
557
+ };
558
+ },
559
+ };
560
+ }
333
561
  function release(binding) {
334
562
  binding.root.bindings.delete(binding);
335
563
  binding.view.off('loaded', binding.sync);
@@ -353,8 +581,16 @@ function mapping(input, output, options = {}) {
353
581
  throw new RangeError('to() needs at least two input and output values.');
354
582
  if (input.length !== output.length)
355
583
  throw new RangeError(`to() has ${input.length} inputs but ${output.length} outputs; give one output per input.`);
356
- if (input.some((value, i) => !Number.isFinite(value) || value < (input[i - 1] ?? -Infinity)))
357
- throw new RangeError('to() inputs must be finite and never decrease.');
584
+ if (input.some((value) => !Number.isFinite(value)))
585
+ throw new RangeError('to() inputs must all be finite numbers.');
586
+ const descending = input[input.length - 1] < input[0];
587
+ if (input.some((value, i) => i > 0 && (descending ? value > input[i - 1] : value < input[i - 1])))
588
+ throw new RangeError('to() inputs must be monotonic (ascending or descending); ranges cannot change direction.');
589
+ // Normalize pairs together, without changing caller-owned arrays or duplicate-stop rules.
590
+ if (descending) {
591
+ input = [...input].reverse();
592
+ output = [...output].reverse();
593
+ }
358
594
  const color = typeof output[0] !== 'number';
359
595
  const numbers = color ? output.map((value) => parseColor(value)) : output;
360
596
  if (!color &&
@@ -1 +1 @@
1
- {"version":3,"file":"motion-value.js","sourceRoot":"","sources":["../src/motion-value.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"motion-value.js","sourceRoot":"","sources":["../src/motion-value.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export { registerNativeProperty, checkNativeProperty } from '../native-property.js';
2
+ export type { NativeProperty, NativePropertyDefinition } from '../native-property.js';
3
+ export type { NativeSink } from '../native-property-driver.js';
4
+ export { mapKitCoordinate, mapKitCamera, mapLibreCoordinate, mapLibreCamera, sceneKitPose, } from '../native-properties.js';
5
+ export type { Coordinate, MapKitCamera, MapLibreCamera, ScenePose, } from '../native-properties.js';
6
+ export { sceneKitLightIntensity, sceneKitLightColor, sceneKitMaterialTransparency, sceneKitMaterialDiffuse, sceneKitMaterialEmission, } from '../scene-appearance.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/native/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACnF,YAAY,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrF,YAAY,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,YAAY,GACb,MAAM,yBAAyB,CAAA;AAChC,YAAY,EACV,UAAU,EACV,YAAY,EACZ,cAAc,EACd,SAAS,GACV,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,wBAAwB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export { registerNativeProperty, checkNativeProperty } from '../native-property.js';
2
+ export { mapKitCoordinate, mapKitCamera, mapLibreCoordinate, mapLibreCamera, sceneKitPose, } from '../native-properties.js';
3
+ export { sceneKitLightIntensity, sceneKitLightColor, sceneKitMaterialTransparency, sceneKitMaterialDiffuse, sceneKitMaterialEmission, } from '../scene-appearance.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/native/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAGnF,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,YAAY,GACb,MAAM,yBAAyB,CAAA;AAOhC,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,wBAAwB,CAAA"}