@rafaelaugusto/jolt 0.1.0-beta.1 → 0.1.0-beta.3

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 (91) hide show
  1. package/README.md +115 -8
  2. package/dist/animate.d.ts +3 -1
  3. package/dist/animate.d.ts.map +1 -1
  4. package/dist/animate.js +83 -6
  5. package/dist/animate.js.map +1 -1
  6. package/dist/decay.d.ts +11 -0
  7. package/dist/decay.d.ts.map +1 -0
  8. package/dist/decay.js +22 -0
  9. package/dist/decay.js.map +1 -0
  10. package/dist/driver/android.d.ts +1 -1
  11. package/dist/driver/android.d.ts.map +1 -1
  12. package/dist/driver/android.js +95 -5
  13. package/dist/driver/android.js.map +1 -1
  14. package/dist/driver/index.d.ts +3 -1
  15. package/dist/driver/index.d.ts.map +1 -1
  16. package/dist/driver/index.js.map +1 -1
  17. package/dist/driver/ios.d.ts.map +1 -1
  18. package/dist/driver/ios.js +7 -0
  19. package/dist/driver/ios.js.map +1 -1
  20. package/dist/engine.d.ts +6 -3
  21. package/dist/engine.d.ts.map +1 -1
  22. package/dist/engine.js +21 -5
  23. package/dist/engine.js.map +1 -1
  24. package/dist/haptics.d.ts +18 -0
  25. package/dist/haptics.d.ts.map +1 -0
  26. package/dist/haptics.js +96 -0
  27. package/dist/haptics.js.map +1 -0
  28. package/dist/index.d.ts +14 -1
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +7 -1
  31. package/dist/index.js.map +1 -1
  32. package/dist/loader.d.ts +19 -0
  33. package/dist/loader.d.ts.map +1 -0
  34. package/dist/loader.js +172 -0
  35. package/dist/loader.js.map +1 -0
  36. package/dist/particles.d.ts +39 -0
  37. package/dist/particles.d.ts.map +1 -0
  38. package/dist/particles.js +264 -0
  39. package/dist/particles.js.map +1 -0
  40. package/dist/properties.d.ts +1 -1
  41. package/dist/properties.d.ts.map +1 -1
  42. package/dist/properties.js +1 -1
  43. package/dist/properties.js.map +1 -1
  44. package/dist/reveal.d.ts +25 -0
  45. package/dist/reveal.d.ts.map +1 -0
  46. package/dist/reveal.js +293 -0
  47. package/dist/reveal.js.map +1 -0
  48. package/dist/shimmer.d.ts +12 -0
  49. package/dist/shimmer.d.ts.map +1 -0
  50. package/dist/shimmer.js +160 -0
  51. package/dist/shimmer.js.map +1 -0
  52. package/dist/symbol-effect.d.ts +23 -0
  53. package/dist/symbol-effect.d.ts.map +1 -0
  54. package/dist/symbol-effect.js +186 -0
  55. package/dist/symbol-effect.js.map +1 -0
  56. package/dist/text-layout.d.ts +22 -0
  57. package/dist/text-layout.d.ts.map +1 -0
  58. package/dist/text-layout.js +179 -0
  59. package/dist/text-layout.js.map +1 -0
  60. package/dist/text.d.ts +17 -0
  61. package/dist/text.d.ts.map +1 -0
  62. package/dist/text.js +264 -0
  63. package/dist/text.js.map +1 -0
  64. package/dist/track.d.ts.map +1 -1
  65. package/dist/track.js +25 -3
  66. package/dist/track.js.map +1 -1
  67. package/dist/transition.d.ts +5 -0
  68. package/dist/transition.d.ts.map +1 -1
  69. package/dist/transition.js.map +1 -1
  70. package/dist/types.d.ts +17 -0
  71. package/dist/types.d.ts.map +1 -1
  72. package/package.json +2 -1
  73. package/src/animate.ts +96 -4
  74. package/src/decay.ts +45 -0
  75. package/src/driver/android.ts +112 -6
  76. package/src/driver/index.ts +3 -1
  77. package/src/driver/ios.ts +11 -0
  78. package/src/engine.ts +22 -6
  79. package/src/haptics.ts +125 -0
  80. package/src/index.ts +18 -1
  81. package/src/loader.ts +201 -0
  82. package/src/particles.ts +323 -0
  83. package/src/properties.ts +1 -1
  84. package/src/reveal.ts +374 -0
  85. package/src/shimmer.ts +179 -0
  86. package/src/symbol-effect.ts +225 -0
  87. package/src/text-layout.ts +216 -0
  88. package/src/text.ts +296 -0
  89. package/src/track.ts +42 -3
  90. package/src/transition.ts +6 -0
  91. package/src/types.ts +16 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import type { Target } from './types.js';
2
+ export interface ConfettiOptions {
3
+ /** Approximate number of particles in the burst. Defaults to 80. */
4
+ count?: number;
5
+ colors?: readonly string[];
6
+ }
7
+ export interface ParticleOptions {
8
+ colors?: readonly string[];
9
+ shape?: 'circle' | 'rectangle' | 'ring';
10
+ /** Center point, or a line across the top/bottom of the target. */
11
+ source?: 'center' | 'top' | 'bottom';
12
+ /** Total particles per second, shared across all colors. Defaults to 20. */
13
+ rate?: number;
14
+ /** Particle lifetime in milliseconds. Defaults to 3000. */
15
+ lifetime?: number;
16
+ /** Longest side in DIPs. Defaults to 6. */
17
+ size?: number;
18
+ /** DIPs per second. Defaults to 60. */
19
+ velocity?: number;
20
+ velocityRange?: number;
21
+ /** Degrees clockwise from right: -90 is up, 90 is down. Defaults to -90. */
22
+ angle?: number;
23
+ /** Emission cone in degrees, from 0 to 360. Defaults to 30. */
24
+ spread?: number;
25
+ /** Downward acceleration in DIPs per second squared. Defaults to 0. */
26
+ gravity?: number;
27
+ /** Degrees per second. Defaults to 0. */
28
+ spin?: number;
29
+ spinRange?: number;
30
+ /** Fade each particle over its lifetime. Defaults to true. */
31
+ fadeOut?: boolean;
32
+ /** Emit for this many milliseconds, then let particles expire. Omit to keep emitting. */
33
+ duration?: number;
34
+ }
35
+ /** Bursts from the target's center into its window. iOS only; returns immediate cleanup. */
36
+ export declare function confetti(target: Target, options?: ConfettiOptions): () => void;
37
+ /** Adds a native particle emitter to the target. iOS only; returns immediate cleanup. */
38
+ export declare function particles(target: Target, options?: ParticleOptions): () => void;
39
+ //# sourceMappingURL=particles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"particles.d.ts","sourceRoot":"","sources":["../src/particles.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC1B,KAAK,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAA;IACvC,mEAAmE;IACnE,MAAM,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAA;IACpC,4EAA4E;IAC5E,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAUD,4FAA4F;AAC5F,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,MAAM,IAAI,CAqBlF;AAED,yFAAyF;AACzF,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,MAAM,IAAI,CAEnF"}
@@ -0,0 +1,264 @@
1
+ import { Application, Color, isIOS } from '@nativescript/core';
2
+ import { toView } from './animate.js';
3
+ const bursts = new WeakMap();
4
+ const emitters = new WeakMap();
5
+ const palette = ['#facc15', '#ef4444', '#3b82f6', '#22c55e', '#a855f7'];
6
+ const textures = new Map();
7
+ const radians = (degrees) => (degrees * Math.PI) / 180;
8
+ const BURST_DURATION = 200;
9
+ /** Bursts from the target's center into its window. iOS only; returns immediate cleanup. */
10
+ export function confetti(target, options = {}) {
11
+ const count = number('count', options.count ?? 80, 0, 10000);
12
+ if (!Number.isInteger(count))
13
+ throw new RangeError('Particle count must be an integer.');
14
+ const settings = resolve({
15
+ colors: options.colors ?? palette,
16
+ shape: 'rectangle',
17
+ rate: count / (BURST_DURATION / 1000),
18
+ duration: BURST_DURATION,
19
+ lifetime: 2200,
20
+ size: 8,
21
+ velocity: 260,
22
+ velocityRange: 100,
23
+ angle: -90,
24
+ spread: 100,
25
+ gravity: 420,
26
+ spinRange: 360,
27
+ }, true);
28
+ return start(target, settings, true);
29
+ }
30
+ /** Adds a native particle emitter to the target. iOS only; returns immediate cleanup. */
31
+ export function particles(target, options = {}) {
32
+ return start(target, resolve(options), false);
33
+ }
34
+ function start(target, settings, overlay) {
35
+ const view = toView(target);
36
+ const running = overlay ? bursts : emitters;
37
+ running.get(view)?.();
38
+ if (!isIOS || settings.rate === 0 || UIAccessibilityIsReduceMotionEnabled())
39
+ return () => { };
40
+ return new Emitter(view, settings, overlay, running).stop;
41
+ }
42
+ function resolve(options, burst = false) {
43
+ const colors = options.colors ?? ['#ffffff'];
44
+ if (!Array.isArray(colors) ||
45
+ colors.length === 0 ||
46
+ colors.length > 32 ||
47
+ Array.from(colors).some((color) => typeof color !== 'string' || !Color.isValid(color)))
48
+ throw new TypeError('Particles need 1 to 32 valid color strings.');
49
+ const shape = options.shape ?? 'circle';
50
+ const source = options.source ?? 'center';
51
+ if (!['circle', 'rectangle', 'ring'].includes(shape))
52
+ throw new TypeError('Unknown particle shape.');
53
+ if (!['center', 'top', 'bottom'].includes(source))
54
+ throw new TypeError('Unknown particle source.');
55
+ const lifetime = number('lifetime', options.lifetime ?? 3000, 1, 60000);
56
+ const rate = number('rate', options.rate ?? 20, 0, burst ? 50000 : 10000);
57
+ if (!burst && (rate * lifetime) / 1000 > 10000)
58
+ throw new RangeError('Particle rate × lifetime must not exceed 10000 live particles.');
59
+ const duration = options.duration === undefined
60
+ ? undefined
61
+ : number('duration', options.duration, 1, 2147483647 - lifetime - 50);
62
+ const fadeOut = options.fadeOut ?? true;
63
+ if (typeof fadeOut !== 'boolean')
64
+ throw new TypeError('Particle fadeOut must be a boolean.');
65
+ return {
66
+ colors: [...colors],
67
+ shape,
68
+ source,
69
+ lifetime,
70
+ rate,
71
+ duration,
72
+ fadeOut,
73
+ size: number('size', options.size ?? 6, 1, 128),
74
+ velocity: number('velocity', options.velocity ?? 60, 0, 10000),
75
+ velocityRange: number('velocityRange', options.velocityRange ?? 0, 0, 10000),
76
+ angle: number('angle', options.angle ?? -90, -360, 360),
77
+ spread: number('spread', options.spread ?? 30, 0, 360),
78
+ gravity: number('gravity', options.gravity ?? 0, -10000, 10000),
79
+ spin: number('spin', options.spin ?? 0, -3600, 3600),
80
+ spinRange: number('spinRange', options.spinRange ?? 0, 0, 3600),
81
+ };
82
+ }
83
+ function number(name, value, min, max) {
84
+ if (!Number.isFinite(value) || value < min || value > max)
85
+ throw new RangeError(`Particle ${name} must be between ${min} and ${max}.`);
86
+ return value;
87
+ }
88
+ class Emitter {
89
+ view;
90
+ settings;
91
+ overlay;
92
+ running;
93
+ stopped = false;
94
+ queued = false;
95
+ layer;
96
+ native;
97
+ window;
98
+ timer;
99
+ observer;
100
+ constructor(view, settings, overlay, running) {
101
+ this.view = view;
102
+ this.settings = settings;
103
+ this.overlay = overlay;
104
+ this.running = running;
105
+ running.set(view, this.stop);
106
+ view.on('loaded', this.schedule);
107
+ view.on('layoutChanged', this.schedule);
108
+ view.on('unloaded', this.stop);
109
+ this.schedule();
110
+ }
111
+ stop = () => {
112
+ if (this.stopped)
113
+ return;
114
+ this.stopped = true;
115
+ this.view.off('loaded', this.schedule);
116
+ this.view.off('layoutChanged', this.schedule);
117
+ this.view.off('unloaded', this.stop);
118
+ if (this.running.get(this.view) === this.stop)
119
+ this.running.delete(this.view);
120
+ if (this.timer !== undefined)
121
+ clearTimeout(this.timer);
122
+ if (this.observer)
123
+ Application.ios.removeNotificationObserver(this.observer, UIAccessibilityReduceMotionStatusDidChangeNotification);
124
+ this.layer?.removeAllAnimations();
125
+ this.layer?.removeFromSuperlayer();
126
+ this.layer = this.native = this.window = undefined;
127
+ this.timer = this.observer = undefined;
128
+ };
129
+ schedule = () => {
130
+ if (this.stopped || this.queued)
131
+ return;
132
+ this.queued = true;
133
+ void Promise.resolve().then(() => {
134
+ this.queued = false;
135
+ if (this.stopped)
136
+ return;
137
+ try {
138
+ this.update();
139
+ }
140
+ catch (error) {
141
+ this.stop();
142
+ throw error;
143
+ }
144
+ });
145
+ };
146
+ motionChanged = () => {
147
+ if (UIAccessibilityIsReduceMotionEnabled())
148
+ this.stop();
149
+ };
150
+ update() {
151
+ if (!this.view.isLoaded)
152
+ return;
153
+ if (UIAccessibilityIsReduceMotionEnabled())
154
+ return this.stop();
155
+ const native = this.view.nativeViewProtected;
156
+ const window = native?.window;
157
+ if (this.layer && (!native || !window))
158
+ return this.stop();
159
+ if (!native || !window)
160
+ return;
161
+ if (this.native && (this.native !== native || this.window !== window))
162
+ return this.stop();
163
+ const bounds = native.layer.bounds;
164
+ if (bounds.size.width <= 0 || bounds.size.height <= 0) {
165
+ if (this.layer)
166
+ this.stop();
167
+ return;
168
+ }
169
+ CATransaction.begin();
170
+ CATransaction.setDisableActions(true);
171
+ try {
172
+ if (!this.layer) {
173
+ this.native = native;
174
+ this.window = window;
175
+ const host = this.overlay ? window.layer : native.layer;
176
+ const layer = (this.layer = CAEmitterLayer.new());
177
+ layer.name = this.overlay ? 'jolt:confetti' : 'jolt:particles';
178
+ layer.frame = host.bounds;
179
+ layer.emitterShape =
180
+ this.settings.source === 'center' ? kCAEmitterLayerPoint : kCAEmitterLayerLine;
181
+ layer.emitterCells = NSArray.arrayWithArray(this.cells());
182
+ host.addSublayer(layer);
183
+ // Start from an empty emitter, even if its parent has been alive for hours.
184
+ layer.beginTime = host.convertTimeFromLayer(CACurrentMediaTime(), null);
185
+ if (this.overlay)
186
+ layer.emitterPosition = native.convertPointToView(CGPointMake(bounds.origin.x + bounds.size.width / 2, bounds.origin.y + bounds.size.height / 2), window);
187
+ this.observer = Application.ios.addNotificationObserver(UIAccessibilityReduceMotionStatusDidChangeNotification, this.motionChanged);
188
+ if (this.settings.duration !== undefined) {
189
+ // The render server stops emission even if JS is blocked. The timer
190
+ // only removes the empty layer after the last particles have expired.
191
+ layer.birthRate = 0;
192
+ const emission = CABasicAnimation.animationWithKeyPath('birthRate');
193
+ emission.fromValue = 1;
194
+ emission.toValue = 1;
195
+ emission.duration = this.settings.duration / 1000;
196
+ layer.addAnimationForKey(emission, 'jolt:emission');
197
+ this.timer = setTimeout(this.stop, this.settings.duration + this.settings.lifetime + 50);
198
+ }
199
+ }
200
+ if (!this.overlay) {
201
+ const layer = this.layer;
202
+ layer.frame = bounds;
203
+ layer.emitterSize = CGSizeMake(bounds.size.width, 0);
204
+ layer.emitterPosition = CGPointMake(bounds.size.width / 2, this.settings.source === 'top'
205
+ ? 0
206
+ : this.settings.source === 'bottom'
207
+ ? bounds.size.height
208
+ : bounds.size.height / 2);
209
+ }
210
+ }
211
+ finally {
212
+ CATransaction.commit();
213
+ }
214
+ }
215
+ cells() {
216
+ const options = this.settings;
217
+ const image = texture(options.shape);
218
+ return options.colors.map((color) => {
219
+ const cell = CAEmitterCell.emitterCell();
220
+ cell.contents = image.CGImage;
221
+ cell.color = new Color(color).ios.CGColor;
222
+ cell.birthRate = options.rate / options.colors.length;
223
+ cell.lifetime = options.lifetime / 1000;
224
+ cell.scale = options.size / 32;
225
+ cell.velocity = options.velocity;
226
+ cell.velocityRange = options.velocityRange;
227
+ // Horizontal line emitters point upward at longitude zero; point
228
+ // emitters point right. Keep the public angle in view coordinates.
229
+ cell.emissionLongitude = radians(options.angle + (options.source === 'center' ? 0 : 90));
230
+ cell.emissionRange = radians(options.spread);
231
+ cell.yAcceleration = options.gravity;
232
+ cell.spin = radians(options.spin);
233
+ cell.spinRange = radians(options.spinRange);
234
+ cell.alphaSpeed = options.fadeOut ? -1 / cell.lifetime : 0;
235
+ return cell;
236
+ });
237
+ }
238
+ }
239
+ function texture(shape) {
240
+ const cached = textures.get(shape);
241
+ if (cached)
242
+ return cached;
243
+ const format = UIGraphicsImageRendererFormat.defaultFormat();
244
+ format.scale = 1;
245
+ format.opaque = false;
246
+ const height = shape === 'rectangle' ? 18 : 32;
247
+ const renderer = UIGraphicsImageRenderer.alloc().initWithSizeFormat(CGSizeMake(32, height), format);
248
+ const image = renderer.imageWithActions((context) => {
249
+ const cg = context.CGContext;
250
+ CGContextSetFillColorWithColor(cg, UIColor.whiteColor.CGColor);
251
+ if (shape === 'rectangle')
252
+ CGContextFillRect(cg, CGRectMake(0, 0, 32, height));
253
+ else if (shape === 'circle')
254
+ CGContextFillEllipseInRect(cg, CGRectMake(0, 0, 32, 32));
255
+ else {
256
+ CGContextSetStrokeColorWithColor(cg, UIColor.whiteColor.CGColor);
257
+ CGContextSetLineWidth(cg, 3);
258
+ CGContextStrokeEllipseInRect(cg, CGRectMake(2, 2, 28, 28));
259
+ }
260
+ });
261
+ textures.set(shape, image);
262
+ return image;
263
+ }
264
+ //# sourceMappingURL=particles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"particles.js","sourceRoot":"","sources":["../src/particles.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { View } from '@nativescript/core';
2
2
  export type Property = 'opacity' | 'x' | 'y' | 'scaleX' | 'scaleY' | 'rotate' | 'rotateX' | 'rotateY';
3
- /** How close to its target a spring has to be to count as settled. */
3
+ /** How close to its target a spring or decay has to be to count as settled. */
4
4
  export declare const precision: Record<Property, number>;
5
5
  export declare function isProperty(key: string): key is Property;
6
6
  export declare function readValue(view: View, property: Property): number;
@@ -1 +1 @@
1
- {"version":3,"file":"properties.d.ts","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAE9C,MAAM,MAAM,QAAQ,GAClB,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;AAwBhF,sEAAsE;AACtE,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAS9C,CAAA;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,QAAQ,CAEvD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAGhE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAEvE"}
1
+ {"version":3,"file":"properties.d.ts","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAE9C,MAAM,MAAM,QAAQ,GAClB,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;AAwBhF,+EAA+E;AAC/E,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAS9C,CAAA;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,QAAQ,CAEvD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAGhE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAEvE"}
@@ -18,7 +18,7 @@ const defaults = {
18
18
  rotateX: 0,
19
19
  rotateY: 0,
20
20
  };
21
- /** How close to its target a spring has to be to count as settled. */
21
+ /** How close to its target a spring or decay has to be to count as settled. */
22
22
  export const precision = {
23
23
  opacity: 0.002,
24
24
  x: 0.25,
@@ -1 +1 @@
1
- {"version":3,"file":"properties.js","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":"AAKA,MAAM,QAAQ,GAAG;IACf,OAAO,EAAE,SAAS;IAClB,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,YAAY;IACf,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;CAC6B,CAAA;AAEjD,MAAM,QAAQ,GAA6B;IACzC,OAAO,EAAE,CAAC;IACV,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;CACX,CAAA;AAED,sEAAsE;AACtE,MAAM,CAAC,MAAM,SAAS,GAA6B;IACjD,OAAO,EAAE,KAAK;IACd,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;CACb,CAAA;AAED,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,OAAO,GAAG,IAAI,QAAQ,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAU,EAAE,QAAkB;IACtD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AACvF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAU,EAAE,QAAkB,EAAE,KAAa;IACtE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAA;AAClC,CAAC"}
1
+ {"version":3,"file":"properties.js","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":"AAKA,MAAM,QAAQ,GAAG;IACf,OAAO,EAAE,SAAS;IAClB,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,YAAY;IACf,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;CAC6B,CAAA;AAEjD,MAAM,QAAQ,GAA6B;IACzC,OAAO,EAAE,CAAC;IACV,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;CACX,CAAA;AAED,+EAA+E;AAC/E,MAAM,CAAC,MAAM,SAAS,GAA6B;IACjD,OAAO,EAAE,KAAK;IACd,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,IAAI;IACP,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;CACb,CAAA;AAED,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,OAAO,GAAG,IAAI,QAAQ,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAU,EAAE,QAAkB;IACtD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AACvF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAU,EAAE,QAAkB,EAAE,KAAa;IACtE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAA;AAClC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { Animation } from './engine.js';
2
+ import type { Target } from './types.js';
3
+ export interface RevealOptions {
4
+ /** Circle origin in DIPs from the target's top-left corner. Defaults to its center. */
5
+ from?: {
6
+ x: number;
7
+ y: number;
8
+ };
9
+ /** Milliseconds. Defaults to 400; zero changes visibility immediately. */
10
+ duration?: number;
11
+ }
12
+ export interface ConcealOptions {
13
+ /** Circle destination in DIPs from the target's top-left corner. Defaults to its center. */
14
+ to?: {
15
+ x: number;
16
+ y: number;
17
+ };
18
+ /** Milliseconds. Defaults to 400; zero changes visibility immediately. */
19
+ duration?: number;
20
+ }
21
+ /** Reveals an iOS view through an expanding circle, then removes the temporary mask. */
22
+ export declare function reveal(target: Target, options?: RevealOptions): Animation;
23
+ /** Contracts an iOS view to a point, then sets visibility to 'hidden' without collapsing layout. */
24
+ export declare function conceal(target: Target, options?: ConcealOptions): Animation;
25
+ //# sourceMappingURL=reveal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reveal.d.ts","sourceRoot":"","sources":["../src/reveal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC,MAAM,WAAW,aAAa;IAC5B,uFAAuF;IACvF,IAAI,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/B,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,4FAA4F;IAC5F,EAAE,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAWD,wFAAwF;AACxF,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,SAAS,CAE7E;AAED,oGAAoG;AACpG,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,SAAS,CAE/E"}