@rafaelaugusto/jolt 0.1.0-rc.1 → 0.1.0-rc.10

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 (784) hide show
  1. package/README.md +43 -13
  2. package/dist/animate.d.ts.map +1 -1
  3. package/dist/animate.js +20 -5
  4. package/dist/animate.js.map +1 -1
  5. package/dist/bottom-sheet/geometry.d.ts +2 -17
  6. package/dist/bottom-sheet/geometry.d.ts.map +1 -1
  7. package/dist/bottom-sheet/geometry.js +1 -50
  8. package/dist/bottom-sheet/geometry.js.map +1 -1
  9. package/dist/bottom-sheet/index.d.ts +10 -0
  10. package/dist/bottom-sheet/index.d.ts.map +1 -1
  11. package/dist/bottom-sheet/index.js +72 -22
  12. package/dist/bottom-sheet/index.js.map +1 -1
  13. package/dist/bottom-sheet/native.d.ts +5 -0
  14. package/dist/bottom-sheet/native.d.ts.map +1 -1
  15. package/dist/bottom-sheet/native.js +6 -0
  16. package/dist/bottom-sheet/native.js.map +1 -1
  17. package/dist/color.d.ts +2 -4
  18. package/dist/color.d.ts.map +1 -1
  19. package/dist/color.js +1 -41
  20. package/dist/color.js.map +1 -1
  21. package/dist/core/arrival.d.ts +19 -0
  22. package/dist/core/arrival.d.ts.map +1 -0
  23. package/dist/core/arrival.js +19 -0
  24. package/dist/core/arrival.js.map +1 -0
  25. package/dist/core/circle-math.d.ts +90 -0
  26. package/dist/core/circle-math.d.ts.map +1 -0
  27. package/dist/core/circle-math.js +395 -0
  28. package/dist/core/circle-math.js.map +1 -0
  29. package/dist/core/color.d.ts +5 -0
  30. package/dist/core/color.d.ts.map +1 -0
  31. package/dist/core/color.js +42 -0
  32. package/dist/core/color.js.map +1 -0
  33. package/dist/core/decay.d.ts +12 -0
  34. package/dist/core/decay.d.ts.map +1 -0
  35. package/dist/core/decay.js +29 -0
  36. package/dist/core/decay.js.map +1 -0
  37. package/dist/core/decoration.d.ts +5 -0
  38. package/dist/core/decoration.d.ts.map +1 -0
  39. package/dist/core/decoration.js +22 -0
  40. package/dist/core/decoration.js.map +1 -0
  41. package/dist/core/drag-physics.d.ts +25 -0
  42. package/dist/core/drag-physics.d.ts.map +1 -0
  43. package/dist/core/drag-physics.js +75 -0
  44. package/dist/core/drag-physics.js.map +1 -0
  45. package/dist/core/driver.d.ts +41 -0
  46. package/dist/core/driver.d.ts.map +1 -0
  47. package/dist/core/driver.js +2 -0
  48. package/dist/core/driver.js.map +1 -0
  49. package/dist/core/easing.d.ts +10 -0
  50. package/dist/core/easing.d.ts.map +1 -0
  51. package/dist/core/easing.js +88 -0
  52. package/dist/core/easing.js.map +1 -0
  53. package/dist/core/gesture-math.d.ts +22 -0
  54. package/dist/core/gesture-math.d.ts.map +1 -0
  55. package/dist/core/gesture-math.js +45 -0
  56. package/dist/core/gesture-math.js.map +1 -0
  57. package/dist/core/gradient.d.ts +16 -0
  58. package/dist/core/gradient.d.ts.map +1 -0
  59. package/dist/core/gradient.js +27 -0
  60. package/dist/core/gradient.js.map +1 -0
  61. package/dist/core/gravity.d.ts +13 -0
  62. package/dist/core/gravity.d.ts.map +1 -0
  63. package/dist/core/gravity.js +84 -0
  64. package/dist/core/gravity.js.map +1 -0
  65. package/dist/core/haptic.d.ts +10 -0
  66. package/dist/core/haptic.d.ts.map +1 -0
  67. package/dist/core/haptic.js +19 -0
  68. package/dist/core/haptic.js.map +1 -0
  69. package/dist/core/index.d.ts +7 -0
  70. package/dist/core/index.d.ts.map +1 -0
  71. package/dist/core/index.js +6 -0
  72. package/dist/core/index.js.map +1 -0
  73. package/dist/core/liquid-grid.d.ts +3 -0
  74. package/dist/core/liquid-grid.d.ts.map +1 -0
  75. package/dist/core/liquid-grid.js +24 -0
  76. package/dist/core/liquid-grid.js.map +1 -0
  77. package/dist/core/numeric-map.d.ts +11 -0
  78. package/dist/core/numeric-map.d.ts.map +1 -0
  79. package/dist/core/numeric-map.js +48 -0
  80. package/dist/core/numeric-map.js.map +1 -0
  81. package/dist/core/ownership.d.ts +7 -0
  82. package/dist/core/ownership.d.ts.map +1 -0
  83. package/dist/core/ownership.js +23 -0
  84. package/dist/core/ownership.js.map +1 -0
  85. package/dist/core/playback.d.ts +49 -0
  86. package/dist/core/playback.d.ts.map +1 -0
  87. package/dist/core/playback.js +58 -0
  88. package/dist/core/playback.js.map +1 -0
  89. package/dist/core/presets.d.ts +298 -0
  90. package/dist/core/presets.d.ts.map +1 -0
  91. package/dist/core/presets.js +127 -0
  92. package/dist/core/presets.js.map +1 -0
  93. package/dist/core/properties.d.ts +8 -0
  94. package/dist/core/properties.d.ts.map +1 -0
  95. package/dist/core/properties.js +33 -0
  96. package/dist/core/properties.js.map +1 -0
  97. package/dist/core/reorder.d.ts +12 -0
  98. package/dist/core/reorder.d.ts.map +1 -0
  99. package/dist/core/reorder.js +30 -0
  100. package/dist/core/reorder.js.map +1 -0
  101. package/dist/core/roll-diff.d.ts +22 -0
  102. package/dist/core/roll-diff.d.ts.map +1 -0
  103. package/dist/core/roll-diff.js +36 -0
  104. package/dist/core/roll-diff.js.map +1 -0
  105. package/dist/core/sampling.d.ts +35 -0
  106. package/dist/core/sampling.d.ts.map +1 -0
  107. package/dist/core/sampling.js +123 -0
  108. package/dist/core/sampling.js.map +1 -0
  109. package/dist/core/scroll-header.d.ts +19 -0
  110. package/dist/core/scroll-header.d.ts.map +1 -0
  111. package/dist/core/scroll-header.js +56 -0
  112. package/dist/core/scroll-header.js.map +1 -0
  113. package/dist/core/sequence.d.ts +32 -0
  114. package/dist/core/sequence.d.ts.map +1 -0
  115. package/dist/core/sequence.js +367 -0
  116. package/dist/core/sequence.js.map +1 -0
  117. package/dist/core/shape-path.d.ts +10 -0
  118. package/dist/core/shape-path.d.ts.map +1 -0
  119. package/dist/core/shape-path.js +106 -0
  120. package/dist/core/shape-path.js.map +1 -0
  121. package/dist/core/sheet-geometry.d.ts +23 -0
  122. package/dist/core/sheet-geometry.d.ts.map +1 -0
  123. package/dist/core/sheet-geometry.js +55 -0
  124. package/dist/core/sheet-geometry.js.map +1 -0
  125. package/dist/core/spring.d.ts +31 -0
  126. package/dist/core/spring.d.ts.map +1 -0
  127. package/dist/core/spring.js +80 -0
  128. package/dist/core/spring.js.map +1 -0
  129. package/dist/core/state-transition.d.ts +16 -0
  130. package/dist/core/state-transition.d.ts.map +1 -0
  131. package/dist/core/state-transition.js +66 -0
  132. package/dist/core/state-transition.js.map +1 -0
  133. package/dist/core/svg-path.d.ts +32 -0
  134. package/dist/core/svg-path.d.ts.map +1 -0
  135. package/dist/core/svg-path.js +282 -0
  136. package/dist/core/svg-path.js.map +1 -0
  137. package/dist/core/track.d.ts +38 -0
  138. package/dist/core/track.d.ts.map +1 -0
  139. package/dist/core/track.js +476 -0
  140. package/dist/core/track.js.map +1 -0
  141. package/dist/core/transition.d.ts +116 -0
  142. package/dist/core/transition.d.ts.map +1 -0
  143. package/dist/core/transition.js +211 -0
  144. package/dist/core/transition.js.map +1 -0
  145. package/dist/decay.d.ts +1 -11
  146. package/dist/decay.d.ts.map +1 -1
  147. package/dist/decay.js +1 -28
  148. package/dist/decay.js.map +1 -1
  149. package/dist/decoration.d.ts +2 -5
  150. package/dist/decoration.d.ts.map +1 -1
  151. package/dist/decoration.js +2 -21
  152. package/dist/decoration.js.map +1 -1
  153. package/dist/drag-physics.d.ts +1 -24
  154. package/dist/drag-physics.d.ts.map +1 -1
  155. package/dist/drag-physics.js +1 -74
  156. package/dist/drag-physics.js.map +1 -1
  157. package/dist/driver/android.d.ts.map +1 -1
  158. package/dist/driver/android.js +24 -7
  159. package/dist/driver/android.js.map +1 -1
  160. package/dist/driver/index.d.ts +3 -38
  161. package/dist/driver/index.d.ts.map +1 -1
  162. package/dist/driver/index.js.map +1 -1
  163. package/dist/easing.d.ts +1 -9
  164. package/dist/easing.d.ts.map +1 -1
  165. package/dist/easing.js +1 -87
  166. package/dist/easing.js.map +1 -1
  167. package/dist/engine.d.ts +2 -28
  168. package/dist/engine.d.ts.map +1 -1
  169. package/dist/engine.js +25 -38
  170. package/dist/engine.js.map +1 -1
  171. package/dist/gradient-binding.d.ts +3 -4
  172. package/dist/gradient-binding.d.ts.map +1 -1
  173. package/dist/gradient-binding.js +3 -23
  174. package/dist/gradient-binding.js.map +1 -1
  175. package/dist/gradient.d.ts +2 -9
  176. package/dist/gradient.d.ts.map +1 -1
  177. package/dist/gradient.js.map +1 -1
  178. package/dist/gravity.d.ts +1 -12
  179. package/dist/gravity.d.ts.map +1 -1
  180. package/dist/gravity.js +1 -83
  181. package/dist/gravity.js.map +1 -1
  182. package/dist/haptics.d.ts +3 -9
  183. package/dist/haptics.d.ts.map +1 -1
  184. package/dist/haptics.js +1 -18
  185. package/dist/haptics.js.map +1 -1
  186. package/dist/index.d.ts +5 -2
  187. package/dist/index.d.ts.map +1 -1
  188. package/dist/index.js +3 -1
  189. package/dist/index.js.map +1 -1
  190. package/dist/interactive-navigation/index.d.ts +2 -0
  191. package/dist/interactive-navigation/index.d.ts.map +1 -1
  192. package/dist/interactive-navigation/index.js +40 -3
  193. package/dist/interactive-navigation/index.js.map +1 -1
  194. package/dist/interactive-navigation/modal.d.ts +34 -0
  195. package/dist/interactive-navigation/modal.d.ts.map +1 -0
  196. package/dist/interactive-navigation/modal.js +253 -0
  197. package/dist/interactive-navigation/modal.js.map +1 -0
  198. package/dist/liquid-grid.d.ts +1 -2
  199. package/dist/liquid-grid.d.ts.map +1 -1
  200. package/dist/liquid-grid.js +1 -23
  201. package/dist/liquid-grid.js.map +1 -1
  202. package/dist/live-paint.d.ts +11 -0
  203. package/dist/live-paint.d.ts.map +1 -0
  204. package/dist/live-paint.js +66 -0
  205. package/dist/live-paint.js.map +1 -0
  206. package/dist/live-spring-driver.d.ts +12 -1
  207. package/dist/live-spring-driver.d.ts.map +1 -1
  208. package/dist/live-spring-driver.js +54 -1
  209. package/dist/live-spring-driver.js.map +1 -1
  210. package/dist/mixer.d.ts +7 -1
  211. package/dist/mixer.d.ts.map +1 -1
  212. package/dist/mixer.js +69 -24
  213. package/dist/mixer.js.map +1 -1
  214. package/dist/motion-scope.d.ts +2 -1
  215. package/dist/motion-scope.d.ts.map +1 -1
  216. package/dist/motion-scope.js +79 -32
  217. package/dist/motion-scope.js.map +1 -1
  218. package/dist/motion-states.d.ts +2 -7
  219. package/dist/motion-states.d.ts.map +1 -1
  220. package/dist/motion-states.js +79 -107
  221. package/dist/motion-states.js.map +1 -1
  222. package/dist/motion-value.d.ts +15 -1
  223. package/dist/motion-value.d.ts.map +1 -1
  224. package/dist/motion-value.js +237 -35
  225. package/dist/motion-value.js.map +1 -1
  226. package/dist/physics/index.d.ts +48 -0
  227. package/dist/physics/index.d.ts.map +1 -1
  228. package/dist/physics/index.js +94 -1
  229. package/dist/physics/index.js.map +1 -1
  230. package/dist/physics/native.d.ts +7 -1
  231. package/dist/physics/native.d.ts.map +1 -1
  232. package/dist/physics/native.js +16 -0
  233. package/dist/physics/native.js.map +1 -1
  234. package/dist/playback.d.ts +1 -39
  235. package/dist/playback.d.ts.map +1 -1
  236. package/dist/playback.js +1 -57
  237. package/dist/playback.js.map +1 -1
  238. package/dist/presets.d.ts +2 -297
  239. package/dist/presets.d.ts.map +1 -1
  240. package/dist/presets.js +2 -125
  241. package/dist/presets.js.map +1 -1
  242. package/dist/press.d.ts.map +1 -1
  243. package/dist/press.js +11 -2
  244. package/dist/press.js.map +1 -1
  245. package/dist/properties.d.ts +2 -6
  246. package/dist/properties.d.ts.map +1 -1
  247. package/dist/properties.js +3 -33
  248. package/dist/properties.js.map +1 -1
  249. package/dist/reorder/index.d.ts +5 -1
  250. package/dist/reorder/index.d.ts.map +1 -1
  251. package/dist/reorder/index.js +14 -4
  252. package/dist/reorder/index.js.map +1 -1
  253. package/dist/reorder/model.d.ts +1 -5
  254. package/dist/reorder/model.d.ts.map +1 -1
  255. package/dist/reorder/model.js +1 -29
  256. package/dist/reorder/model.js.map +1 -1
  257. package/dist/reorder/realized.d.ts +14 -0
  258. package/dist/reorder/realized.d.ts.map +1 -0
  259. package/dist/reorder/realized.js +263 -0
  260. package/dist/reorder/realized.js.map +1 -0
  261. package/dist/reorder/types.d.ts +2 -0
  262. package/dist/reorder/types.d.ts.map +1 -1
  263. package/dist/roll-diff.d.ts +2 -21
  264. package/dist/roll-diff.d.ts.map +1 -1
  265. package/dist/roll-diff.js +1 -35
  266. package/dist/roll-diff.js.map +1 -1
  267. package/dist/sampling.d.ts +1 -34
  268. package/dist/sampling.d.ts.map +1 -1
  269. package/dist/sampling.js +1 -122
  270. package/dist/sampling.js.map +1 -1
  271. package/dist/scroll-header/geometry.d.ts +1 -17
  272. package/dist/scroll-header/geometry.d.ts.map +1 -1
  273. package/dist/scroll-header/geometry.js +1 -45
  274. package/dist/scroll-header/geometry.js.map +1 -1
  275. package/dist/scroll-header/index.d.ts +24 -1
  276. package/dist/scroll-header/index.d.ts.map +1 -1
  277. package/dist/scroll-header/index.js +287 -33
  278. package/dist/scroll-header/index.js.map +1 -1
  279. package/dist/scroll-header/native.d.ts +11 -3
  280. package/dist/scroll-header/native.d.ts.map +1 -1
  281. package/dist/scroll-header/native.js +19 -4
  282. package/dist/scroll-header/native.js.map +1 -1
  283. package/dist/scroll-header/surface.d.ts +6 -0
  284. package/dist/scroll-header/surface.d.ts.map +1 -0
  285. package/dist/scroll-header/surface.js +12 -0
  286. package/dist/scroll-header/surface.js.map +1 -0
  287. package/dist/seekable-timeline.d.ts +32 -0
  288. package/dist/seekable-timeline.d.ts.map +1 -0
  289. package/dist/seekable-timeline.js +284 -0
  290. package/dist/seekable-timeline.js.map +1 -0
  291. package/dist/sequence.d.ts.map +1 -1
  292. package/dist/sequence.js +8 -349
  293. package/dist/sequence.js.map +1 -1
  294. package/dist/shapes/index.d.ts +1 -1
  295. package/dist/shapes/index.d.ts.map +1 -1
  296. package/dist/shapes/index.js +23 -9
  297. package/dist/shapes/index.js.map +1 -1
  298. package/dist/shapes/path.d.ts +1 -9
  299. package/dist/shapes/path.d.ts.map +1 -1
  300. package/dist/shapes/path.js +1 -105
  301. package/dist/shapes/path.js.map +1 -1
  302. package/dist/shared-navigation/index.d.ts.map +1 -1
  303. package/dist/shared-navigation/index.js +6 -1
  304. package/dist/shared-navigation/index.js.map +1 -1
  305. package/dist/shared-navigation/return-target.d.ts +2 -0
  306. package/dist/shared-navigation/return-target.d.ts.map +1 -1
  307. package/dist/shared-navigation/return-target.js +59 -9
  308. package/dist/shared-navigation/return-target.js.map +1 -1
  309. package/dist/size-layout.d.ts.map +1 -1
  310. package/dist/size-layout.js +20 -6
  311. package/dist/size-layout.js.map +1 -1
  312. package/dist/size.js +10 -2
  313. package/dist/size.js.map +1 -1
  314. package/dist/spring.d.ts +1 -23
  315. package/dist/spring.d.ts.map +1 -1
  316. package/dist/spring.js +1 -64
  317. package/dist/spring.js.map +1 -1
  318. package/dist/svg-path.d.ts +1 -31
  319. package/dist/svg-path.d.ts.map +1 -1
  320. package/dist/svg-path.js +1 -281
  321. package/dist/svg-path.js.map +1 -1
  322. package/dist/track.d.ts +5 -31
  323. package/dist/track.d.ts.map +1 -1
  324. package/dist/track.js +9 -470
  325. package/dist/track.js.map +1 -1
  326. package/dist/transition.d.ts +1 -115
  327. package/dist/transition.d.ts.map +1 -1
  328. package/dist/transition.js +1 -210
  329. package/dist/transition.js.map +1 -1
  330. package/dist/types.d.ts +5 -1
  331. package/dist/types.d.ts.map +1 -1
  332. package/dist/value-track.d.ts +9 -0
  333. package/dist/value-track.d.ts.map +1 -1
  334. package/dist/value-track.js +28 -16
  335. package/dist/value-track.js.map +1 -1
  336. package/dist/web/blur.d.ts +27 -0
  337. package/dist/web/blur.d.ts.map +1 -0
  338. package/dist/web/blur.js +152 -0
  339. package/dist/web/blur.js.map +1 -0
  340. package/dist/web/bottom-sheet.d.ts +40 -0
  341. package/dist/web/bottom-sheet.d.ts.map +1 -0
  342. package/dist/web/bottom-sheet.js +308 -0
  343. package/dist/web/bottom-sheet.js.map +1 -0
  344. package/dist/web/compose.d.ts +28 -0
  345. package/dist/web/compose.d.ts.map +1 -0
  346. package/dist/web/compose.js +156 -0
  347. package/dist/web/compose.js.map +1 -0
  348. package/dist/web/curve.d.ts +10 -0
  349. package/dist/web/curve.d.ts.map +1 -0
  350. package/dist/web/curve.js +46 -0
  351. package/dist/web/curve.js.map +1 -0
  352. package/dist/web/decay.d.ts +14 -0
  353. package/dist/web/decay.d.ts.map +1 -0
  354. package/dist/web/decay.js +62 -0
  355. package/dist/web/decay.js.map +1 -0
  356. package/dist/web/diagnostics.d.ts +59 -0
  357. package/dist/web/diagnostics.d.ts.map +1 -0
  358. package/dist/web/diagnostics.js +72 -0
  359. package/dist/web/diagnostics.js.map +1 -0
  360. package/dist/web/drag.d.ts +135 -0
  361. package/dist/web/drag.d.ts.map +1 -0
  362. package/dist/web/drag.js +466 -0
  363. package/dist/web/drag.js.map +1 -0
  364. package/dist/web/effect.d.ts +70 -0
  365. package/dist/web/effect.d.ts.map +1 -0
  366. package/dist/web/effect.js +290 -0
  367. package/dist/web/effect.js.map +1 -0
  368. package/dist/web/geometry.d.ts +6 -0
  369. package/dist/web/geometry.d.ts.map +1 -0
  370. package/dist/web/geometry.js +36 -0
  371. package/dist/web/geometry.js.map +1 -0
  372. package/dist/web/gesture-scroll.d.ts +20 -0
  373. package/dist/web/gesture-scroll.d.ts.map +1 -0
  374. package/dist/web/gesture-scroll.js +99 -0
  375. package/dist/web/gesture-scroll.js.map +1 -0
  376. package/dist/web/gestures.d.ts +63 -0
  377. package/dist/web/gestures.d.ts.map +1 -0
  378. package/dist/web/gestures.js +542 -0
  379. package/dist/web/gestures.js.map +1 -0
  380. package/dist/web/glass.d.ts +20 -0
  381. package/dist/web/glass.d.ts.map +1 -0
  382. package/dist/web/glass.js +117 -0
  383. package/dist/web/glass.js.map +1 -0
  384. package/dist/web/gradient.d.ts +43 -0
  385. package/dist/web/gradient.d.ts.map +1 -0
  386. package/dist/web/gradient.js +366 -0
  387. package/dist/web/gradient.js.map +1 -0
  388. package/dist/web/haptics.d.ts +17 -0
  389. package/dist/web/haptics.d.ts.map +1 -0
  390. package/dist/web/haptics.js +87 -0
  391. package/dist/web/haptics.js.map +1 -0
  392. package/dist/web/image-effect.d.ts +29 -0
  393. package/dist/web/image-effect.d.ts.map +1 -0
  394. package/dist/web/image-effect.js +371 -0
  395. package/dist/web/image-effect.js.map +1 -0
  396. package/dist/web/image-surface.d.ts +38 -0
  397. package/dist/web/image-surface.d.ts.map +1 -0
  398. package/dist/web/image-surface.js +182 -0
  399. package/dist/web/image-surface.js.map +1 -0
  400. package/dist/web/index.d.ts +3 -0
  401. package/dist/web/index.d.ts.map +1 -0
  402. package/dist/web/index.js +3 -0
  403. package/dist/web/index.js.map +1 -0
  404. package/dist/web/interaction.d.ts +38 -0
  405. package/dist/web/interaction.d.ts.map +1 -0
  406. package/dist/web/interaction.js +85 -0
  407. package/dist/web/interaction.js.map +1 -0
  408. package/dist/web/interactive-modal.d.ts +21 -0
  409. package/dist/web/interactive-modal.d.ts.map +1 -0
  410. package/dist/web/interactive-modal.js +223 -0
  411. package/dist/web/interactive-modal.js.map +1 -0
  412. package/dist/web/interactive-navigation.d.ts +28 -0
  413. package/dist/web/interactive-navigation.d.ts.map +1 -0
  414. package/dist/web/interactive-navigation.js +227 -0
  415. package/dist/web/interactive-navigation.js.map +1 -0
  416. package/dist/web/items.d.ts +28 -0
  417. package/dist/web/items.d.ts.map +1 -0
  418. package/dist/web/items.js +110 -0
  419. package/dist/web/items.js.map +1 -0
  420. package/dist/web/keyboard.d.ts +35 -0
  421. package/dist/web/keyboard.d.ts.map +1 -0
  422. package/dist/web/keyboard.js +235 -0
  423. package/dist/web/keyboard.js.map +1 -0
  424. package/dist/web/layout.d.ts +171 -0
  425. package/dist/web/layout.d.ts.map +1 -0
  426. package/dist/web/layout.js +157 -0
  427. package/dist/web/layout.js.map +1 -0
  428. package/dist/web/liquid.d.ts +24 -0
  429. package/dist/web/liquid.d.ts.map +1 -0
  430. package/dist/web/liquid.js +65 -0
  431. package/dist/web/liquid.js.map +1 -0
  432. package/dist/web/loading.d.ts +21 -0
  433. package/dist/web/loading.d.ts.map +1 -0
  434. package/dist/web/loading.js +153 -0
  435. package/dist/web/loading.js.map +1 -0
  436. package/dist/web/motion-states.d.ts +43 -0
  437. package/dist/web/motion-states.d.ts.map +1 -0
  438. package/dist/web/motion-states.js +243 -0
  439. package/dist/web/motion-states.js.map +1 -0
  440. package/dist/web/navigation-entry.d.ts +31 -0
  441. package/dist/web/navigation-entry.d.ts.map +1 -0
  442. package/dist/web/navigation-entry.js +269 -0
  443. package/dist/web/navigation-entry.js.map +1 -0
  444. package/dist/web/particles.d.ts +44 -0
  445. package/dist/web/particles.d.ts.map +1 -0
  446. package/dist/web/particles.js +234 -0
  447. package/dist/web/particles.js.map +1 -0
  448. package/dist/web/physics.d.ts +93 -0
  449. package/dist/web/physics.d.ts.map +1 -0
  450. package/dist/web/physics.js +588 -0
  451. package/dist/web/physics.js.map +1 -0
  452. package/dist/web/plan.d.ts +13 -0
  453. package/dist/web/plan.d.ts.map +1 -0
  454. package/dist/web/plan.js +164 -0
  455. package/dist/web/plan.js.map +1 -0
  456. package/dist/web/platform-host.d.ts +5 -0
  457. package/dist/web/platform-host.d.ts.map +1 -0
  458. package/dist/web/platform-host.js +2 -0
  459. package/dist/web/platform-host.js.map +1 -0
  460. package/dist/web/pointer.d.ts +43 -0
  461. package/dist/web/pointer.d.ts.map +1 -0
  462. package/dist/web/pointer.js +295 -0
  463. package/dist/web/pointer.js.map +1 -0
  464. package/dist/web/press.d.ts +26 -0
  465. package/dist/web/press.d.ts.map +1 -0
  466. package/dist/web/press.js +170 -0
  467. package/dist/web/press.js.map +1 -0
  468. package/dist/web/progress.d.ts +17 -0
  469. package/dist/web/progress.d.ts.map +1 -0
  470. package/dist/web/progress.js +69 -0
  471. package/dist/web/progress.js.map +1 -0
  472. package/dist/web/properties.d.ts +25 -0
  473. package/dist/web/properties.d.ts.map +1 -0
  474. package/dist/web/properties.js +62 -0
  475. package/dist/web/properties.js.map +1 -0
  476. package/dist/web/public.d.ts +163 -0
  477. package/dist/web/public.d.ts.map +1 -0
  478. package/dist/web/public.js +71 -0
  479. package/dist/web/public.js.map +1 -0
  480. package/dist/web/reorder.d.ts +38 -0
  481. package/dist/web/reorder.d.ts.map +1 -0
  482. package/dist/web/reorder.js +560 -0
  483. package/dist/web/reorder.js.map +1 -0
  484. package/dist/web/return-target.d.ts +21 -0
  485. package/dist/web/return-target.d.ts.map +1 -0
  486. package/dist/web/return-target.js +75 -0
  487. package/dist/web/return-target.js.map +1 -0
  488. package/dist/web/reveal.d.ts +17 -0
  489. package/dist/web/reveal.d.ts.map +1 -0
  490. package/dist/web/reveal.js +134 -0
  491. package/dist/web/reveal.js.map +1 -0
  492. package/dist/web/runtime.d.ts +359 -0
  493. package/dist/web/runtime.d.ts.map +1 -0
  494. package/dist/web/runtime.js +2768 -0
  495. package/dist/web/runtime.js.map +1 -0
  496. package/dist/web/scene.d.ts +28 -0
  497. package/dist/web/scene.d.ts.map +1 -0
  498. package/dist/web/scene.js +41 -0
  499. package/dist/web/scene.js.map +1 -0
  500. package/dist/web/scheduler.d.ts +34 -0
  501. package/dist/web/scheduler.d.ts.map +1 -0
  502. package/dist/web/scheduler.js +105 -0
  503. package/dist/web/scheduler.js.map +1 -0
  504. package/dist/web/scope.d.ts +31 -0
  505. package/dist/web/scope.d.ts.map +1 -0
  506. package/dist/web/scope.js +306 -0
  507. package/dist/web/scope.js.map +1 -0
  508. package/dist/web/scroll-header.d.ts +53 -0
  509. package/dist/web/scroll-header.d.ts.map +1 -0
  510. package/dist/web/scroll-header.js +395 -0
  511. package/dist/web/scroll-header.js.map +1 -0
  512. package/dist/web/scroll.d.ts +80 -0
  513. package/dist/web/scroll.d.ts.map +1 -0
  514. package/dist/web/scroll.js +247 -0
  515. package/dist/web/scroll.js.map +1 -0
  516. package/dist/web/sensors.d.ts +61 -0
  517. package/dist/web/sensors.d.ts.map +1 -0
  518. package/dist/web/sensors.js +364 -0
  519. package/dist/web/sensors.js.map +1 -0
  520. package/dist/web/sequence.d.ts +26 -0
  521. package/dist/web/sequence.d.ts.map +1 -0
  522. package/dist/web/sequence.js +28 -0
  523. package/dist/web/sequence.js.map +1 -0
  524. package/dist/web/shape.d.ts +35 -0
  525. package/dist/web/shape.d.ts.map +1 -0
  526. package/dist/web/shape.js +195 -0
  527. package/dist/web/shape.js.map +1 -0
  528. package/dist/web/shared-layout.d.ts +46 -0
  529. package/dist/web/shared-layout.d.ts.map +1 -0
  530. package/dist/web/shared-layout.js +454 -0
  531. package/dist/web/shared-layout.js.map +1 -0
  532. package/dist/web/shared-navigation.d.ts +32 -0
  533. package/dist/web/shared-navigation.d.ts.map +1 -0
  534. package/dist/web/shared-navigation.js +183 -0
  535. package/dist/web/shared-navigation.js.map +1 -0
  536. package/dist/web/size.d.ts +59 -0
  537. package/dist/web/size.d.ts.map +1 -0
  538. package/dist/web/size.js +312 -0
  539. package/dist/web/size.js.map +1 -0
  540. package/dist/web/spring-value.d.ts +53 -0
  541. package/dist/web/spring-value.d.ts.map +1 -0
  542. package/dist/web/spring-value.js +193 -0
  543. package/dist/web/spring-value.js.map +1 -0
  544. package/dist/web/stroke.d.ts +118 -0
  545. package/dist/web/stroke.d.ts.map +1 -0
  546. package/dist/web/stroke.js +470 -0
  547. package/dist/web/stroke.js.map +1 -0
  548. package/dist/web/style.d.ts +12 -0
  549. package/dist/web/style.d.ts.map +1 -0
  550. package/dist/web/style.js +131 -0
  551. package/dist/web/style.js.map +1 -0
  552. package/dist/web/surface-effect.d.ts +30 -0
  553. package/dist/web/surface-effect.d.ts.map +1 -0
  554. package/dist/web/surface-effect.js +134 -0
  555. package/dist/web/surface-effect.js.map +1 -0
  556. package/dist/web/symbol-effect.d.ts +15 -0
  557. package/dist/web/symbol-effect.d.ts.map +1 -0
  558. package/dist/web/symbol-effect.js +186 -0
  559. package/dist/web/symbol-effect.js.map +1 -0
  560. package/dist/web/text-effect.d.ts +20 -0
  561. package/dist/web/text-effect.d.ts.map +1 -0
  562. package/dist/web/text-effect.js +347 -0
  563. package/dist/web/text-effect.js.map +1 -0
  564. package/dist/web/timers.d.ts +14 -0
  565. package/dist/web/timers.d.ts.map +1 -0
  566. package/dist/web/timers.js +57 -0
  567. package/dist/web/timers.js.map +1 -0
  568. package/dist/web/types.d.ts +39 -0
  569. package/dist/web/types.d.ts.map +1 -0
  570. package/dist/web/types.js +6 -0
  571. package/dist/web/types.js.map +1 -0
  572. package/dist/web/value-playback.d.ts +44 -0
  573. package/dist/web/value-playback.d.ts.map +1 -0
  574. package/dist/web/value-playback.js +75 -0
  575. package/dist/web/value-playback.js.map +1 -0
  576. package/dist/web/value.d.ts +118 -0
  577. package/dist/web/value.d.ts.map +1 -0
  578. package/dist/web/value.js +318 -0
  579. package/dist/web/value.js.map +1 -0
  580. package/dist/web/viewport.d.ts +36 -0
  581. package/dist/web/viewport.d.ts.map +1 -0
  582. package/dist/web/viewport.js +297 -0
  583. package/dist/web/viewport.js.map +1 -0
  584. package/dist/web/vue/attachment.d.ts +7 -0
  585. package/dist/web/vue/attachment.d.ts.map +1 -0
  586. package/dist/web/vue/attachment.js +50 -0
  587. package/dist/web/vue/attachment.js.map +1 -0
  588. package/dist/web/vue/index.d.ts +35 -0
  589. package/dist/web/vue/index.d.ts.map +1 -0
  590. package/dist/web/vue/index.js +346 -0
  591. package/dist/web/vue/index.js.map +1 -0
  592. package/dist/web/vue/viewport-directive.d.ts +12 -0
  593. package/dist/web/vue/viewport-directive.d.ts.map +1 -0
  594. package/dist/web/vue/viewport-directive.js +85 -0
  595. package/dist/web/vue/viewport-directive.js.map +1 -0
  596. package/dist/web/zoomable.d.ts +41 -0
  597. package/dist/web/zoomable.d.ts.map +1 -0
  598. package/dist/web/zoomable.js +401 -0
  599. package/dist/web/zoomable.js.map +1 -0
  600. package/package.json +76 -7
  601. package/platforms/android/java/org/rafaelaugusto/jolt/BlurEffect.java +14 -2
  602. package/platforms/android/java/org/rafaelaugusto/jolt/CircleMath.java +55 -16
  603. package/platforms/android/java/org/rafaelaugusto/jolt/CircleWorld.java +54 -11
  604. package/platforms/android/java/org/rafaelaugusto/jolt/ColorMath.java +44 -0
  605. package/platforms/android/java/org/rafaelaugusto/jolt/DecorationTarget.java +7 -6
  606. package/platforms/android/java/org/rafaelaugusto/jolt/GradientLayer.java +30 -8
  607. package/platforms/android/java/org/rafaelaugusto/jolt/KeyframeFactory.java +26 -0
  608. package/platforms/android/java/org/rafaelaugusto/jolt/LiveSpring.java +66 -12
  609. package/platforms/android/java/org/rafaelaugusto/jolt/RealizedReorder.java +161 -0
  610. package/platforms/android/java/org/rafaelaugusto/jolt/ScrollHeader.java +215 -18
  611. package/platforms/android/java/org/rafaelaugusto/jolt/ScrollHeaderSurface.java +39 -0
  612. package/platforms/android/java/org/rafaelaugusto/jolt/ScrollInput.java +107 -0
  613. package/platforms/android/java/org/rafaelaugusto/jolt/ShapeLayer.java +17 -7
  614. package/platforms/android/proguard-rules.pro +1 -0
  615. package/platforms/ios/src/JoltCircleMath.h +62 -15
  616. package/platforms/ios/src/JoltCircleWorld.h +2 -0
  617. package/platforms/ios/src/JoltCircleWorld.m +56 -16
  618. package/platforms/ios/src/JoltColorMath.h +40 -0
  619. package/platforms/ios/src/JoltInteractiveModal.h +16 -0
  620. package/platforms/ios/src/JoltInteractiveModal.m +178 -0
  621. package/platforms/ios/src/JoltLivePaint.h +12 -0
  622. package/platforms/ios/src/JoltLivePaint.m +131 -0
  623. package/platforms/ios/src/JoltLiveSpring.h +1 -0
  624. package/platforms/ios/src/JoltLiveSpring.m +211 -69
  625. package/platforms/ios/src/JoltRealizedReorder.h +13 -0
  626. package/platforms/ios/src/JoltRealizedReorder.m +148 -0
  627. package/platforms/ios/src/JoltScrollHeader.h +3 -1
  628. package/platforms/ios/src/JoltScrollHeader.m +172 -21
  629. package/platforms/ios/src/module.modulemap +3 -0
  630. package/src/android-plugin.d.ts +56 -1
  631. package/src/animate.ts +23 -5
  632. package/src/bottom-sheet/geometry.ts +2 -84
  633. package/src/bottom-sheet/index.ts +94 -20
  634. package/src/bottom-sheet/native.ts +6 -0
  635. package/src/color.ts +2 -56
  636. package/src/core/arrival.ts +30 -0
  637. package/src/core/circle-math.ts +418 -0
  638. package/src/core/color.ts +55 -0
  639. package/src/core/decay.ts +54 -0
  640. package/src/core/decoration.ts +32 -0
  641. package/src/core/drag-physics.ts +110 -0
  642. package/src/core/driver.ts +53 -0
  643. package/src/core/easing.ts +120 -0
  644. package/src/core/gesture-math.ts +53 -0
  645. package/src/core/gradient.ts +32 -0
  646. package/src/core/gravity.ts +107 -0
  647. package/src/core/haptic.ts +34 -0
  648. package/src/core/index.ts +24 -0
  649. package/src/core/liquid-grid.ts +28 -0
  650. package/src/core/numeric-map.ts +58 -0
  651. package/src/core/ownership.ts +21 -0
  652. package/src/core/playback.ts +112 -0
  653. package/src/core/presets.ts +139 -0
  654. package/src/core/properties.ts +40 -0
  655. package/src/core/reorder.ts +53 -0
  656. package/src/core/roll-diff.ts +57 -0
  657. package/src/core/sampling.ts +173 -0
  658. package/src/core/scroll-header.ts +100 -0
  659. package/src/core/sequence.ts +380 -0
  660. package/src/core/shape-path.ts +127 -0
  661. package/src/core/sheet-geometry.ts +91 -0
  662. package/src/core/spring.ts +135 -0
  663. package/src/core/state-transition.ts +97 -0
  664. package/src/core/svg-path.ts +360 -0
  665. package/src/core/track.ts +664 -0
  666. package/src/core/transition.ts +367 -0
  667. package/src/decay.ts +1 -54
  668. package/src/decoration.ts +7 -33
  669. package/src/drag-physics.ts +1 -110
  670. package/src/driver/android.ts +41 -14
  671. package/src/driver/index.ts +3 -50
  672. package/src/easing.ts +1 -120
  673. package/src/engine.ts +31 -55
  674. package/src/gradient-binding.ts +5 -23
  675. package/src/gradient.ts +2 -9
  676. package/src/gravity.ts +1 -107
  677. package/src/haptics.ts +3 -34
  678. package/src/index.ts +7 -1
  679. package/src/interactive-navigation/index.ts +39 -3
  680. package/src/interactive-navigation/modal.ts +306 -0
  681. package/src/ios-plugin.d.ts +49 -2
  682. package/src/liquid-grid.ts +1 -28
  683. package/src/live-paint.ts +78 -0
  684. package/src/live-spring-driver.ts +81 -2
  685. package/src/mixer.ts +72 -24
  686. package/src/motion-scope.ts +70 -29
  687. package/src/motion-states.ts +86 -132
  688. package/src/motion-value.ts +252 -50
  689. package/src/physics/index.ts +141 -2
  690. package/src/physics/native.ts +27 -1
  691. package/src/playback.ts +1 -103
  692. package/src/presets.ts +2 -128
  693. package/src/press.ts +10 -2
  694. package/src/properties.ts +4 -45
  695. package/src/reorder/index.ts +31 -2
  696. package/src/reorder/model.ts +1 -47
  697. package/src/reorder/realized.ts +305 -0
  698. package/src/reorder/types.ts +2 -0
  699. package/src/roll-diff.ts +2 -57
  700. package/src/sampling.ts +1 -173
  701. package/src/scroll-header/geometry.ts +1 -88
  702. package/src/scroll-header/index.ts +371 -42
  703. package/src/scroll-header/native.ts +37 -5
  704. package/src/scroll-header/surface.ts +11 -0
  705. package/src/seekable-timeline.ts +330 -0
  706. package/src/sequence.ts +10 -332
  707. package/src/shapes/index.ts +20 -9
  708. package/src/shapes/path.ts +1 -127
  709. package/src/shared-navigation/index.ts +6 -0
  710. package/src/shared-navigation/return-target.ts +66 -12
  711. package/src/size-layout.ts +36 -8
  712. package/src/size.ts +14 -3
  713. package/src/spring.ts +1 -113
  714. package/src/svg-path.ts +1 -360
  715. package/src/track.ts +12 -642
  716. package/src/transition.ts +1 -367
  717. package/src/types.ts +5 -2
  718. package/src/value-track.ts +25 -14
  719. package/src/web/blur.ts +206 -0
  720. package/src/web/bottom-sheet.ts +358 -0
  721. package/src/web/compose.ts +211 -0
  722. package/src/web/curve.ts +55 -0
  723. package/src/web/decay.ts +76 -0
  724. package/src/web/diagnostics.ts +121 -0
  725. package/src/web/drag.ts +583 -0
  726. package/src/web/effect.ts +324 -0
  727. package/src/web/geometry.ts +40 -0
  728. package/src/web/gesture-scroll.ts +129 -0
  729. package/src/web/gestures.ts +667 -0
  730. package/src/web/glass.ts +152 -0
  731. package/src/web/gradient.ts +432 -0
  732. package/src/web/haptics.ts +98 -0
  733. package/src/web/image-effect.ts +442 -0
  734. package/src/web/image-surface.ts +196 -0
  735. package/src/web/index.ts +17 -0
  736. package/src/web/interaction.ts +136 -0
  737. package/src/web/interactive-modal.ts +247 -0
  738. package/src/web/interactive-navigation.ts +279 -0
  739. package/src/web/items.ts +173 -0
  740. package/src/web/keyboard.ts +282 -0
  741. package/src/web/layout.ts +207 -0
  742. package/src/web/liquid.ts +112 -0
  743. package/src/web/loading.ts +201 -0
  744. package/src/web/motion-states.ts +304 -0
  745. package/src/web/navigation-entry.ts +325 -0
  746. package/src/web/particles.ts +328 -0
  747. package/src/web/physics.ts +765 -0
  748. package/src/web/plan.ts +226 -0
  749. package/src/web/platform-host.ts +5 -0
  750. package/src/web/pointer.ts +336 -0
  751. package/src/web/press.ts +217 -0
  752. package/src/web/progress.ts +71 -0
  753. package/src/web/properties.ts +76 -0
  754. package/src/web/public.ts +503 -0
  755. package/src/web/reorder.ts +718 -0
  756. package/src/web/return-target.ts +103 -0
  757. package/src/web/reveal.ts +178 -0
  758. package/src/web/runtime.ts +3477 -0
  759. package/src/web/scene.ts +76 -0
  760. package/src/web/scheduler.ts +106 -0
  761. package/src/web/scope.ts +403 -0
  762. package/src/web/scroll-header.ts +492 -0
  763. package/src/web/scroll.ts +295 -0
  764. package/src/web/sensors.ts +468 -0
  765. package/src/web/sequence.ts +60 -0
  766. package/src/web/shape.ts +260 -0
  767. package/src/web/shared-layout.ts +572 -0
  768. package/src/web/shared-navigation.ts +238 -0
  769. package/src/web/size.ts +368 -0
  770. package/src/web/spring-value.ts +218 -0
  771. package/src/web/stroke.ts +547 -0
  772. package/src/web/style.ts +170 -0
  773. package/src/web/surface-effect.ts +133 -0
  774. package/src/web/symbol-effect.ts +224 -0
  775. package/src/web/text-effect.ts +464 -0
  776. package/src/web/timers.ts +51 -0
  777. package/src/web/types.ts +48 -0
  778. package/src/web/value-playback.ts +104 -0
  779. package/src/web/value.ts +371 -0
  780. package/src/web/viewport.ts +341 -0
  781. package/src/web/vue/attachment.ts +47 -0
  782. package/src/web/vue/index.ts +364 -0
  783. package/src/web/vue/viewport-directive.ts +99 -0
  784. package/src/web/zoomable.ts +521 -0
package/README.md CHANGED
@@ -16,7 +16,7 @@
16
16
  </p>
17
17
 
18
18
  <p align="center">
19
- <a href="https://jolt.rafaelaugusto.dev">Documentation</a> · <a href="https://jolt.rafaelaugusto.dev/pt-BR/">Documentação em português</a>
19
+ <a href="https://jolt.rafaelaugusto.dev">English</a> · <a href="https://jolt.rafaelaugusto.dev/pt-BR/">Português</a> · <a href="https://jolt.rafaelaugusto.dev/es/">Español</a> · <a href="https://jolt.rafaelaugusto.dev/zh-Hans/">简体中文</a>
20
20
  </p>
21
21
 
22
22
  ```ts
@@ -31,7 +31,9 @@ NativeScript's `view.animate()` covers the basics and stops there: one curve for
31
31
 
32
32
  Jolt computes the motion once, in JavaScript, when the animation starts, and hands it to the platform as keyframes: Core Animation on iOS, `ObjectAnimator` on Android. Those default view tracks play without per-frame JavaScript. Real-size layout, opt-in subscribers, gesture input and timeline step activation retain their documented [execution limits](https://jolt.rafaelaugusto.dev/guide/how-it-works). Springs follow real physics, and an animation that interrupts another one starts from where the view is, at the speed it was going.
33
33
 
34
- The [0.1.0-rc.1 release candidate](https://github.com/rafaelaugustos/jolt/releases/tag/v0.1.0-rc.1) adds shared navigation and a connected photo gallery, native back gestures, scroll composition, device sensors, circle physics, vector drawing/morphing, animated blur and iOS 26 Liquid Glass. The preview has **73 examples in English, Portuguese, Spanish and Simplified Chinese**, with light/dark themes. The 0.1.0 feature scope is frozen; the RC phase focuses on fixes, compatibility and [physical-device acceptance](https://jolt.rafaelaugusto.dev/guide/not-there-yet). Install `@rafaelaugusto/jolt@0.1.0-rc.1` and rebuild the native app. For external native properties, also install matching `@rafaelaugusto/jolt-native@0.1.0-rc.1`.
34
+ The [0.1.0-rc.10 release candidate](https://github.com/rafaelaugustos/jolt/releases/tag/v0.1.0-rc.10) adds Web visual effects, keyboard/sheet/modal controllers, shared navigation, circle physics, icon effects, gravity, haptics, sensors, glass and complete keyed gallery returns. Native apps gain header/refresh and reorder adapters for existing Core ScrollView compositions. The preview has **74 examples in English, Portuguese, Spanish and Simplified Chinese**. Install `@rafaelaugusto/jolt@0.1.0-rc.10` and rebuild native apps; external native properties also need matching `@rafaelaugusto/jolt-native@0.1.0-rc.10`. [Stable-release acceptance](https://jolt.rafaelaugusto.dev/guide/not-there-yet) remains in progress.
35
+
36
+ For the browser, import **`@rafaelaugusto/jolt/web`**. It installs without NativeScript, Vue or React; **`@rafaelaugusto/jolt/web/vue`** optionally integrates Vue 3.5 DOM refs and enter/leave. Both entries are experimental and use the same motion compiler as native playback. See [installation](https://jolt.rafaelaugusto.dev/guide/install#experimental-web-candidate), [finite Web playback](https://jolt.rafaelaugusto.dev/guide/web-runtime) and [Vue Web motion](https://jolt.rafaelaugusto.dev/guide/web-vue). Mavis integration and its shared application proof continue separately.
35
37
 
36
38
  ## Features
37
39
 
@@ -46,6 +48,14 @@ The [0.1.0-rc.1 release candidate](https://github.com/rafaelaugustos/jolt/releas
46
48
  - [Bottom sheet](https://jolt.rafaelaugusto.dev/guide/bottom-sheet): native drag/scroll handoff, content and percentage stops, keyboard following and dismissal.
47
49
  - [List reordering](https://jolt.rafaelaugusto.dev/guide/reorder): stable keys, native drag snapshots, neighbour springs and edge scrolling through recycled cells.
48
50
  - [Shared layouts](https://jolt.rafaelaugusto.dev/guide/shared-layout): stable identities, native snapshots and interruptible transitions within one page.
51
+ - [Shared navigation](https://jolt.rafaelaugusto.dev/guide/shared-navigation) and a [connected gallery](https://jolt.rafaelaugusto.dev/guide/gallery): photo/card transitions, interactive return and current-cell resolution within the documented Frame/ListView combinations.
52
+ - [Interactive iOS navigation](https://jolt.rafaelaugusto.dev/guide/interactive-navigation) and [Android predictive back](https://jolt.rafaelaugusto.dev/guide/predictive-back), with cancellation and guarded route commits.
53
+ - [Native scroll composition](https://jolt.rafaelaugusto.dev/guide/scroll-header): measured collapsing headers, parallax and pinning with a Core ListView adapter.
54
+ - [Device sensors](https://jolt.rafaelaugusto.dev/guide/device-sensors): rotation and gravity sources feeding native motion values and live springs.
55
+ - [Gravity and bounce](https://jolt.rafaelaugusto.dev/guide/gravity) plus [circle physics](https://jolt.rafaelaugusto.dev/guide/circle-physics) with [attachments and snap points](https://jolt.rafaelaugusto.dev/guide/physics-attachments).
56
+ - [Vector drawing and morphing](https://jolt.rafaelaugusto.dev/guide/shapes): animated strokes and compatible path interpolation on iOS and Android.
57
+ - [Animated blur](https://jolt.rafaelaugusto.dev/guide/blur): iOS backdrop materials and Android content blur, with explicit platform limits.
58
+ - [Liquid Glass](https://jolt.rafaelaugusto.dev/guide/glass): native glass containers and surfaces on iOS 26+, ordinary blur on older iOS, and classic layouts on Android.
49
59
  - [Interaction replay](https://jolt.rafaelaugusto.dev/guide/interaction-replay): optional development traces and controlled-clock regression checks, including scroll-to-sheet handoff.
50
60
  - [Motion inspector](https://jolt.rafaelaugusto.dev/guide/motion-inspector): development-only ownership/timing diagnostics, native observation batches and reproducible spring tuning.
51
61
  - [Adaptive curve sampling](https://jolt.rafaelaugusto.dev/guide/transitions): spend native keyframes where they improve precision, within bounded setup budgets.
@@ -83,7 +93,7 @@ The [0.1.0-rc.1 release candidate](https://github.com/rafaelaugustos/jolt/releas
83
93
  - [Playback controls](#pause-play-and-scrub) to pause, continue and scrub a finite timeline.
84
94
  - [Time scale and reduced motion](#time-scale-and-reduced-motion): slow everything down while tuning, and follow the platform's reduced-motion setting by default.
85
95
  - [Interruptions](#interrupting-and-stopping) that pick up the value and velocity on screen, with no jump.
86
- - [Native playback](#how-it-works): Core Animation on iOS, `ObjectAnimator` on Android, nothing in JavaScript while it plays.
96
+ - [Native playback](#how-it-works): default view tracks run through Core Animation on iOS and `ObjectAnimator` on Android without per-frame JavaScript; layout, input and subscriptions have their own execution costs.
87
97
 
88
98
  ## Install
89
99
 
@@ -91,7 +101,7 @@ The [0.1.0-rc.1 release candidate](https://github.com/rafaelaugustos/jolt/releas
91
101
  npm install @rafaelaugusto/jolt@next
92
102
  ```
93
103
 
94
- It's in beta for now, published under the `next` tag. Requires `@nativescript/core` 8.9 or later. It doesn't depend on a framework: it takes a view, or an element that holds one.
104
+ The current release candidate is **0.1.0-rc.10**, published under the `next` tag. Requires `@nativescript/core` 8.9 or later. It doesn't depend on a framework: it takes a view, or an element that holds one. Rebuild the native app after installing or upgrading Jolt. See [release status and limits](https://jolt.rafaelaugusto.dev/guide/not-there-yet) for the remaining stable-release acceptance work.
95
105
 
96
106
  On iOS 15+, Jolt requests up to 120 Hz on ProMotion displays. Set `CADisableMinimumFrameDurationOnPhone` to `true` in the app's `App_Resources/iOS/Info.plist` and rebuild to enable higher rates on iPhone. See the [iOS setup](https://jolt.rafaelaugusto.dev/guide/install#promotion-on-ios); the system still chooses the actual refresh rate.
97
107
 
@@ -131,7 +141,7 @@ animate(card, { scale: [1, 1.06, 1] }, { relative: true }) // grow by 6% and ret
131
141
 
132
142
  The base is captured once when the view is ready and its tracks are created, before any delay or stagger. Repeats reuse that base. A relative step in a sequence resolves when the step starts; an unloaded view waits until it loads.
133
143
 
134
- The target can be a view, or anything that holds one: a NativeScript-Vue template ref, an Angular `ElementRef`.
144
+ The target can be a view, or anything that holds one: a NativeScript-Vue template ref on an element or a component, an Angular `ElementRef`.
135
145
 
136
146
  ```vue
137
147
  <script setup lang="ts">
@@ -640,7 +650,7 @@ It takes one value per property, the same properties as `animate()`. The next an
640
650
 
641
651
  ## How it works
642
652
 
643
- When an animation starts, Jolt resolves where each property starts from (the value on screen, or the keyframes you gave), and computes the whole curve: easing, keyframes, spring physics and exponential decay. It samples the curve 60 times per second of motion, and keeps keyframe times exact. Linear numeric segments use only their endpoints. Long tween segments and free decays cap sampling at 6,001 keyframes. Color tracks add intermediate OKLab samples even with linear timing.
653
+ When a sampled animation starts, Jolt resolves its starting values and computes the source curve. Numeric springs, decays and tweens use [adaptive keyframes](https://jolt.rafaelaugusto.dev/guide/transitions#adaptive-keyframes), concentrating detail where linear interpolation needs it. Authored keyframe times stay exact and straight numeric segments keep only their endpoints. Sampling has bounded refinement budgets and a capped uniform fallback. Color mixing, composed motion-value mappings and retained live springs use their own sampling or execution paths.
644
654
 
645
655
  The samples go to the platform in one go:
646
656
 
@@ -651,17 +661,21 @@ Solid [colors](#colors) use CGColor keyframes on iOS and int keyframes through a
651
661
 
652
662
  Before playing, the final values are set on the NativeScript view, like `view.animate()` does, so `view.translateX` already holds the target while the animation runs. Stopping writes back the values on screen.
653
663
 
664
+ `animateSize()` performs NativeScript measurement/layout in JavaScript each frame so content can reflow. Opt-in subscribers, gesture input and timeline step activation retain their documented JS costs. `springValue()` uses retained native spring state and shared display callbacks, rather than rebuilding sampled tracks on each target change. See the [execution paths](https://jolt.rafaelaugusto.dev/guide/how-it-works).
665
+
654
666
  Native playback does not isolate Android View animations from a blocked UI thread. Main-runtime JavaScript shares that thread, and `withLayer()` only caches drawing. Move suitable CPU work to a Worker and keep view updates small. See the [busy JavaScript guide](https://jolt.rafaelaugusto.dev/guide/android-performance) and [Android diagnostic](./benchmarks/android-busy.md).
655
667
 
656
668
  On Android, opacity animations temporarily cache hardware-accelerated containers with children in a hardware layer. Jolt waits for the fade to start and restores the layer on completion, stop, replacement or unload. Existing app-configured layers are preserved; empty, unmeasured and larger-than-screen containers are skipped. See the [fade-layer benchmark](./benchmarks/android-fade.md) for measurement and memory tradeoffs.
657
669
 
658
670
  Each running property remembers its curve and start time. On Android, interruptions read the displayed value and the animator's current play time, so inherited velocity follows the system's animator duration scale. Early spring arrivals use a native timing marker with completion callbacks only; other sequences advance on native completion. Delays, repeats and disabled animations follow the same platform clock, without JavaScript running per frame.
659
671
 
660
- ## Not there yet
672
+ ## Release status and limits
673
+
674
+ <a id="not-there-yet"></a>
675
+
676
+ RC.1 already includes [gesture composition and vertical Core ScrollView handoff](https://jolt.rafaelaugusto.dev/guide/gestures), [shared navigation](https://jolt.rafaelaugusto.dev/guide/shared-navigation), the [connected gallery](https://jolt.rafaelaugusto.dev/guide/gallery), [scroll composition](https://jolt.rafaelaugusto.dev/guide/scroll-header) and [rotation/gravity sensors](https://jolt.rafaelaugusto.dev/guide/device-sensors), within their documented platform/container combinations.
661
677
 
662
- - `animate()` supports transforms, opacity, colors, uniform corners and borders, and platform shadows. [`animateSize()`](https://jolt.rafaelaugusto.dev/guide/size) adds real width/height/auto transitions with per-frame JS layout; [`animateLayout()`](https://jolt.rafaelaugusto.dev/guide/layout) animates layout changes through FLIP transforms.
663
- - Gesture composition and nested-scroll handoff remain separate work ([#51](https://github.com/rafaelaugustos/jolt/issues/51)).
664
- - Shared-element navigation remains planned ([#24](https://github.com/rafaelaugustos/jolt/issues/24)).
678
+ The 0.1.0 feature scope is frozen. Physical-device acceptance for the gallery ([#117](https://github.com/rafaelaugustos/jolt/issues/117)) and scroll composition ([#116](https://github.com/rafaelaugustos/jolt/issues/116)) remains open. Initial rotation/gravity sensor acceptance ([#114](https://github.com/rafaelaugustos/jolt/issues/114)) is complete within its documented scope. These APIs are shipped; their remaining acceptance checks still matter before stable. Other adapters and broader feature milestones remain later work. See [release status and limits](https://jolt.rafaelaugusto.dev/guide/not-there-yet) for the current scope, execution costs and validation requirements.
665
679
 
666
680
  ## API
667
681
 
@@ -679,11 +693,27 @@ Each running property remembers its curve and start time. On Android, interrupti
679
693
 
680
694
  **Animations** from `animate()`, `decay()`, `sequence()`, `symbolEffect()`, `reveal()` and `conceal()`: `await`, `finished`, `stop()`. `press()`, `shimmer()`, `loader()`, `confetti()` and `particles()` return cleanup functions.
681
695
 
682
- **Helpers**: `definePreset`, `presets`, `springs`, `cubicBezier`, plus the types (`Keyframes`, `Transition`, `Spring`, `Tween`, `Preset`, `Presets`, `PresetName`, `SpringName`, `Easing`, `Animation`, `Target`...).
696
+ **Helpers**: `definePreset`, `presets`, `springs`, `cubicBezier`, `toView`, plus the types (`Keyframes`, `Transition`, `Spring`, `Tween`, `Preset`, `Presets`, `PresetName`, `SpringName`, `Easing`, `Animation`, `Target`...).
697
+
698
+ The core also exports [`scrollHeader()`](https://jolt.rafaelaugusto.dev/guide/scroll-header). Optional modules are included in the core package and imported through their own entry points:
699
+
700
+ | Entry point | API and guide |
701
+ | -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
702
+ | `@rafaelaugusto/jolt/gestures` | [`gestures()`, `GestureSurface`](https://jolt.rafaelaugusto.dev/guide/gestures) |
703
+ | `@rafaelaugusto/jolt/shared-navigation` | [`sharedNavigation()`](https://jolt.rafaelaugusto.dev/guide/shared-navigation), [`sharedNavigationEntry()`](https://jolt.rafaelaugusto.dev/guide/shared-gestures), [`resolveListTarget()`](https://jolt.rafaelaugusto.dev/guide/return-targets) |
704
+ | `@rafaelaugusto/jolt/interactive-navigation` | [`interactiveNavigation()`](https://jolt.rafaelaugusto.dev/guide/interactive-navigation) |
705
+ | `@rafaelaugusto/jolt/predictive-back` | [`predictiveBack()`](https://jolt.rafaelaugusto.dev/guide/predictive-back) |
706
+ | `@rafaelaugusto/jolt/sensors` | [`sensor('rotation')`, `sensor('gravity')`](https://jolt.rafaelaugusto.dev/guide/device-sensors) |
707
+ | `@rafaelaugusto/jolt/physics` | [`physicsWorld()`](https://jolt.rafaelaugusto.dev/guide/physics-attachments) |
708
+ | `@rafaelaugusto/jolt/shapes` | [`shape()`](https://jolt.rafaelaugusto.dev/guide/shapes) |
709
+ | `@rafaelaugusto/jolt/blur` | [`blur()`](https://jolt.rafaelaugusto.dev/guide/blur) |
710
+ | `@rafaelaugusto/jolt/glass` | [`GlassContainer`, `GlassView`, `supportsLiquidGlass()`](https://jolt.rafaelaugusto.dev/guide/glass) |
711
+
712
+ External map/SceneKit property adapters additionally require the separate matching `@rafaelaugusto/jolt-native` package. See the [complete API reference](https://jolt.rafaelaugusto.dev/guide/api) for the remaining entries and lifecycle contracts.
683
713
 
684
714
  ## Demo
685
715
 
686
- [`demo/`](./demo) now opens **Jolt Motion Studio**: a branded animated splash, a moving home, and 73 searchable experiments with category filters and native page navigation through Vue Router NS. The iOS preview includes the Jolt name and icon; launching normally always opens the collection. See the [native walkthrough](./docs/guide/demo.md).
716
+ [`demo/`](./demo) now opens **Jolt Motion Studio**: a branded animated splash, a moving home, and 74 searchable experiments with category filters and native page navigation through Vue Router NS. The iOS preview includes the Jolt name and icon; launching normally always opens the collection. See the [native walkthrough](./docs/guide/demo.md).
687
717
 
688
718
  The assistant remains available through `--screen=home` on iOS or `--es screen home` on Android: a fan of document tools, a voice screen with letter-by-letter text, and a staged conversation with document previews and a rolling countdown, with the screens cross-fading through the Vue entry. Open **Help → Watch demo** to replay the flow. The orb is an animated illustration; speech, documents and audio are sample data.
689
719
 
@@ -699,7 +729,7 @@ The assistant remains available through `--screen=home` on iOS or `--es screen h
699
729
  | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
700
730
  | <img src="https://raw.githubusercontent.com/rafaelaugustos/jolt/main/.github/assets/demo-layout-ios.gif" width="200" alt="Native cards insert, reorder and expand"> | <img src="https://raw.githubusercontent.com/rafaelaugustos/jolt/main/.github/assets/demo-drag-ios.gif" width="200" alt="A card and panel follow real drags and settle within bounds"> | <img src="https://raw.githubusercontent.com/rafaelaugustos/jolt/main/.github/assets/demo-image-effects-ios.gif" width="200" alt="Ripple, touch distortion and dissolve on a raster image"> | <img src="https://raw.githubusercontent.com/rafaelaugustos/jolt/main/.github/assets/demo-photo-zoom-ios.gif" width="200" alt="A photo responds to pinch, pan and double tap"> |
701
731
 
702
- The animation playground opens with `--playground` on iOS and `--es playground true` on Android, with presets, interruptible springs, decay, text, press effects, list rows, the keyboard composer and the native iOS helpers. See the [demo guide](./docs/guide/demo.md) for preview arguments and implementation notes. Every visual feature guide in the [documentation](https://jolt.rafaelaugusto.dev) includes a recording of the real native demo, in English and Portuguese.
732
+ The animation playground opens with `--playground` on iOS and `--es playground true` on Android, with presets, interruptible springs, decay, text, press effects, list rows, the keyboard composer and the native iOS helpers. See the [demo guide](./docs/guide/demo.md) for preview arguments and implementation notes. The [documentation](https://jolt.rafaelaugusto.dev) is available in English, Brazilian Portuguese, Spanish and Simplified Chinese. Every visual feature guide embeds reviewed recordings of the real native demo, with captions in the selected language and the recording's platform and limits identified.
703
733
 
704
734
  With the [NativeScript CLI](https://docs.nativescript.org/setup/) installed:
705
735
 
@@ -1 +1 @@
1
- {"version":3,"file":"animate.d.ts","sourceRoot":"","sources":["../src/animate.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAQzC,OAAO,EAML,KAAK,SAAS,EAEf,MAAM,aAAa,CAAA;AACpB,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAyB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACtE,OAAO,EAML,KAAK,UAAU,EAEhB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,SAAS,EAET,gBAAgB,EAEhB,MAAM,EACN,MAAM,EACP,MAAM,YAAY,CAAA;AAWnB;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CACrB,KAAK,EAAE,WAAW,EAClB,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,EACvC,UAAU,CAAC,EAAE,qBAAqB,GAAG,UAAU,GAC9C,iBAAiB,CAAA;AACpB,wBAAgB,OAAO,CACrB,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAClC,SAAS,EAAE,SAAS,GAAG,UAAU,EACjC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,GACpC,iBAAiB,CAAA;AAkBpB,qFAAqF;AACrF,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAClC,SAAS,EAAE,SAAS,GAAG,UAAU,EACjC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,GACpC,MAAM,iBAAiB,CAoDzB;AAED,2FAA2F;AAC3F,wBAAgB,KAAK,CACnB,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAClC,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,YAAiB,GACzB,iBAAiB,CAkEnB;AAED;;;GAGG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAA;AAC5E,wBAAgB,IAAI,CAClB,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAClC,UAAU,CAAC,EAAE,SAAS,gBAAgB,EAAE,EACxC,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3B,IAAI,CAAA;AAoBP;;;;;;;GAOG;AACH,wBAAgB,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;AACzD,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;AAqB7E,yFAAyF;AACzF,wBAAgB,KAAK,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,CAWjE;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAO3C;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,EAAE,CAElE;AA6HD,2FAA2F;AAC3F,wBAAgB,cAAc,CAC5B,SAAS,EAAE,SAAS,GAAG,UAAU,EACjC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,gCAYtC;AAED,wGAAwG;AACxG,wBAAgB,YAAY,CAC1B,SAAS,EAAE,SAAS,GAAG,UAAU,EACjC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,gCActC"}
1
+ {"version":3,"file":"animate.d.ts","sourceRoot":"","sources":["../src/animate.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAQzC,OAAO,EAML,KAAK,SAAS,EAEf,MAAM,aAAa,CAAA;AACpB,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAyB,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACtE,OAAO,EAML,KAAK,UAAU,EAEhB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,SAAS,EAET,gBAAgB,EAEhB,MAAM,EACN,MAAM,EACP,MAAM,YAAY,CAAA;AAWnB;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO,CACrB,KAAK,EAAE,WAAW,EAClB,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,EACvC,UAAU,CAAC,EAAE,qBAAqB,GAAG,UAAU,GAC9C,iBAAiB,CAAA;AACpB,wBAAgB,OAAO,CACrB,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAClC,SAAS,EAAE,SAAS,GAAG,UAAU,EACjC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,GACpC,iBAAiB,CAAA;AAkBpB,qFAAqF;AACrF,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAClC,SAAS,EAAE,SAAS,GAAG,UAAU,EACjC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,GACpC,MAAM,iBAAiB,CAoDzB;AAED,2FAA2F;AAC3F,wBAAgB,KAAK,CACnB,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAClC,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,YAAiB,GACzB,iBAAiB,CAkEnB;AAED;;;GAGG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAA;AAC5E,wBAAgB,IAAI,CAClB,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAClC,UAAU,CAAC,EAAE,SAAS,gBAAgB,EAAE,EACxC,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3B,IAAI,CAAA;AAoBP;;;;;;;GAOG;AACH,wBAAgB,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;AACzD,wBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;AAqB7E,yFAAyF;AACzF,wBAAgB,KAAK,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,CAWjE;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAI3C;AAuBD,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,EAAE,CAElE;AA6HD,2FAA2F;AAC3F,wBAAgB,cAAc,CAC5B,SAAS,EAAE,SAAS,GAAG,UAAU,EACjC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,gCAYtC;AAED,wGAAwG;AACxG,wBAAgB,YAAY,CAC1B,SAAS,EAAE,SAAS,GAAG,UAAU,EACjC,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,gCActC"}
package/dist/animate.js CHANGED
@@ -153,13 +153,28 @@ export function group(animations) {
153
153
  return animation;
154
154
  }
155
155
  export function toView(target) {
156
- if (target instanceof View)
157
- return target;
158
- const view = target?.nativeView ??
159
- target?.nativeElement;
156
+ const view = unwrap(target);
160
157
  if (view instanceof View)
161
158
  return view;
162
- throw new TypeError(`Expected a NativeScript view, got ${String(target)}.`);
159
+ throw new TypeError(`Expected a NativeScript view, got ${describe(target)}.`);
160
+ }
161
+ function unwrap(target, nested = false) {
162
+ if (target instanceof View || target === null || typeof target !== 'object')
163
+ return target;
164
+ const holder = target;
165
+ if (!nested && '$el' in holder)
166
+ return unwrap(holder.$el, true);
167
+ return holder.nativeView ?? holder.nativeElement;
168
+ }
169
+ function describe(target) {
170
+ if (target === null || typeof target !== 'object')
171
+ return typeof target === 'function' ? 'a function' : String(target);
172
+ if (Array.isArray(target))
173
+ return 'an array';
174
+ if ('$el' in target)
175
+ return 'a component instance without a root view';
176
+ const name = Object.getPrototypeOf(target)?.constructor?.name;
177
+ return name && name !== 'Object' ? `a ${name}` : 'an object without a view';
163
178
  }
164
179
  export function toViews(target) {
165
180
  return isList(target) ? target.map(toView) : [toView(target)];
@@ -1 +1 @@
1
- {"version":3,"file":"animate.js","sourceRoot":"","sources":["../src/animate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"animate.js","sourceRoot":"","sources":["../src/animate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,EAAE,WAAW,EAAqB,MAAM,WAAW,CAAA;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EACL,eAAe,EACf,UAAU,EACV,mBAAmB,GAEpB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACzD,OAAO,EACL,SAAS,EACT,UAAU,EACV,SAAS,EACT,QAAQ,EACR,aAAa,GAGd,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,SAAS,EAAmB,MAAM,cAAc,CAAA;AACzD,OAAO,EACL,MAAM,EACN,cAAc,EACd,aAAa,GAGd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,aAAa,EAAe,MAAM,cAAc,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAiB,MAAM,iBAAiB,CAAA;AACtE,OAAO,EACL,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,OAAO,GAGR,MAAM,iBAAiB,CAAA;AA2CxB,MAAM,UAAU,OAAO,CACrB,MAAgD,EAChD,SAAuE,EACvE,OAAqC;IAErC,IAAI,aAAa,CAAC,MAAM,CAAC;QACvB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAC3B,SAAgD,EAChD,OAAyD,CAC1D,CAAA;IACH,OAAO,gBAAgB,CACrB,MAAoC,EACpC,SAAmC,EACnC,OAAO,CACR,EAAE,CAAA;AACL,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,gBAAgB,CAC9B,MAAkC,EAClC,SAAiC,EACjC,OAAqC;IAErC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CACpF,SAAS,EACT,OAAO,CACR,CAAA;IACD,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;IAEtC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QAC3B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3C,IAAI,eAAe,CAAC,QAAQ,CAAC;gBAAE,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;iBAC7D,IAAI,oBAAoB,CAAC,QAAQ,CAAC;gBAAE,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;QACnF,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACxE,OAAO,GAAG,EAAE;YACV,IAAI,KAAK,KAAK,SAAS;gBACrB,cAAc,CACZ,IAAI,EACJ,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CACtC,CAAA;YACH,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;QACjD,CAAC,CAAA;IACH,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAChC,KAAK,MAAM,IAAI,IAAI,KAAK;QACtB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3C,IAAI,eAAe,CAAC,QAAQ,CAAC;gBAAE,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;iBAC7D,IAAI,oBAAoB,CAAC,QAAQ,CAAC;gBAAE,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IACrF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACnC,IAAI,CACF,SAAS,EACT,IAAI,EACJ,SAAS,EACT,YAAY,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAC1C,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,IAAI,CACL,CACF,CAAA;IACD,OAAO,GAAG,EAAE,CACV,aAAa,CACX,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACxB,IAAI,KAAK,KAAK,SAAS;YACrB,cAAc,CACZ,IAAI,EACJ,KAAK,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAC9C,CAAA;QACH,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC/D,CAAC,CAAC,CACH,CAAA;AACL,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,KAAK,CACnB,MAAkC,EAClC,QAAuB,EACvB,OAAO,GAAiB,EAAE;IAE1B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,gBAAgB,CAAA;IACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,UAAU,CAAC,qDAAqD,CAAC,CAAA;IAC7E,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,MAAqC,EAAE,EAAE;QACtD,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAC1C,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACtB,MAAM,CAAC,MAAM,KAAK,CAAC;YACnB,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EACnC,CAAC;YACD,MAAM,IAAI,UAAU,CAAC,wDAAwD,CAAC,CAAA;QAChF,CAAC;QACD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAA;IACpB,CAAC,CAAA;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;IACzB,IACE,IAAI,KAAK,SAAS;QAClB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QACpB,CAAC,IAAI,KAAK,IAAI;YACZ,OAAO,IAAI,KAAK,QAAQ;YACxB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,EAC9D,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,8DAA8D,CAAC,CAAA;IACrF,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,OAAO,GAAG,IAAoE,CAAA;IACpF,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAChD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAClD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAElD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE;QACzE,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,gBAAgB,QAAQ,gBAAgB,CAAC,CAAA;QAC3D,CAAC;QACD,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,EAAE,CAAA;QAClC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,UAAU,CAAC,+BAA+B,QAAQ,IAAI,CAAC,CAAA;QACnE,CAAC;QACD,8DAA8D;QAC9D,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;QACnD,OAAO;YACL;gBACE,QAAQ;gBACR,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;gBACvB,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ;wBACR,QAAQ,EAAE,KAAK;wBACf,IAAI,EAAE,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK;qBACvC;oBACD,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,CAAC;oBACT,OAAO,EAAE,KAAK;iBACf;aACF;SACF,CAAA;IACH,CAAC,CAAC,CAAA;IACF,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,aAAa,CAAC,EAAE,CAAC,CAAA;IAChD,OAAO,aAAa,CAClB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CACrE,CAAA;AACH,CAAC;AAYD,MAAM,UAAU,IAAI,CAClB,MAAgD,EAChD,UAA6D,EAC7D,OAA4B;IAE5B,IAAI,aAAa,CAAC,MAAM,CAAC;QACvB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAE,UAA6C,EAAE,KAAK,CAAC,CAAA;IACnF,IAAI,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QAC1C,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAA;IAC1D,MAAM,QAAQ,GACZ,UACD,EAAE,OAAO,CAAW,CAAC,QAAQ,EAAE,EAAE,CAChC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CACzD,CAAA;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,MAAoC,CAAC;QAC9D,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS;YAAE,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;;YACrE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;AACjC,CAAC;AAYD,MAAM,UAAU,GAAG,CACjB,MAAgD,EAChD,MAAuB;IAEvB,IAAI,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAgB,CAAC,CAAA;IACtE,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACxE,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAA;IACzD,MAAM,SAAS,GAA4B,EAAE,CAAA;IAC7C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,KAAK,KAAK,SAAS;YAAE,SAAQ;QACjC,IAAI,GAAG,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;QAC/E,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACxC,MAAM,IAAI,SAAS,CACjB,2CAA2C,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CACzE,CAAA;QACH,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACjC,CAAC;IACD,OAAO,CAAC,MAAoC,EAAE,SAAsB,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAA;AACxF,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,KAAK,CAAC,UAAgC;IACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAClF,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CACpC,CAAA;IACD,MAAM,SAAS,GAAc;QAC3B,QAAQ;QACR,IAAI,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC/D,IAAI,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;KAC1E,CAAA;IACD,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAC7D,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,MAAc;IACnC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IAC3B,IAAI,IAAI,YAAY,IAAI;QAAE,OAAO,IAAI,CAAA;IACrC,MAAM,IAAI,SAAS,CAAC,qCAAqC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAC/E,CAAC;AAED,SAAS,MAAM,CAAC,MAAe,EAAE,MAAM,GAAG,KAAK;IAC7C,IAAI,MAAM,YAAY,IAAI,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;QACzE,OAAO,MAAM,CAAA;IACf,MAAM,MAAM,GAAG,MAId,CAAA;IACD,IAAI,CAAC,MAAM,IAAI,KAAK,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC/D,OAAO,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,aAAa,CAAA;AAClD,CAAC;AAED,SAAS,QAAQ,CAAC,MAAe;IAC/B,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;QAC/C,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACrE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,UAAU,CAAA;IAC5C,IAAI,KAAK,IAAI,MAAM;QAAE,OAAO,0CAA0C,CAAA;IACtE,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,CAAA;IAC7D,OAAO,IAAI,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,0BAA0B,CAAA;AAC7E,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,MAAkC;IACxD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;AAC/D,CAAC;AAED,SAAS,MAAM,CAAI,MAAwB;IACzC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC;AAED,SAAS,OAAO,CACd,SAAiC,EACjC,OAAqC;IAErC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACrD,OAAO;QACL,GAAG,QAAQ;QACX,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;KACzE,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,SAAiC,EACjC,OAAqC;IAErC,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;IAC/B,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,CAAA;IAE3E,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAA;IACnC,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACxC,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;QAC3C,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5B,CAAC,CAAC,IAAI,CAAC,SAAS;YAChB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE;QAC3C,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO;QACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ;QACvC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM;QACjC,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,OAAgD;IACjE,IAAI,OAAO,KAAK,SAAS;QACvB,OAAO;YACL,IAAI,EAAE,EAAE;YACR,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,SAAS;SAClB,CAAA;IACH,IAAI,OAAO,OAAO,KAAK,QAAQ;QAC7B,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;YACrB,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,SAAS;SAClB,CAAA;IAEH,MAAM,IAAI,GAA4B,EAAE,CAAA;IACxC,MAAM,SAAS,GAAyB,EAAE,CAAA;IAC1C,IAAI,OAA2B,CAAA;IAC/B,IAAI,QAA6B,CAAA;IACjC,IAAI,MAAyB,CAAA;IAC7B,IAAI,KAAuB,CAAA;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,IAAI,KAAK,KAAK,SAAS;YAAE,SAAQ;QACjC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK;gBACrC,MAAM,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAA;YAC/D,KAAK,GAAG,KAAK,CAAA;QACf,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,GAAG,KAA2B,CAAA;aAC9D,IAAI,GAAG,KAAK,UAAU;YAAE,QAAQ,GAAG,KAA4B,CAAA;aAC/D,IAAI,GAAG,KAAK,QAAQ;YAAE,MAAM,GAAG,KAA0B,CAAA;aACzD,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9D,SAAS,CAAC,GAAG,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAmB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAClF,CAAC;;YAAM,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAC1B,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;AAC9D,CAAC;AAED,SAAS,IAAI,CACX,SAAoB,EACpB,IAAgB,EAChB,SAA+B,EAC/B,MAAc,EACd,QAAQ,GAAG,KAAK,EAChB,IAAmB,EACnB,KAAc,EACd,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE;IAEpB,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI;QAC7B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IACnE,OAAO,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE;QACxD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YAC7C,MAAM,IAAI,KAAK,CACb,uDAAuD,QAAQ,uBAAuB,CACvF,CAAA;QACH,IAAI,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAgC,CAAC,EAAE,CAAC;YAChE,IACE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC;gBAChD,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,GAAG,CAAC;gBAElC,MAAM,IAAI,UAAU,CAClB,iEAAiE,CAClE,CAAA;YACH,OAAO;gBACL,QAAQ;gBACR,SAAS,EAAE,MAAM;gBACjB,UAAU,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,EAAE;gBACzE,QAAQ;gBACR,IAAI;aACL,CAAA;QACH,CAAC;QACD,MAAM,QAAQ,GACZ,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QACrF,MAAM,UAAU,GAAG,iBAAiB,CAClC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAChF,QAAQ,EACR,MAAM,CAAC,MAAM,CACd,CAAA;QACD,UAAU,CAAC,KAAK,IAAI,MAAM,CAAA;QAC1B,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS;YAAE,UAAU,CAAC,IAAI,GAAG,IAAI,CAAA;QACzD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;IACrE,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,cAAc,CAC5B,SAAiC,EACjC,OAAqC;IAErC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACxE,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,SAAS,IAAI,CAAC,CAAA;IACjE,IAAI,KAAK,KAAK,SAAS;QACrB,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAC/E,OAAO,IAAI,GAAG,CACZ,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACnD,QAAQ;QACR,QAAQ,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAM;KACvD,CAAC,CACH,CAAA;AACH,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,YAAY,CAC1B,SAAiC,EACjC,OAAqC;IAErC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAClF,OAAO,IAAI,GAAG,CACZ,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,GAAG,CACrD,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;QAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACjD,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,IAAI,MAAM,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAA;QAC7E,MAAM,OAAO,GAAG,KAAK,KAAK,SAAS,IAAI,CAAC,QAAQ,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC/E,MAAM,KAAK,GAAG,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9D,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAM,CAAC,CAAA;IAC5C,CAAC,CACF,CACF,CAAA;AACH,CAAC;AAED,SAAS,MAAM,CACb,SAAoB,EACpB,IAAmB;IAEnB,MAAM,QAAQ,GAAoC,EAAE,CAAA;IACpD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,QAAQ;YAAE,SAAQ;QACvE,IAAI,GAAG,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAA;QAEnF,MAAM,UAAU,GAAe,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QAC7E,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAClC,IAAI,GAAG,KAAK,OAAO,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,SAAS;gBAAE,SAAQ;YAClE,QAAQ,CAAC,IAAI,CAAC;gBACZ,QAAQ;gBACR,WAAW,CAAC,QAAQ,EAAE,KAAuC,CAAC;aAC/D,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,MAAM,IAAI,EAAE;QAChD,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAC3C,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,WAAW,CAClB,QAAkB,EAClB,KAAqC;IAErC,IAAI,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAChE,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,MAAM,IAAI,SAAS,CAAC,8BAA8B,QAAQ,IAAI,CAAC,CAAA;QACnF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC7C,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC3E,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACpD,MAAM,IAAI,SAAS,CAAC,kCAAkC,QAAQ,IAAI,CAAC,CAAA;IACrE,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAA;IACrE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C,IACE,MAAM,CAAC,MAAM,KAAK,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EACjE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACnF,CAAC;IACD,IAAI,oBAAoB,CAAC,QAAQ,CAAC;QAAE,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAC9E,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,YAAY,CAAC,OAA2B,EAAE,KAAa,EAAE,KAAa;IAC7E,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,CAAC,CAAA;IACnC,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,EAAE,GAC5B,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;IAC3D,MAAM,MAAM,GACV,IAAI,KAAK,OAAO;QACd,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,IAAI,KAAK,MAAM;YACf,CAAC,CAAC,KAAK,GAAG,CAAC;YACX,CAAC,CAAC,IAAI,KAAK,QAAQ;gBACjB,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;gBACjB,CAAC,CAAC,IAAI,CAAA;IACd,OAAO,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,CAAA;AACxC,CAAC;AAED,SAAS,MAAM,CAAC,IAAgB;IAC9B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,IAAI,CAAC,CAAA;IAC7D,OAAO,UAAU,CAAA;AACnB,CAAC"}
@@ -1,18 +1,3 @@
1
- export type SheetSnap = number | `${number}%` | 'content';
2
- export interface SheetStop {
3
- point: SheetSnap;
4
- height: number;
5
- y: number;
6
- }
7
- export interface SheetGeometry {
8
- height: number;
9
- closedY: number;
10
- top: number;
11
- stops: SheetStop[];
12
- }
13
- export declare function validateSnaps(points: readonly SheetSnap[]): void;
14
- /** Keyboard overlap is relative to the host, so adjustResize is not subtracted twice. */
15
- export declare function sheetGeometry(points: readonly SheetSnap[], hostHeight: number, hostBottom: number, windowHeight: number, keyboardHeight: number, safeTop: number, safeBottom: number, contentHeight: number): SheetGeometry;
16
- /** Projection selects a stop; the native spring retains the actual release velocity. */
17
- export declare function releaseStop(geometry: SheetGeometry, y: number, velocity: number, dismissible: boolean): SheetStop | undefined;
1
+ export { validateSnaps, sheetGeometry, releaseStop } from '../core/sheet-geometry.js';
2
+ export type { SheetSnap, SheetStop, SheetGeometry } from '../core/sheet-geometry.js';
18
3
  //# sourceMappingURL=geometry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../../src/bottom-sheet/geometry.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,GAAG,MAAM,GAAG,GAAG,SAAS,CAAA;AAEzD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,SAAS,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,CAAC,EAAE,MAAM,CAAA;CACV;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,SAAS,EAAE,CAAA;CACnB;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,IAAI,CAgBhE;AAED,yFAAyF;AACzF,wBAAgB,aAAa,CAC3B,MAAM,EAAE,SAAS,SAAS,EAAE,EAC5B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,GACpB,aAAa,CAoBf;AAED,wFAAwF;AACxF,wBAAgB,WAAW,CACzB,QAAQ,EAAE,aAAa,EACvB,CAAC,EAAE,MAAM,EACT,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,GACnB,SAAS,GAAG,SAAS,CAYvB"}
1
+ {"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../../src/bottom-sheet/geometry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACrF,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA"}
@@ -1,51 +1,2 @@
1
- export function validateSnaps(points) {
2
- if (!Array.isArray(points) || !points.length)
3
- throw new TypeError('bottomSheet() needs at least one snap point.');
4
- for (const point of points) {
5
- if (point === 'content')
6
- continue;
7
- if (typeof point === 'number' && Number.isFinite(point) && point > 0)
8
- continue;
9
- if (typeof point === 'string' && /^(?:\d+(?:\.\d+)?|\.\d+)%$/.test(point)) {
10
- const percent = Number.parseFloat(point);
11
- if (percent > 0 && percent <= 100)
12
- continue;
13
- }
14
- throw new RangeError('Sheet snaps must be positive DIPs, 0–100% (exclusive of 0), or content.');
15
- }
16
- if (new Set(points).size !== points.length)
17
- throw new RangeError('Sheet snap points must not repeat.');
18
- }
19
- /** Keyboard overlap is relative to the host, so adjustResize is not subtracted twice. */
20
- export function sheetGeometry(points, hostHeight, hostBottom, windowHeight, keyboardHeight, safeTop, safeBottom, contentHeight) {
21
- const top = Math.max(0, safeTop);
22
- const overlap = Math.max(0, Math.min(hostHeight, hostBottom - (windowHeight - keyboardHeight)));
23
- const bottom = Math.max(Math.max(0, safeBottom), overlap);
24
- const height = Math.max(1, hostHeight - top - bottom);
25
- const closedY = Math.max(height, hostHeight - top);
26
- const stops = points.map((point) => {
27
- const desired = point === 'content'
28
- ? contentHeight
29
- : typeof point === 'number'
30
- ? point
31
- : (Number.parseFloat(point) / 100) * height;
32
- const visible = Math.max(1, Math.min(height, desired));
33
- return { point, height: visible, y: height - visible };
34
- });
35
- return { height, closedY, top, stops };
36
- }
37
- /** Projection selects a stop; the native spring retains the actual release velocity. */
38
- export function releaseStop(geometry, y, velocity, dismissible) {
39
- const projected = y + Math.max(-4000, Math.min(4000, velocity)) * 0.2;
40
- let distance = dismissible ? Math.abs(projected - geometry.closedY) : Infinity;
41
- let result;
42
- for (const stop of geometry.stops) {
43
- const next = Math.abs(projected - stop.y);
44
- if (next <= distance) {
45
- distance = next;
46
- result = stop;
47
- }
48
- }
49
- return result;
50
- }
1
+ export { validateSnaps, sheetGeometry, releaseStop } from '../core/sheet-geometry.js';
51
2
  //# sourceMappingURL=geometry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.js","sourceRoot":"","sources":["../../src/bottom-sheet/geometry.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,aAAa,CAAC,MAA4B;IACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM;QAC1C,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAA;IACrE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,SAAS;YAAE,SAAQ;QACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;YAAE,SAAQ;QAC9E,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,4BAA4B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;YACxC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,IAAI,GAAG;gBAAE,SAAQ;QAC7C,CAAC;QACD,MAAM,IAAI,UAAU,CAClB,yEAAyE,CAC1E,CAAA;IACH,CAAC;IACD,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM;QACxC,MAAM,IAAI,UAAU,CAAC,oCAAoC,CAAC,CAAA;AAC9D,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,aAAa,CAC3B,MAA4B,EAC5B,UAAkB,EAClB,UAAkB,EAClB,YAAoB,EACpB,cAAsB,EACtB,OAAe,EACf,UAAkB,EAClB,aAAqB;IAErB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IAChC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CACtB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,CAAC,YAAY,GAAG,cAAc,CAAC,CAAC,CACnE,CAAA;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAA;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,GAAG,GAAG,MAAM,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,GAAG,GAAG,CAAC,CAAA;IAClD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACjC,MAAM,OAAO,GACX,KAAK,KAAK,SAAS;YACjB,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ;gBACzB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,MAAM,CAAA;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QACtD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;IACxD,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;AACxC,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,WAAW,CACzB,QAAuB,EACvB,CAAS,EACT,QAAgB,EAChB,WAAoB;IAEpB,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAA;IACrE,IAAI,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC9E,IAAI,MAA6B,CAAA;IACjC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACzC,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;YACrB,QAAQ,GAAG,IAAI,CAAA;YACf,MAAM,GAAG,IAAI,CAAA;QACf,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"geometry.js","sourceRoot":"","sources":["../../src/bottom-sheet/geometry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA"}
@@ -19,17 +19,27 @@ export interface BottomSheetOptions {
19
19
  keyboard?: 'follow' | 'none';
20
20
  /** Whether dragging, the backdrop, back and accessibility can dismiss. Defaults to true. */
21
21
  dismissible?: boolean;
22
+ /**
23
+ * Overrides the host's safe-area insets, in DIPs. Core already lays the host's children
24
+ * out inside its insets, so a top override only adds to that placement.
25
+ */
22
26
  safeArea?: {
23
27
  top?: number;
24
28
  bottom?: number;
25
29
  };
26
30
  returnFocus?: View;
27
31
  spring?: Pick<SpringValueOptions, 'stiffness' | 'damping' | 'mass'>;
32
+ /**
33
+ * Spoken labels for the handle. Expand and Collapse appear only where a larger or smaller
34
+ * stop exists; `value` formats the spoken value per stop, with `null` when closed, and
35
+ * replaces the default, which is omitted for a single stop.
36
+ */
28
37
  accessibility?: {
29
38
  label?: string;
30
39
  expand?: string;
31
40
  collapse?: string;
32
41
  dismiss?: string;
42
+ value?: (point: SheetSnap | null) => string | undefined;
33
43
  };
34
44
  onChange?: (point: SheetSnap | null) => void;
35
45
  /** Called after a close settles; interrupted closes do not dismiss. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bottom-sheet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EAEV,IAAI,EAEL,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAQ,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,cAAc,EAA2B,MAAM,sBAAsB,CAAA;AAE9E,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,eAAe,CAAA;AAStB,OAAO,EAAE,cAAc,EAAE,CAAA;AACzB,YAAY,EAAE,SAAS,EAAE,CAAA;AAEzB,MAAM,WAAW,kBAAkB;IACjC,iGAAiG;IACjG,MAAM,EAAE,IAAI,CAAA;IACZ,IAAI,EAAE,SAAS,SAAS,EAAE,CAAA;IAC1B,wFAAwF;IACxF,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,wEAAwE;IACxE,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IAC5B,4FAA4F;IAC5F,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,MAAM,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC,CAAA;IACnE,aAAa,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACxF,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAA;IAC5C,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAC7B,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAA;IAC9B,MAAM,IAAI,IAAI,CAAA;IACd,QAAQ,IAAI,IAAI,CAAA;IAChB,OAAO,IAAI,IAAI,CAAA;IACf,SAAS,IAAI,IAAI,CAAA;IACjB,KAAK,IAAI,IAAI,CAAA;IACb,IAAI,IAAI,IAAI,CAAA;IACZ,OAAO,IAAI,IAAI,CAAA;CAChB;AAoBD,6EAA6E;AAC7E,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,kBAAkB,GAC1B,WAAW,CA2bb"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bottom-sheet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EAGV,IAAI,EAEL,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAQ,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAClE,OAAO,EAAE,cAAc,EAA2B,MAAM,sBAAsB,CAAA;AAE9E,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,eAAe,CAAA;AAUtB,OAAO,EAAE,cAAc,EAAE,CAAA;AACzB,YAAY,EAAE,SAAS,EAAE,CAAA;AAEzB,MAAM,WAAW,kBAAkB;IACjC,iGAAiG;IACjG,MAAM,EAAE,IAAI,CAAA;IACZ,IAAI,EAAE,SAAS,SAAS,EAAE,CAAA;IAC1B,wFAAwF;IACxF,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,wEAAwE;IACxE,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IAC5B,4FAA4F;IAC5F,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,MAAM,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC,CAAA;IACnE;;;;OAIG;IACH,aAAa,CAAC,EAAE;QACd,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,MAAM,GAAG,SAAS,CAAA;KACxD,CAAA;IACD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAA;IAC5C,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAC7B,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAA;IAC9B,MAAM,IAAI,IAAI,CAAA;IACd,QAAQ,IAAI,IAAI,CAAA;IAChB,OAAO,IAAI,IAAI,CAAA;IACf,SAAS,IAAI,IAAI,CAAA;IACjB,KAAK,IAAI,IAAI,CAAA;IACb,IAAI,IAAI,IAAI,CAAA;IACZ,OAAO,IAAI,IAAI,CAAA;CAChB;AAoBD,6EAA6E;AAC7E,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,kBAAkB,GAC1B,WAAW,CAofb"}
@@ -1,9 +1,9 @@
1
- import { Application, GridLayout, ScrollView, Trace, View, isAndroid, } from '@nativescript/core';
1
+ import { Application, GridLayout, ScrollView, Trace, Utils, View, isAndroid, } from '@nativescript/core';
2
2
  import { bind } from '../motion-value.js';
3
3
  import { GestureSurface, gestures } from '../gestures/index.js';
4
4
  import { currentKeyboard, onKeyboard } from '../keyboard.js';
5
5
  import { releaseStop, sheetGeometry, validateSnaps, } from './geometry.js';
6
- import { captureFocus, dismissKeyboard, revealFocusedField, sheetActions, windowHeight, } from './native.js';
6
+ import { captureFocus, dismissKeyboard, hostInsets, revealFocusedField, sheetActions, windowHeight, } from './native.js';
7
7
  export { GestureSurface };
8
8
  const owners = new WeakMap();
9
9
  const descendant = (child, parent) => {
@@ -62,6 +62,8 @@ export function bottomSheet(panel, options) {
62
62
  const original = {
63
63
  contentAlignment: content?.verticalAlignment,
64
64
  height: panel.height,
65
+ ignoreSafeArea: panel.iosIgnoreSafeArea,
66
+ paddingBottom: panel.paddingBottom,
65
67
  marginTop: panel.marginTop,
66
68
  marginBottom: panel.marginBottom,
67
69
  alignment: panel.verticalAlignment,
@@ -75,12 +77,50 @@ export function bottomSheet(panel, options) {
75
77
  value: handle.accessibilityValue,
76
78
  };
77
79
  let geometry, input;
80
+ let extended = 0;
78
81
  let opened = false, point = points[0], ended = false, held = false, changing = false, pendingDismiss = false, contactSettled = false, focusCaptured = false;
79
82
  let keyboard = currentKeyboard(), timer;
80
83
  let releasePanel = () => { }, releaseBackdrop = () => { }, releaseActions = () => { }, releaseKeyboard = () => { };
81
84
  let releaseClose = () => { }, restoreFocus = () => { };
82
85
  const dismissible = options.dismissible !== false;
83
86
  const followKeyboard = options.keyboard !== 'none';
87
+ const labels = options.accessibility;
88
+ const spoken = (next) => labels?.value
89
+ ? labels.value(next)
90
+ : points.length > 1
91
+ ? next === null
92
+ ? 'Closed'
93
+ : String(next)
94
+ : undefined;
95
+ const announce = (next) => {
96
+ handle.accessibilityValue = spoken(next);
97
+ };
98
+ let installed;
99
+ // Only actions that can do something are offered; the set follows the selected stop.
100
+ function installActions() {
101
+ if (ended || !handle.isLoaded)
102
+ return;
103
+ const current = geometry?.stops.find((stop) => stop.point === point);
104
+ const larger = !!current && geometry.stops.some((stop) => stop.height > current.height + 0.01);
105
+ const smaller = !!current && geometry.stops.some((stop) => stop.height < current.height - 0.01);
106
+ const actions = [
107
+ ...(larger
108
+ ? [{ label: labels?.expand ?? 'Expand', run: () => adjacent(true) }]
109
+ : []),
110
+ ...(smaller
111
+ ? [{ label: labels?.collapse ?? 'Collapse', run: () => adjacent(false) }]
112
+ : []),
113
+ ...(dismissible
114
+ ? [{ label: labels?.dismiss ?? 'Dismiss', run: () => setTarget(null) }]
115
+ : []),
116
+ ];
117
+ const signature = actions.map((action) => action.label).join('\n');
118
+ if (signature === installed)
119
+ return;
120
+ releaseActions();
121
+ releaseActions = sheetActions(handle, actions);
122
+ installed = signature;
123
+ }
84
124
  const keyboardOpen = () => followKeyboard && keyboard.visible;
85
125
  const targetY = () => !opened
86
126
  ? geometry.closedY
@@ -162,7 +202,8 @@ export function bottomSheet(panel, options) {
162
202
  pendingDismiss ||= wasOpen;
163
203
  dismissKeyboard(panel);
164
204
  }
165
- handle.accessibilityValue = opened ? String(point) : 'Closed';
205
+ announce(opened ? point : null);
206
+ installActions();
166
207
  move();
167
208
  if (changed)
168
209
  report(() => options.onChange?.(next));
@@ -194,23 +235,32 @@ export function bottomSheet(panel, options) {
194
235
  const size = host.getActualSize();
195
236
  if (!(size.height > 0))
196
237
  return;
197
- const safe = host.getSafeAreaInsets();
198
- const top = options.safeArea?.top ?? safe.top;
238
+ const safe = hostInsets(host);
239
+ // The host places its children below its own top inset; the panel can only start lower.
240
+ const top = Math.max(safe.top, options.safeArea?.top ?? safe.top);
199
241
  const bottom = options.safeArea?.bottom ?? safe.bottom;
242
+ // The padding that keeps rows above the bottom inset is not sheet chrome.
200
243
  const chrome = scroll
201
- ? Math.max(0, panel.getActualSize().height - scroll.getActualSize().height)
244
+ ? Math.max(0, panel.getActualSize().height - scroll.getActualSize().height - extended)
202
245
  : 0;
203
246
  const contentHeight = (content?.getActualSize().height ?? 0) + chrome;
204
- const next = sheetGeometry(points, size.height, (host.getLocationInWindow()?.y ?? 0) + size.height, windowHeight(host), followKeyboard ? keyboard.height : 0, top, bottom, contentHeight);
247
+ const next = sheetGeometry(points, size.height, (host.getLocationInWindow()?.y ?? 0) + size.height, windowHeight(host), followKeyboard ? keyboard.height : 0, top, bottom, contentHeight, safe.bottom === 0);
205
248
  const previous = geometry;
206
249
  geometry = next;
207
- const panelHeight = keyboardOpen()
250
+ const panelHeight = (keyboardOpen()
208
251
  ? next.height
209
- : Math.max(...next.stops.map((stop) => stop.height));
252
+ : Math.max(...next.stops.map((stop) => stop.height))) + next.extension;
210
253
  if (panel.height !== panelHeight)
211
254
  panel.height = panelHeight;
212
- if (panel.marginTop !== next.top)
213
- panel.marginTop = next.top;
255
+ const margin = next.top - safe.top;
256
+ if (panel.marginTop !== margin)
257
+ panel.marginTop = margin;
258
+ if (extended !== next.extension) {
259
+ const base = Utils.layout.toDeviceIndependentPixels(panel.effectivePaddingBottom ?? 0) -
260
+ extended;
261
+ panel.paddingBottom = base + next.extension;
262
+ extended = next.extension;
263
+ }
214
264
  if (!input) {
215
265
  input = gestures(panel, {
216
266
  pan: { axis: 'y', bounds: { top: minimum(), bottom: next.closedY } },
@@ -224,7 +274,7 @@ export function bottomSheet(panel, options) {
224
274
  releaseClose = () => { };
225
275
  opened = true;
226
276
  pendingDismiss = false;
227
- handle.accessibilityValue = String(point);
277
+ announce(point);
228
278
  if (!wasOpen)
229
279
  report(() => options.onChange?.(point));
230
280
  },
@@ -257,6 +307,7 @@ export function bottomSheet(panel, options) {
257
307
  if (held || !opened)
258
308
  input.pause();
259
309
  }
310
+ installActions();
260
311
  if (!previous ||
261
312
  previous.closedY !== next.closedY ||
262
313
  previous.height !== next.height ||
@@ -308,15 +359,8 @@ export function bottomSheet(panel, options) {
308
359
  restoreFocus = captureFocus(panel, options.returnFocus);
309
360
  focusCaptured = true;
310
361
  }
311
- releaseActions();
312
- const labels = options.accessibility;
313
- releaseActions = sheetActions(handle, [
314
- { label: labels?.expand ?? 'Expand', run: () => adjacent(true) },
315
- { label: labels?.collapse ?? 'Collapse', run: () => adjacent(false) },
316
- ...(dismissible
317
- ? [{ label: labels?.dismiss ?? 'Dismiss', run: () => setTarget(null) }]
318
- : []),
319
- ]);
362
+ installed = undefined;
363
+ installActions();
320
364
  releaseKeyboard();
321
365
  releaseKeyboard = onKeyboard((state) => {
322
366
  keyboard = state;
@@ -339,6 +383,7 @@ export function bottomSheet(panel, options) {
339
383
  backdrop.visibility = 'hidden';
340
384
  releaseActions();
341
385
  releaseActions = () => { };
386
+ installed = undefined;
342
387
  releaseKeyboard();
343
388
  releaseKeyboard = () => { };
344
389
  releasePanel();
@@ -407,6 +452,8 @@ export function bottomSheet(panel, options) {
407
452
  if (content)
408
453
  content.verticalAlignment = original.contentAlignment;
409
454
  panel.height = original.height;
455
+ panel.iosIgnoreSafeArea = original.ignoreSafeArea;
456
+ panel.paddingBottom = original.paddingBottom;
410
457
  panel.marginTop = original.marginTop;
411
458
  panel.marginBottom = original.marginBottom;
412
459
  panel.verticalAlignment = original.alignment;
@@ -427,6 +474,9 @@ export function bottomSheet(panel, options) {
427
474
  owners.set(panel, control);
428
475
  if (content && points.includes('content'))
429
476
  content.verticalAlignment = 'top';
477
+ // The geometry owns the panel's placement and its rows' distance from the bottom inset;
478
+ // Core would otherwise stretch it to the screen edges or inset its rows a second time.
479
+ panel.iosIgnoreSafeArea = true;
430
480
  panel.verticalAlignment = 'top';
431
481
  panel.marginBottom = 0;
432
482
  panel.visibility = 'hidden';
@@ -434,7 +484,7 @@ export function bottomSheet(panel, options) {
434
484
  handle.accessible = true;
435
485
  handle.accessibilityLabel =
436
486
  options.accessibility?.label ?? (handle.accessibilityLabel || 'Bottom sheet');
437
- handle.accessibilityValue = 'Closed';
487
+ announce(null);
438
488
  if (backdrop)
439
489
  backdrop.visibility = 'hidden';
440
490
  for (const view of [panel, handle, ...(scroll ? [scroll] : [])])