@prestyj/cli 5.27.0 → 5.28.1

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 (741) hide show
  1. package/README.md +9 -7
  2. package/assets/motion/BRAG-LICENSE +21 -0
  3. package/assets/motion/HYPERFRAMES-LICENSE +190 -0
  4. package/assets/motion/THIRD-PARTY.md +52 -0
  5. package/assets/motion/assets/music/README.md +20 -0
  6. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-1-by-ende-dot-app.music-cues.json +3846 -0
  7. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-1-by-ende-dot-app.music-cues.md +35 -0
  8. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-10-by-ende-dot-app.music-cues.json +1826 -0
  9. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-10-by-ende-dot-app.music-cues.md +35 -0
  10. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-11-by-ende-dot-app.music-cues.json +2266 -0
  11. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-11-by-ende-dot-app.music-cues.md +35 -0
  12. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-12-by-ende-dot-app.music-cues.json +2806 -0
  13. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-12-by-ende-dot-app.music-cues.md +35 -0
  14. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-9-by-ende-dot-app.music-cues.json +2796 -0
  15. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-9-by-ende-dot-app.music-cues.md +35 -0
  16. package/assets/motion/assets/music/happy-beats-business-moves-vol-1-by-ende-dot-app.mp3 +0 -0
  17. package/assets/motion/assets/music/happy-beats-business-moves-vol-10-by-ende-dot-app.mp3 +0 -0
  18. package/assets/motion/assets/music/happy-beats-business-moves-vol-11-by-ende-dot-app.mp3 +0 -0
  19. package/assets/motion/assets/music/happy-beats-business-moves-vol-12-by-ende-dot-app.mp3 +0 -0
  20. package/assets/motion/assets/music/happy-beats-business-moves-vol-9-by-ende-dot-app.mp3 +0 -0
  21. package/assets/motion/assets/sfx/casino/card-fan-1.ogg +0 -0
  22. package/assets/motion/assets/sfx/casino/card-fan-2.ogg +0 -0
  23. package/assets/motion/assets/sfx/casino/card-place-1.ogg +0 -0
  24. package/assets/motion/assets/sfx/casino/card-place-2.ogg +0 -0
  25. package/assets/motion/assets/sfx/casino/card-place-3.ogg +0 -0
  26. package/assets/motion/assets/sfx/casino/card-place-4.ogg +0 -0
  27. package/assets/motion/assets/sfx/casino/card-shove-1.ogg +0 -0
  28. package/assets/motion/assets/sfx/casino/card-shove-2.ogg +0 -0
  29. package/assets/motion/assets/sfx/casino/card-shove-3.ogg +0 -0
  30. package/assets/motion/assets/sfx/casino/card-shove-4.ogg +0 -0
  31. package/assets/motion/assets/sfx/casino/card-shuffle.ogg +0 -0
  32. package/assets/motion/assets/sfx/casino/card-slide-1.ogg +0 -0
  33. package/assets/motion/assets/sfx/casino/card-slide-2.ogg +0 -0
  34. package/assets/motion/assets/sfx/casino/card-slide-3.ogg +0 -0
  35. package/assets/motion/assets/sfx/casino/card-slide-4.ogg +0 -0
  36. package/assets/motion/assets/sfx/casino/card-slide-5.ogg +0 -0
  37. package/assets/motion/assets/sfx/casino/card-slide-6.ogg +0 -0
  38. package/assets/motion/assets/sfx/casino/card-slide-7.ogg +0 -0
  39. package/assets/motion/assets/sfx/casino/card-slide-8.ogg +0 -0
  40. package/assets/motion/assets/sfx/casino/cards-pack-open-1.ogg +0 -0
  41. package/assets/motion/assets/sfx/casino/cards-pack-open-2.ogg +0 -0
  42. package/assets/motion/assets/sfx/casino/chip-lay-1.ogg +0 -0
  43. package/assets/motion/assets/sfx/casino/chip-lay-2.ogg +0 -0
  44. package/assets/motion/assets/sfx/casino/chip-lay-3.ogg +0 -0
  45. package/assets/motion/assets/sfx/casino/chips-collide-1.ogg +0 -0
  46. package/assets/motion/assets/sfx/casino/chips-collide-2.ogg +0 -0
  47. package/assets/motion/assets/sfx/casino/chips-collide-3.ogg +0 -0
  48. package/assets/motion/assets/sfx/casino/chips-collide-4.ogg +0 -0
  49. package/assets/motion/assets/sfx/casino/chips-handle-1.ogg +0 -0
  50. package/assets/motion/assets/sfx/casino/chips-handle-2.ogg +0 -0
  51. package/assets/motion/assets/sfx/casino/chips-handle-3.ogg +0 -0
  52. package/assets/motion/assets/sfx/casino/chips-handle-4.ogg +0 -0
  53. package/assets/motion/assets/sfx/casino/chips-handle-6.ogg +0 -0
  54. package/assets/motion/assets/sfx/casino/chips-stack-1.ogg +0 -0
  55. package/assets/motion/assets/sfx/casino/chips-stack-2.ogg +0 -0
  56. package/assets/motion/assets/sfx/casino/chips-stack-3.ogg +0 -0
  57. package/assets/motion/assets/sfx/casino/chips-stack-4.ogg +0 -0
  58. package/assets/motion/assets/sfx/casino/chips-stack-5.ogg +0 -0
  59. package/assets/motion/assets/sfx/casino/chips-stack-6.ogg +0 -0
  60. package/assets/motion/assets/sfx/casino/dice-grab-1.ogg +0 -0
  61. package/assets/motion/assets/sfx/casino/dice-grab-2.ogg +0 -0
  62. package/assets/motion/assets/sfx/casino/dice-shake-1.ogg +0 -0
  63. package/assets/motion/assets/sfx/casino/dice-shake-2.ogg +0 -0
  64. package/assets/motion/assets/sfx/casino/dice-shake-3.ogg +0 -0
  65. package/assets/motion/assets/sfx/casino/dice-throw-1.ogg +0 -0
  66. package/assets/motion/assets/sfx/casino/dice-throw-2.ogg +0 -0
  67. package/assets/motion/assets/sfx/casino/dice-throw-3.ogg +0 -0
  68. package/assets/motion/assets/sfx/casino/die-throw-1.ogg +0 -0
  69. package/assets/motion/assets/sfx/casino/die-throw-2.ogg +0 -0
  70. package/assets/motion/assets/sfx/casino/die-throw-3.ogg +0 -0
  71. package/assets/motion/assets/sfx/casino/die-throw-4.ogg +0 -0
  72. package/assets/motion/assets/sfx/impact/footstep_carpet_000.ogg +0 -0
  73. package/assets/motion/assets/sfx/impact/footstep_carpet_003.ogg +0 -0
  74. package/assets/motion/assets/sfx/impact/footstep_carpet_004.ogg +0 -0
  75. package/assets/motion/assets/sfx/impact/footstep_concrete_000.ogg +0 -0
  76. package/assets/motion/assets/sfx/impact/footstep_concrete_001.ogg +0 -0
  77. package/assets/motion/assets/sfx/impact/footstep_concrete_002.ogg +0 -0
  78. package/assets/motion/assets/sfx/impact/footstep_concrete_003.ogg +0 -0
  79. package/assets/motion/assets/sfx/impact/footstep_concrete_004.ogg +0 -0
  80. package/assets/motion/assets/sfx/impact/footstep_grass_000.ogg +0 -0
  81. package/assets/motion/assets/sfx/impact/footstep_grass_001.ogg +0 -0
  82. package/assets/motion/assets/sfx/impact/footstep_grass_002.ogg +0 -0
  83. package/assets/motion/assets/sfx/impact/footstep_grass_003.ogg +0 -0
  84. package/assets/motion/assets/sfx/impact/footstep_grass_004.ogg +0 -0
  85. package/assets/motion/assets/sfx/impact/footstep_snow_000.ogg +0 -0
  86. package/assets/motion/assets/sfx/impact/footstep_snow_001.ogg +0 -0
  87. package/assets/motion/assets/sfx/impact/footstep_snow_002.ogg +0 -0
  88. package/assets/motion/assets/sfx/impact/footstep_snow_003.ogg +0 -0
  89. package/assets/motion/assets/sfx/impact/footstep_snow_004.ogg +0 -0
  90. package/assets/motion/assets/sfx/impact/footstep_wood_000.ogg +0 -0
  91. package/assets/motion/assets/sfx/impact/footstep_wood_001.ogg +0 -0
  92. package/assets/motion/assets/sfx/impact/footstep_wood_002.ogg +0 -0
  93. package/assets/motion/assets/sfx/impact/footstep_wood_003.ogg +0 -0
  94. package/assets/motion/assets/sfx/impact/footstep_wood_004.ogg +0 -0
  95. package/assets/motion/assets/sfx/impact/impactBell_heavy_000.ogg +0 -0
  96. package/assets/motion/assets/sfx/impact/impactBell_heavy_003.ogg +0 -0
  97. package/assets/motion/assets/sfx/impact/impactBell_heavy_004.ogg +0 -0
  98. package/assets/motion/assets/sfx/impact/impactGeneric_light_000.ogg +0 -0
  99. package/assets/motion/assets/sfx/impact/impactGeneric_light_001.ogg +0 -0
  100. package/assets/motion/assets/sfx/impact/impactGeneric_light_002.ogg +0 -0
  101. package/assets/motion/assets/sfx/impact/impactGeneric_light_003.ogg +0 -0
  102. package/assets/motion/assets/sfx/impact/impactGeneric_light_004.ogg +0 -0
  103. package/assets/motion/assets/sfx/impact/impactGlass_heavy_002.ogg +0 -0
  104. package/assets/motion/assets/sfx/impact/impactGlass_light_001.ogg +0 -0
  105. package/assets/motion/assets/sfx/impact/impactGlass_light_002.ogg +0 -0
  106. package/assets/motion/assets/sfx/impact/impactGlass_light_003.ogg +0 -0
  107. package/assets/motion/assets/sfx/impact/impactGlass_medium_000.ogg +0 -0
  108. package/assets/motion/assets/sfx/impact/impactGlass_medium_002.ogg +0 -0
  109. package/assets/motion/assets/sfx/impact/impactGlass_medium_004.ogg +0 -0
  110. package/assets/motion/assets/sfx/impact/impactMetal_heavy_000.ogg +0 -0
  111. package/assets/motion/assets/sfx/impact/impactMetal_heavy_002.ogg +0 -0
  112. package/assets/motion/assets/sfx/impact/impactMetal_heavy_004.ogg +0 -0
  113. package/assets/motion/assets/sfx/impact/impactMetal_light_002.ogg +0 -0
  114. package/assets/motion/assets/sfx/impact/impactMetal_light_003.ogg +0 -0
  115. package/assets/motion/assets/sfx/impact/impactMetal_medium_000.ogg +0 -0
  116. package/assets/motion/assets/sfx/impact/impactMetal_medium_001.ogg +0 -0
  117. package/assets/motion/assets/sfx/impact/impactMetal_medium_002.ogg +0 -0
  118. package/assets/motion/assets/sfx/impact/impactMetal_medium_003.ogg +0 -0
  119. package/assets/motion/assets/sfx/impact/impactMetal_medium_004.ogg +0 -0
  120. package/assets/motion/assets/sfx/impact/impactMining_001.ogg +0 -0
  121. package/assets/motion/assets/sfx/impact/impactPlank_medium_000.ogg +0 -0
  122. package/assets/motion/assets/sfx/impact/impactPlank_medium_001.ogg +0 -0
  123. package/assets/motion/assets/sfx/impact/impactPlank_medium_002.ogg +0 -0
  124. package/assets/motion/assets/sfx/impact/impactPlank_medium_003.ogg +0 -0
  125. package/assets/motion/assets/sfx/impact/impactPlank_medium_004.ogg +0 -0
  126. package/assets/motion/assets/sfx/impact/impactPlate_heavy_000.ogg +0 -0
  127. package/assets/motion/assets/sfx/impact/impactPlate_heavy_001.ogg +0 -0
  128. package/assets/motion/assets/sfx/impact/impactPlate_heavy_002.ogg +0 -0
  129. package/assets/motion/assets/sfx/impact/impactPlate_heavy_003.ogg +0 -0
  130. package/assets/motion/assets/sfx/impact/impactPlate_heavy_004.ogg +0 -0
  131. package/assets/motion/assets/sfx/impact/impactPlate_light_000.ogg +0 -0
  132. package/assets/motion/assets/sfx/impact/impactPlate_light_001.ogg +0 -0
  133. package/assets/motion/assets/sfx/impact/impactPlate_light_002.ogg +0 -0
  134. package/assets/motion/assets/sfx/impact/impactPlate_light_003.ogg +0 -0
  135. package/assets/motion/assets/sfx/impact/impactPlate_light_004.ogg +0 -0
  136. package/assets/motion/assets/sfx/impact/impactPlate_medium_000.ogg +0 -0
  137. package/assets/motion/assets/sfx/impact/impactPlate_medium_001.ogg +0 -0
  138. package/assets/motion/assets/sfx/impact/impactPlate_medium_002.ogg +0 -0
  139. package/assets/motion/assets/sfx/impact/impactPlate_medium_003.ogg +0 -0
  140. package/assets/motion/assets/sfx/impact/impactPlate_medium_004.ogg +0 -0
  141. package/assets/motion/assets/sfx/impact/impactPunch_heavy_000.ogg +0 -0
  142. package/assets/motion/assets/sfx/impact/impactPunch_heavy_001.ogg +0 -0
  143. package/assets/motion/assets/sfx/impact/impactPunch_heavy_002.ogg +0 -0
  144. package/assets/motion/assets/sfx/impact/impactPunch_heavy_003.ogg +0 -0
  145. package/assets/motion/assets/sfx/impact/impactPunch_heavy_004.ogg +0 -0
  146. package/assets/motion/assets/sfx/impact/impactPunch_medium_000.ogg +0 -0
  147. package/assets/motion/assets/sfx/impact/impactPunch_medium_001.ogg +0 -0
  148. package/assets/motion/assets/sfx/impact/impactPunch_medium_002.ogg +0 -0
  149. package/assets/motion/assets/sfx/impact/impactPunch_medium_003.ogg +0 -0
  150. package/assets/motion/assets/sfx/impact/impactPunch_medium_004.ogg +0 -0
  151. package/assets/motion/assets/sfx/impact/impactSoft_heavy_000.ogg +0 -0
  152. package/assets/motion/assets/sfx/impact/impactSoft_heavy_001.ogg +0 -0
  153. package/assets/motion/assets/sfx/impact/impactSoft_heavy_002.ogg +0 -0
  154. package/assets/motion/assets/sfx/impact/impactSoft_heavy_003.ogg +0 -0
  155. package/assets/motion/assets/sfx/impact/impactSoft_heavy_004.ogg +0 -0
  156. package/assets/motion/assets/sfx/impact/impactSoft_medium_000.ogg +0 -0
  157. package/assets/motion/assets/sfx/impact/impactSoft_medium_001.ogg +0 -0
  158. package/assets/motion/assets/sfx/impact/impactSoft_medium_002.ogg +0 -0
  159. package/assets/motion/assets/sfx/impact/impactSoft_medium_003.ogg +0 -0
  160. package/assets/motion/assets/sfx/impact/impactSoft_medium_004.ogg +0 -0
  161. package/assets/motion/assets/sfx/impact/impactTin_medium_000.ogg +0 -0
  162. package/assets/motion/assets/sfx/impact/impactTin_medium_001.ogg +0 -0
  163. package/assets/motion/assets/sfx/impact/impactTin_medium_002.ogg +0 -0
  164. package/assets/motion/assets/sfx/impact/impactTin_medium_003.ogg +0 -0
  165. package/assets/motion/assets/sfx/impact/impactTin_medium_004.ogg +0 -0
  166. package/assets/motion/assets/sfx/impact/impactWood_heavy_000.ogg +0 -0
  167. package/assets/motion/assets/sfx/impact/impactWood_heavy_001.ogg +0 -0
  168. package/assets/motion/assets/sfx/impact/impactWood_heavy_002.ogg +0 -0
  169. package/assets/motion/assets/sfx/impact/impactWood_heavy_003.ogg +0 -0
  170. package/assets/motion/assets/sfx/impact/impactWood_heavy_004.ogg +0 -0
  171. package/assets/motion/assets/sfx/impact/impactWood_light_000.ogg +0 -0
  172. package/assets/motion/assets/sfx/impact/impactWood_light_001.ogg +0 -0
  173. package/assets/motion/assets/sfx/impact/impactWood_light_002.ogg +0 -0
  174. package/assets/motion/assets/sfx/impact/impactWood_light_003.ogg +0 -0
  175. package/assets/motion/assets/sfx/impact/impactWood_light_004.ogg +0 -0
  176. package/assets/motion/assets/sfx/impact/impactWood_medium_000.ogg +0 -0
  177. package/assets/motion/assets/sfx/impact/impactWood_medium_001.ogg +0 -0
  178. package/assets/motion/assets/sfx/impact/impactWood_medium_002.ogg +0 -0
  179. package/assets/motion/assets/sfx/impact/impactWood_medium_003.ogg +0 -0
  180. package/assets/motion/assets/sfx/impact/impactWood_medium_004.ogg +0 -0
  181. package/assets/motion/assets/sfx/interface/bong_001.ogg +0 -0
  182. package/assets/motion/assets/sfx/interface/click_001.ogg +0 -0
  183. package/assets/motion/assets/sfx/interface/click_002.ogg +0 -0
  184. package/assets/motion/assets/sfx/interface/click_003.ogg +0 -0
  185. package/assets/motion/assets/sfx/interface/click_004.ogg +0 -0
  186. package/assets/motion/assets/sfx/interface/click_005.ogg +0 -0
  187. package/assets/motion/assets/sfx/interface/drop_001.ogg +0 -0
  188. package/assets/motion/assets/sfx/interface/drop_002.ogg +0 -0
  189. package/assets/motion/assets/sfx/interface/drop_003.ogg +0 -0
  190. package/assets/motion/assets/sfx/interface/error_005.ogg +0 -0
  191. package/assets/motion/assets/sfx/interface/error_006.ogg +0 -0
  192. package/assets/motion/assets/sfx/interface/glitch_002.ogg +0 -0
  193. package/assets/motion/assets/sfx/interface/glitch_004.ogg +0 -0
  194. package/assets/motion/assets/sfx/interface/select_008.ogg +0 -0
  195. package/assets/motion/assets/sfx/interface/switch_001.ogg +0 -0
  196. package/assets/motion/assets/sfx/interface/switch_002.ogg +0 -0
  197. package/assets/motion/assets/sfx/interface/switch_004.ogg +0 -0
  198. package/assets/motion/assets/sfx/interface/switch_005.ogg +0 -0
  199. package/assets/motion/assets/sfx/interface/switch_006.ogg +0 -0
  200. package/assets/motion/assets/sfx/interface/switch_007.ogg +0 -0
  201. package/assets/motion/assets/sfx/keyboard/keypress-001.wav +0 -0
  202. package/assets/motion/assets/sfx/keyboard/keypress-002.wav +0 -0
  203. package/assets/motion/assets/sfx/keyboard/keypress-003.wav +0 -0
  204. package/assets/motion/assets/sfx/keyboard/keypress-004.wav +0 -0
  205. package/assets/motion/assets/sfx/keyboard/keypress-005.wav +0 -0
  206. package/assets/motion/assets/sfx/keyboard/keypress-006.wav +0 -0
  207. package/assets/motion/assets/sfx/keyboard/keypress-007.wav +0 -0
  208. package/assets/motion/assets/sfx/keyboard/keypress-008.wav +0 -0
  209. package/assets/motion/assets/sfx/keyboard/keypress-009.wav +0 -0
  210. package/assets/motion/assets/sfx/keyboard/keypress-010.wav +0 -0
  211. package/assets/motion/assets/sfx/keyboard/keypress-011.wav +0 -0
  212. package/assets/motion/assets/sfx/keyboard/keypress-012.wav +0 -0
  213. package/assets/motion/assets/sfx/keyboard/keypress-013.wav +0 -0
  214. package/assets/motion/assets/sfx/keyboard/keypress-014.wav +0 -0
  215. package/assets/motion/assets/sfx/keyboard/keypress-015.wav +0 -0
  216. package/assets/motion/assets/sfx/keyboard/keypress-016.wav +0 -0
  217. package/assets/motion/assets/sfx/keyboard/keypress-017.wav +0 -0
  218. package/assets/motion/assets/sfx/keyboard/keypress-018.wav +0 -0
  219. package/assets/motion/assets/sfx/keyboard/keypress-019.wav +0 -0
  220. package/assets/motion/assets/sfx/keyboard/keypress-020.wav +0 -0
  221. package/assets/motion/assets/sfx/keyboard/keypress-021.wav +0 -0
  222. package/assets/motion/assets/sfx/keyboard/keypress-022.wav +0 -0
  223. package/assets/motion/assets/sfx/keyboard/keypress-023.wav +0 -0
  224. package/assets/motion/assets/sfx/keyboard/keypress-024.wav +0 -0
  225. package/assets/motion/assets/sfx/keyboard/keypress-025.wav +0 -0
  226. package/assets/motion/assets/sfx/keyboard/keypress-026.wav +0 -0
  227. package/assets/motion/assets/sfx/keyboard/keypress-027.wav +0 -0
  228. package/assets/motion/assets/sfx/keyboard/keypress-028.wav +0 -0
  229. package/assets/motion/assets/sfx/keyboard/keypress-029.wav +0 -0
  230. package/assets/motion/assets/sfx/keyboard/keypress-030.wav +0 -0
  231. package/assets/motion/assets/sfx/keyboard/keypress-031.wav +0 -0
  232. package/assets/motion/assets/sfx/keyboard/keypress-032.wav +0 -0
  233. package/assets/motion/assets/sfx/sfx-analysis.json +15584 -0
  234. package/assets/motion/assets/sfx/sfx-analysis.md +75 -0
  235. package/assets/motion/assets/sfx/ui/click1.ogg +0 -0
  236. package/assets/motion/assets/sfx/ui/click2.ogg +0 -0
  237. package/assets/motion/assets/sfx/ui/click3.ogg +0 -0
  238. package/assets/motion/assets/sfx/ui/click4.ogg +0 -0
  239. package/assets/motion/assets/sfx/ui/click5.ogg +0 -0
  240. package/assets/motion/assets/sfx/ui/mouseclick1.ogg +0 -0
  241. package/assets/motion/assets/sfx/ui/rollover1.ogg +0 -0
  242. package/assets/motion/assets/sfx/ui/rollover2.ogg +0 -0
  243. package/assets/motion/assets/sfx/ui/rollover4.ogg +0 -0
  244. package/assets/motion/assets/sfx/ui/rollover5.ogg +0 -0
  245. package/assets/motion/assets/sfx/ui/switch1.ogg +0 -0
  246. package/assets/motion/assets/sfx/ui/switch10.ogg +0 -0
  247. package/assets/motion/assets/sfx/ui/switch11.ogg +0 -0
  248. package/assets/motion/assets/sfx/ui/switch12.ogg +0 -0
  249. package/assets/motion/assets/sfx/ui/switch13.ogg +0 -0
  250. package/assets/motion/assets/sfx/ui/switch14.ogg +0 -0
  251. package/assets/motion/assets/sfx/ui/switch15.ogg +0 -0
  252. package/assets/motion/assets/sfx/ui/switch16.ogg +0 -0
  253. package/assets/motion/assets/sfx/ui/switch17.ogg +0 -0
  254. package/assets/motion/assets/sfx/ui/switch18.ogg +0 -0
  255. package/assets/motion/assets/sfx/ui/switch19.ogg +0 -0
  256. package/assets/motion/assets/sfx/ui/switch2.ogg +0 -0
  257. package/assets/motion/assets/sfx/ui/switch20.ogg +0 -0
  258. package/assets/motion/assets/sfx/ui/switch21.ogg +0 -0
  259. package/assets/motion/assets/sfx/ui/switch22.ogg +0 -0
  260. package/assets/motion/assets/sfx/ui/switch23.ogg +0 -0
  261. package/assets/motion/assets/sfx/ui/switch24.ogg +0 -0
  262. package/assets/motion/assets/sfx/ui/switch25.ogg +0 -0
  263. package/assets/motion/assets/sfx/ui/switch26.ogg +0 -0
  264. package/assets/motion/assets/sfx/ui/switch27.ogg +0 -0
  265. package/assets/motion/assets/sfx/ui/switch28.ogg +0 -0
  266. package/assets/motion/assets/sfx/ui/switch29.ogg +0 -0
  267. package/assets/motion/assets/sfx/ui/switch3.ogg +0 -0
  268. package/assets/motion/assets/sfx/ui/switch30.ogg +0 -0
  269. package/assets/motion/assets/sfx/ui/switch31.ogg +0 -0
  270. package/assets/motion/assets/sfx/ui/switch32.ogg +0 -0
  271. package/assets/motion/assets/sfx/ui/switch33.ogg +0 -0
  272. package/assets/motion/assets/sfx/ui/switch34.ogg +0 -0
  273. package/assets/motion/assets/sfx/ui/switch35.ogg +0 -0
  274. package/assets/motion/assets/sfx/ui/switch36.ogg +0 -0
  275. package/assets/motion/assets/sfx/ui/switch37.ogg +0 -0
  276. package/assets/motion/assets/sfx/ui/switch38.ogg +0 -0
  277. package/assets/motion/assets/sfx/ui/switch4.ogg +0 -0
  278. package/assets/motion/assets/sfx/ui/switch5.ogg +0 -0
  279. package/assets/motion/assets/sfx/ui/switch6.ogg +0 -0
  280. package/assets/motion/assets/sfx/ui/switch7.ogg +0 -0
  281. package/assets/motion/assets/sfx/ui/switch8.ogg +0 -0
  282. package/assets/motion/assets/sfx/ui/switch9.ogg +0 -0
  283. package/assets/motion/bin/contact-sheet.mjs +87 -0
  284. package/assets/motion/bin/flash-check.mjs +314 -0
  285. package/assets/motion/bin/fonts.mjs +111 -0
  286. package/assets/motion/bin/hyperframes.mjs +122 -0
  287. package/assets/motion/bin/library.mjs +210 -0
  288. package/assets/motion/bin/media-binaries.mjs +49 -0
  289. package/assets/motion/bin/motion-check.mjs +256 -0
  290. package/assets/motion/bin/pdf-extract.mjs +133 -0
  291. package/assets/motion/bin/reveal.mjs +76 -0
  292. package/assets/motion/bin/review-frames.mjs +328 -0
  293. package/assets/motion/bin/score-synth.mjs +486 -0
  294. package/assets/motion/bin/three.mjs +55 -0
  295. package/assets/motion/fonts/anybody/OFL.txt +93 -0
  296. package/assets/motion/fonts/anybody/anybody-normal.woff2 +0 -0
  297. package/assets/motion/fonts/archivo/OFL.txt +93 -0
  298. package/assets/motion/fonts/archivo/archivo-normal.woff2 +0 -0
  299. package/assets/motion/fonts/big-shoulders/OFL.txt +93 -0
  300. package/assets/motion/fonts/big-shoulders/big-shoulders-normal.woff2 +0 -0
  301. package/assets/motion/fonts/bricolage-grotesque/OFL.txt +93 -0
  302. package/assets/motion/fonts/bricolage-grotesque/bricolage-grotesque-normal.woff2 +0 -0
  303. package/assets/motion/fonts/doto/OFL.txt +93 -0
  304. package/assets/motion/fonts/doto/doto-normal.woff2 +0 -0
  305. package/assets/motion/fonts/finger-paint/OFL.txt +93 -0
  306. package/assets/motion/fonts/finger-paint/finger-paint-normal.woff2 +0 -0
  307. package/assets/motion/fonts/fonts.json +265 -0
  308. package/assets/motion/fonts/fraunces/OFL.txt +93 -0
  309. package/assets/motion/fonts/fraunces/fraunces-italic.woff2 +0 -0
  310. package/assets/motion/fonts/fraunces/fraunces-normal.woff2 +0 -0
  311. package/assets/motion/fonts/funnel-display/OFL.txt +93 -0
  312. package/assets/motion/fonts/funnel-display/funnel-display-normal.woff2 +0 -0
  313. package/assets/motion/fonts/gloock/OFL.txt +93 -0
  314. package/assets/motion/fonts/gloock/gloock-normal.woff2 +0 -0
  315. package/assets/motion/fonts/host-grotesk/OFL.txt +93 -0
  316. package/assets/motion/fonts/host-grotesk/host-grotesk-normal.woff2 +0 -0
  317. package/assets/motion/fonts/hubot-sans/OFL.txt +93 -0
  318. package/assets/motion/fonts/hubot-sans/hubot-sans-normal.woff2 +0 -0
  319. package/assets/motion/fonts/martian-mono/OFL.txt +93 -0
  320. package/assets/motion/fonts/martian-mono/martian-mono-normal.woff2 +0 -0
  321. package/assets/motion/fonts/mona-sans/OFL.txt +93 -0
  322. package/assets/motion/fonts/mona-sans/mona-sans-normal.woff2 +0 -0
  323. package/assets/motion/fonts/newsreader/OFL.txt +93 -0
  324. package/assets/motion/fonts/newsreader/newsreader-italic.woff2 +0 -0
  325. package/assets/motion/fonts/newsreader/newsreader-normal.woff2 +0 -0
  326. package/assets/motion/fonts/schibsted-grotesk/OFL.txt +93 -0
  327. package/assets/motion/fonts/schibsted-grotesk/schibsted-grotesk-normal.woff2 +0 -0
  328. package/assets/motion/fonts/short-stack/OFL.txt +94 -0
  329. package/assets/motion/fonts/short-stack/short-stack-normal.woff2 +0 -0
  330. package/assets/motion/fonts/sora/OFL.txt +93 -0
  331. package/assets/motion/fonts/sora/sora-normal.woff2 +0 -0
  332. package/assets/motion/fonts/specimen.jpg +0 -0
  333. package/assets/motion/fonts/unbounded/OFL.txt +93 -0
  334. package/assets/motion/fonts/unbounded/unbounded-normal.woff2 +0 -0
  335. package/assets/motion/fonts/young-serif/OFL.txt +93 -0
  336. package/assets/motion/fonts/young-serif/young-serif-normal.woff2 +0 -0
  337. package/assets/motion/library/README.md +106 -0
  338. package/assets/motion/library/library.json +1384 -0
  339. package/assets/motion/library/looks/acid-poster/look.md +82 -0
  340. package/assets/motion/library/looks/acid-poster/meta.json +11 -0
  341. package/assets/motion/library/looks/acid-poster/preview.jpg +0 -0
  342. package/assets/motion/library/looks/acid-poster/sample.html +177 -0
  343. package/assets/motion/library/looks/acid-poster/tokens.css +16 -0
  344. package/assets/motion/library/looks/blueprint/look.md +22 -0
  345. package/assets/motion/library/looks/blueprint/meta.json +11 -0
  346. package/assets/motion/library/looks/blueprint/preview.jpg +0 -0
  347. package/assets/motion/library/looks/blueprint/sample.html +301 -0
  348. package/assets/motion/library/looks/blueprint/tokens.css +16 -0
  349. package/assets/motion/library/looks/dark-studio/look.md +85 -0
  350. package/assets/motion/library/looks/dark-studio/meta.json +11 -0
  351. package/assets/motion/library/looks/dark-studio/preview.jpg +0 -0
  352. package/assets/motion/library/looks/dark-studio/sample.html +324 -0
  353. package/assets/motion/library/looks/dark-studio/tokens.css +16 -0
  354. package/assets/motion/library/looks/data-desk/look.md +19 -0
  355. package/assets/motion/library/looks/data-desk/meta.json +9 -0
  356. package/assets/motion/library/looks/data-desk/preview.jpg +0 -0
  357. package/assets/motion/library/looks/data-desk/sample.html +17 -0
  358. package/assets/motion/library/looks/data-desk/tokens.css +15 -0
  359. package/assets/motion/library/looks/duotone-broadcast/look.md +53 -0
  360. package/assets/motion/library/looks/duotone-broadcast/meta.json +11 -0
  361. package/assets/motion/library/looks/duotone-broadcast/preview.jpg +0 -0
  362. package/assets/motion/library/looks/duotone-broadcast/sample.html +45 -0
  363. package/assets/motion/library/looks/duotone-broadcast/tokens.css +16 -0
  364. package/assets/motion/library/looks/editorial-ink/look.md +80 -0
  365. package/assets/motion/library/looks/editorial-ink/meta.json +11 -0
  366. package/assets/motion/library/looks/editorial-ink/preview.jpg +0 -0
  367. package/assets/motion/library/looks/editorial-ink/sample.html +203 -0
  368. package/assets/motion/library/looks/editorial-ink/tokens.css +16 -0
  369. package/assets/motion/library/looks/mono-luxe/look.md +19 -0
  370. package/assets/motion/library/looks/mono-luxe/meta.json +9 -0
  371. package/assets/motion/library/looks/mono-luxe/preview.jpg +0 -0
  372. package/assets/motion/library/looks/mono-luxe/sample.html +12 -0
  373. package/assets/motion/library/looks/mono-luxe/tokens.css +15 -0
  374. package/assets/motion/library/looks/soft-light-ad/look.md +63 -0
  375. package/assets/motion/library/looks/soft-light-ad/meta.json +39 -0
  376. package/assets/motion/library/looks/soft-light-ad/preview.jpg +0 -0
  377. package/assets/motion/library/looks/soft-light-ad/sample.html +44 -0
  378. package/assets/motion/library/looks/soft-light-ad/tokens.css +17 -0
  379. package/assets/motion/library/looks/sunlit-consumer/look.md +19 -0
  380. package/assets/motion/library/looks/sunlit-consumer/meta.json +9 -0
  381. package/assets/motion/library/looks/sunlit-consumer/preview.jpg +0 -0
  382. package/assets/motion/library/looks/sunlit-consumer/sample.html +12 -0
  383. package/assets/motion/library/looks/sunlit-consumer/tokens.css +15 -0
  384. package/assets/motion/library/looks/swiss-grid/look.md +81 -0
  385. package/assets/motion/library/looks/swiss-grid/meta.json +11 -0
  386. package/assets/motion/library/looks/swiss-grid/preview.jpg +0 -0
  387. package/assets/motion/library/looks/swiss-grid/sample.html +209 -0
  388. package/assets/motion/library/looks/swiss-grid/tokens.css +16 -0
  389. package/assets/motion/library/looks/terminal-phosphor/look.md +77 -0
  390. package/assets/motion/library/looks/terminal-phosphor/meta.json +11 -0
  391. package/assets/motion/library/looks/terminal-phosphor/preview.jpg +0 -0
  392. package/assets/motion/library/looks/terminal-phosphor/sample.html +182 -0
  393. package/assets/motion/library/looks/terminal-phosphor/tokens.css +16 -0
  394. package/assets/motion/library/pieces/animated-beam/LICENSE +21 -0
  395. package/assets/motion/library/pieces/animated-beam/meta.json +16 -0
  396. package/assets/motion/library/pieces/animated-beam/piece.html +273 -0
  397. package/assets/motion/library/pieces/animated-beam/preview.jpg +0 -0
  398. package/assets/motion/library/pieces/animated-list/LICENSE +21 -0
  399. package/assets/motion/library/pieces/animated-list/meta.json +16 -0
  400. package/assets/motion/library/pieces/animated-list/piece.html +189 -0
  401. package/assets/motion/library/pieces/animated-list/preview.jpg +0 -0
  402. package/assets/motion/library/pieces/before-after-split/meta.json +12 -0
  403. package/assets/motion/library/pieces/before-after-split/piece.html +262 -0
  404. package/assets/motion/library/pieces/before-after-split/preview.jpg +0 -0
  405. package/assets/motion/library/pieces/blueprint-grid/meta.json +12 -0
  406. package/assets/motion/library/pieces/blueprint-grid/piece.html +209 -0
  407. package/assets/motion/library/pieces/blueprint-grid/preview.jpg +0 -0
  408. package/assets/motion/library/pieces/broadcast-frame/meta.json +12 -0
  409. package/assets/motion/library/pieces/broadcast-frame/piece.html +100 -0
  410. package/assets/motion/library/pieces/broadcast-frame/preview.jpg +0 -0
  411. package/assets/motion/library/pieces/browser-window/meta.json +12 -0
  412. package/assets/motion/library/pieces/browser-window/piece.html +331 -0
  413. package/assets/motion/library/pieces/browser-window/preview.jpg +0 -0
  414. package/assets/motion/library/pieces/chapter-card/meta.json +6 -0
  415. package/assets/motion/library/pieces/chapter-card/piece.html +12 -0
  416. package/assets/motion/library/pieces/chapter-card/preview.jpg +0 -0
  417. package/assets/motion/library/pieces/chat-thread/meta.json +12 -0
  418. package/assets/motion/library/pieces/chat-thread/piece.html +272 -0
  419. package/assets/motion/library/pieces/chat-thread/preview.jpg +0 -0
  420. package/assets/motion/library/pieces/clay-drop-3d/meta.json +13 -0
  421. package/assets/motion/library/pieces/clay-drop-3d/piece.html +224 -0
  422. package/assets/motion/library/pieces/clay-drop-3d/preview.jpg +0 -0
  423. package/assets/motion/library/pieces/color-flip-field/meta.json +12 -0
  424. package/assets/motion/library/pieces/color-flip-field/piece.html +81 -0
  425. package/assets/motion/library/pieces/color-flip-field/preview.jpg +0 -0
  426. package/assets/motion/library/pieces/color-wipe/meta.json +6 -0
  427. package/assets/motion/library/pieces/color-wipe/piece.html +10 -0
  428. package/assets/motion/library/pieces/color-wipe/preview.jpg +0 -0
  429. package/assets/motion/library/pieces/command-palette/meta.json +12 -0
  430. package/assets/motion/library/pieces/command-palette/piece.html +339 -0
  431. package/assets/motion/library/pieces/command-palette/preview.jpg +0 -0
  432. package/assets/motion/library/pieces/comparison-bars/meta.json +12 -0
  433. package/assets/motion/library/pieces/comparison-bars/piece.html +191 -0
  434. package/assets/motion/library/pieces/comparison-bars/preview.jpg +0 -0
  435. package/assets/motion/library/pieces/counter-number/meta.json +12 -0
  436. package/assets/motion/library/pieces/counter-number/piece.html +131 -0
  437. package/assets/motion/library/pieces/counter-number/preview.jpg +0 -0
  438. package/assets/motion/library/pieces/cursor-click/meta.json +12 -0
  439. package/assets/motion/library/pieces/cursor-click/piece.html +242 -0
  440. package/assets/motion/library/pieces/cursor-click/preview.jpg +0 -0
  441. package/assets/motion/library/pieces/dock-magnify/LICENSE +21 -0
  442. package/assets/motion/library/pieces/dock-magnify/meta.json +16 -0
  443. package/assets/motion/library/pieces/dock-magnify/piece.html +234 -0
  444. package/assets/motion/library/pieces/dock-magnify/preview.jpg +0 -0
  445. package/assets/motion/library/pieces/donut-fill/meta.json +12 -0
  446. package/assets/motion/library/pieces/donut-fill/piece.html +156 -0
  447. package/assets/motion/library/pieces/donut-fill/preview.jpg +0 -0
  448. package/assets/motion/library/pieces/dot-grid-field/meta.json +12 -0
  449. package/assets/motion/library/pieces/dot-grid-field/piece.html +61 -0
  450. package/assets/motion/library/pieces/dot-grid-field/preview.jpg +0 -0
  451. package/assets/motion/library/pieces/ease-curve/meta.json +12 -0
  452. package/assets/motion/library/pieces/ease-curve/piece.html +103 -0
  453. package/assets/motion/library/pieces/ease-curve/preview.jpg +0 -0
  454. package/assets/motion/library/pieces/end-card/meta.json +6 -0
  455. package/assets/motion/library/pieces/end-card/piece.html +11 -0
  456. package/assets/motion/library/pieces/end-card/preview.jpg +0 -0
  457. package/assets/motion/library/pieces/film-grain/meta.json +12 -0
  458. package/assets/motion/library/pieces/film-grain/piece.html +93 -0
  459. package/assets/motion/library/pieces/film-grain/preview.jpg +0 -0
  460. package/assets/motion/library/pieces/flickering-grid/LICENSE +21 -0
  461. package/assets/motion/library/pieces/flickering-grid/meta.json +16 -0
  462. package/assets/motion/library/pieces/flickering-grid/piece.html +112 -0
  463. package/assets/motion/library/pieces/flickering-grid/preview.jpg +0 -0
  464. package/assets/motion/library/pieces/flow-nodes/meta.json +12 -0
  465. package/assets/motion/library/pieces/flow-nodes/piece.html +230 -0
  466. package/assets/motion/library/pieces/flow-nodes/preview.jpg +0 -0
  467. package/assets/motion/library/pieces/highlight-sweep/meta.json +12 -0
  468. package/assets/motion/library/pieces/highlight-sweep/piece.html +132 -0
  469. package/assets/motion/library/pieces/highlight-sweep/preview.jpg +0 -0
  470. package/assets/motion/library/pieces/iris-circle/meta.json +6 -0
  471. package/assets/motion/library/pieces/iris-circle/piece.html +6 -0
  472. package/assets/motion/library/pieces/iris-circle/preview.jpg +0 -0
  473. package/assets/motion/library/pieces/kinetic-letters/meta.json +12 -0
  474. package/assets/motion/library/pieces/kinetic-letters/piece.html +103 -0
  475. package/assets/motion/library/pieces/kinetic-letters/preview.jpg +0 -0
  476. package/assets/motion/library/pieces/light-leak-soft/meta.json +12 -0
  477. package/assets/motion/library/pieces/light-leak-soft/piece.html +102 -0
  478. package/assets/motion/library/pieces/light-leak-soft/preview.jpg +0 -0
  479. package/assets/motion/library/pieces/line-stack-reveal/meta.json +12 -0
  480. package/assets/motion/library/pieces/line-stack-reveal/piece.html +98 -0
  481. package/assets/motion/library/pieces/line-stack-reveal/preview.jpg +0 -0
  482. package/assets/motion/library/pieces/lower-third/meta.json +6 -0
  483. package/assets/motion/library/pieces/lower-third/piece.html +11 -0
  484. package/assets/motion/library/pieces/lower-third/preview.jpg +0 -0
  485. package/assets/motion/library/pieces/marquee-strip/meta.json +12 -0
  486. package/assets/motion/library/pieces/marquee-strip/piece.html +132 -0
  487. package/assets/motion/library/pieces/marquee-strip/preview.jpg +0 -0
  488. package/assets/motion/library/pieces/mesh-gradient/meta.json +12 -0
  489. package/assets/motion/library/pieces/mesh-gradient/piece.html +131 -0
  490. package/assets/motion/library/pieces/mesh-gradient/preview.jpg +0 -0
  491. package/assets/motion/library/pieces/orbiting-circles/LICENSE +21 -0
  492. package/assets/motion/library/pieces/orbiting-circles/meta.json +16 -0
  493. package/assets/motion/library/pieces/orbiting-circles/piece.html +185 -0
  494. package/assets/motion/library/pieces/orbiting-circles/preview.jpg +0 -0
  495. package/assets/motion/library/pieces/phone-frame/meta.json +12 -0
  496. package/assets/motion/library/pieces/phone-frame/piece.html +252 -0
  497. package/assets/motion/library/pieces/phone-frame/preview.jpg +0 -0
  498. package/assets/motion/library/pieces/pricing-toggle/meta.json +6 -0
  499. package/assets/motion/library/pieces/pricing-toggle/piece.html +18 -0
  500. package/assets/motion/library/pieces/pricing-toggle/preview.jpg +0 -0
  501. package/assets/motion/library/pieces/retro-grid/LICENSE +21 -0
  502. package/assets/motion/library/pieces/retro-grid/meta.json +16 -0
  503. package/assets/motion/library/pieces/retro-grid/piece.html +139 -0
  504. package/assets/motion/library/pieces/retro-grid/preview.jpg +0 -0
  505. package/assets/motion/library/pieces/scale-through-word/meta.json +12 -0
  506. package/assets/motion/library/pieces/scale-through-word/piece.html +139 -0
  507. package/assets/motion/library/pieces/scale-through-word/preview.jpg +0 -0
  508. package/assets/motion/library/pieces/serif-quote/meta.json +12 -0
  509. package/assets/motion/library/pieces/serif-quote/piece.html +145 -0
  510. package/assets/motion/library/pieces/serif-quote/preview.jpg +0 -0
  511. package/assets/motion/library/pieces/slam-word/meta.json +12 -0
  512. package/assets/motion/library/pieces/slam-word/piece.html +72 -0
  513. package/assets/motion/library/pieces/slam-word/preview.jpg +0 -0
  514. package/assets/motion/library/pieces/soft-light-field/meta.json +12 -0
  515. package/assets/motion/library/pieces/soft-light-field/piece.html +83 -0
  516. package/assets/motion/library/pieces/soft-light-field/preview.jpg +0 -0
  517. package/assets/motion/library/pieces/sparkline-draw/meta.json +12 -0
  518. package/assets/motion/library/pieces/sparkline-draw/piece.html +204 -0
  519. package/assets/motion/library/pieces/sparkline-draw/preview.jpg +0 -0
  520. package/assets/motion/library/pieces/stack-layers/meta.json +12 -0
  521. package/assets/motion/library/pieces/stack-layers/piece.html +239 -0
  522. package/assets/motion/library/pieces/stack-layers/preview.jpg +0 -0
  523. package/assets/motion/library/pieces/stat-grid/meta.json +12 -0
  524. package/assets/motion/library/pieces/stat-grid/piece.html +200 -0
  525. package/assets/motion/library/pieces/stat-grid/preview.jpg +0 -0
  526. package/assets/motion/library/pieces/studio-backdrop/meta.json +12 -0
  527. package/assets/motion/library/pieces/studio-backdrop/piece.html +83 -0
  528. package/assets/motion/library/pieces/studio-backdrop/preview.jpg +0 -0
  529. package/assets/motion/library/pieces/tile-flip/meta.json +6 -0
  530. package/assets/motion/library/pieces/tile-flip/piece.html +6 -0
  531. package/assets/motion/library/pieces/tile-flip/preview.jpg +0 -0
  532. package/assets/motion/library/pieces/timeline-track/meta.json +12 -0
  533. package/assets/motion/library/pieces/timeline-track/piece.html +227 -0
  534. package/assets/motion/library/pieces/timeline-track/preview.jpg +0 -0
  535. package/assets/motion/library/pieces/toast-stack/meta.json +12 -0
  536. package/assets/motion/library/pieces/toast-stack/piece.html +185 -0
  537. package/assets/motion/library/pieces/toast-stack/preview.jpg +0 -0
  538. package/assets/motion/library/pieces/typewriter-caption/meta.json +12 -0
  539. package/assets/motion/library/pieces/typewriter-caption/piece.html +112 -0
  540. package/assets/motion/library/pieces/typewriter-caption/preview.jpg +0 -0
  541. package/assets/motion/library/pieces/ui-stack-3d/meta.json +12 -0
  542. package/assets/motion/library/pieces/ui-stack-3d/piece.html +236 -0
  543. package/assets/motion/library/pieces/ui-stack-3d/preview.jpg +0 -0
  544. package/assets/motion/library/pieces/vignette/meta.json +12 -0
  545. package/assets/motion/library/pieces/vignette/piece.html +85 -0
  546. package/assets/motion/library/pieces/vignette/preview.jpg +0 -0
  547. package/assets/motion/library/pieces/word-swap/meta.json +12 -0
  548. package/assets/motion/library/pieces/word-swap/piece.html +122 -0
  549. package/assets/motion/library/pieces/word-swap/preview.jpg +0 -0
  550. package/assets/motion/library/sheets/3d.jpg +0 -0
  551. package/assets/motion/library/sheets/background.jpg +0 -0
  552. package/assets/motion/library/sheets/data.jpg +0 -0
  553. package/assets/motion/library/sheets/diagram.jpg +0 -0
  554. package/assets/motion/library/sheets/frame.jpg +0 -0
  555. package/assets/motion/library/sheets/looks.jpg +0 -0
  556. package/assets/motion/library/sheets/texture.jpg +0 -0
  557. package/assets/motion/library/sheets/transition.jpg +0 -0
  558. package/assets/motion/library/sheets/type.jpg +0 -0
  559. package/assets/motion/library/sheets/ui.jpg +0 -0
  560. package/assets/motion/plugin.json +5 -0
  561. package/assets/motion/references/README.md +20 -0
  562. package/assets/motion/references/index.json +25 -0
  563. package/assets/motion/references/motion-language.md +128 -0
  564. package/assets/motion/references/runtime/data-attributes.md +78 -0
  565. package/assets/motion/references/runtime/determinism-rules.md +53 -0
  566. package/assets/motion/references/runtime/doctor-browser.md +57 -0
  567. package/assets/motion/references/runtime/gsap-easing-and-stagger.md +199 -0
  568. package/assets/motion/references/runtime/gsap-timeline-and-labels.md +96 -0
  569. package/assets/motion/references/runtime/gsap-transforms-and-perf.md +129 -0
  570. package/assets/motion/references/runtime/gsap.md +105 -0
  571. package/assets/motion/references/runtime/inputs-and-assets.md +62 -0
  572. package/assets/motion/references/runtime/lint-validate-inspect.md +131 -0
  573. package/assets/motion/references/runtime/minimal-composition.md +75 -0
  574. package/assets/motion/references/runtime/preview-render.md +156 -0
  575. package/assets/motion/references/runtime/sub-compositions.md +176 -0
  576. package/assets/motion/references/runtime/tracks-and-clips.md +87 -0
  577. package/assets/motion/references/runtime/variables-and-media.md +107 -0
  578. package/assets/motion/references/signal-study.html +39 -0
  579. package/assets/motion/references/signal-temporal.jpg +0 -0
  580. package/assets/motion/references/type-temporal.jpg +0 -0
  581. package/assets/motion/skills/brand-kit/SKILL.md +71 -0
  582. package/assets/motion/skills/motion/SKILL.md +178 -0
  583. package/assets/motion/skills/source-ingest/SKILL.md +45 -0
  584. package/assets/motion/skills/video-qa/SKILL.md +89 -0
  585. package/assets/motion/vendor/three/LICENSE +21 -0
  586. package/assets/motion/vendor/three/addons/environments/RoomEnvironment.js +182 -0
  587. package/assets/motion/vendor/three/addons/geometries/RoundedBoxGeometry.js +216 -0
  588. package/assets/motion/vendor/three/addons/geometries/TextGeometry.js +84 -0
  589. package/assets/motion/vendor/three/addons/lights/RectAreaLightTexturesLib.js +127 -0
  590. package/assets/motion/vendor/three/addons/lights/RectAreaLightUniformsLib.js +40 -0
  591. package/assets/motion/vendor/three/addons/loaders/FontLoader.js +260 -0
  592. package/assets/motion/vendor/three/addons/loaders/GLTFLoader.js +4892 -0
  593. package/assets/motion/vendor/three/addons/loaders/HDRLoader.js +486 -0
  594. package/assets/motion/vendor/three/addons/loaders/SVGLoader.js +3267 -0
  595. package/assets/motion/vendor/three/addons/math/SimplexNoise.js +470 -0
  596. package/assets/motion/vendor/three/addons/objects/Reflector.js +338 -0
  597. package/assets/motion/vendor/three/addons/postprocessing/BokehPass.js +218 -0
  598. package/assets/motion/vendor/three/addons/postprocessing/EffectComposer.js +363 -0
  599. package/assets/motion/vendor/three/addons/postprocessing/FilmPass.js +113 -0
  600. package/assets/motion/vendor/three/addons/postprocessing/MaskPass.js +195 -0
  601. package/assets/motion/vendor/three/addons/postprocessing/OutputPass.js +139 -0
  602. package/assets/motion/vendor/three/addons/postprocessing/Pass.js +191 -0
  603. package/assets/motion/vendor/three/addons/postprocessing/RenderPass.js +183 -0
  604. package/assets/motion/vendor/three/addons/postprocessing/ShaderPass.js +135 -0
  605. package/assets/motion/vendor/three/addons/postprocessing/UnrealBloomPass.js +494 -0
  606. package/assets/motion/vendor/three/addons/renderers/CSS3DRenderer.js +454 -0
  607. package/assets/motion/vendor/three/addons/shaders/BokehShader.js +151 -0
  608. package/assets/motion/vendor/three/addons/shaders/CopyShader.js +52 -0
  609. package/assets/motion/vendor/three/addons/shaders/FilmShader.js +72 -0
  610. package/assets/motion/vendor/three/addons/shaders/LuminosityHighPassShader.js +68 -0
  611. package/assets/motion/vendor/three/addons/shaders/OutputShader.js +103 -0
  612. package/assets/motion/vendor/three/addons/utils/BufferGeometryUtils.js +1435 -0
  613. package/assets/motion/vendor/three/build/three.core.min.js +6 -0
  614. package/assets/motion/vendor/three/build/three.module.min.js +6 -0
  615. package/assets/motion/vendor/three/three.json +54 -0
  616. package/dist/app-sidecar-sessions.js +5 -0
  617. package/dist/app-sidecar-sessions.js.map +1 -1
  618. package/dist/app-sidecar.js +52 -16
  619. package/dist/app-sidecar.js.map +1 -1
  620. package/dist/cli.js +5 -4
  621. package/dist/cli.js.map +1 -1
  622. package/dist/core/agent-session.d.ts +39 -3
  623. package/dist/core/agent-session.js +148 -12
  624. package/dist/core/agent-session.js.map +1 -1
  625. package/dist/core/agents.js +12 -3
  626. package/dist/core/agents.js.map +1 -1
  627. package/dist/core/auth-providers.js +6 -6
  628. package/dist/core/auth-providers.js.map +1 -1
  629. package/dist/core/autopilot-verdict.d.ts +5 -1
  630. package/dist/core/autopilot-verdict.js +30 -13
  631. package/dist/core/autopilot-verdict.js.map +1 -1
  632. package/dist/core/completion-review.d.ts +24 -0
  633. package/dist/core/completion-review.js +2 -0
  634. package/dist/core/completion-review.js.map +1 -0
  635. package/dist/core/context-limits.d.ts +6 -0
  636. package/dist/core/context-limits.js +8 -0
  637. package/dist/core/context-limits.js.map +1 -1
  638. package/dist/core/fast-apply-benchmark.d.ts +1 -1
  639. package/dist/core/fast-apply-benchmark.js +2 -2
  640. package/dist/core/fast-apply-benchmark.js.map +1 -1
  641. package/dist/core/ideal-review-subagent.d.ts +16 -2
  642. package/dist/core/ideal-review-subagent.js +19 -2
  643. package/dist/core/ideal-review-subagent.js.map +1 -1
  644. package/dist/core/lsp/pool.d.ts +2 -0
  645. package/dist/core/lsp/pool.js +4 -0
  646. package/dist/core/lsp/pool.js.map +1 -1
  647. package/dist/core/network-guard.d.ts +2 -0
  648. package/dist/core/network-guard.js +37 -0
  649. package/dist/core/network-guard.js.map +1 -1
  650. package/dist/core/nolan-context.d.ts +7 -5
  651. package/dist/core/nolan-context.js +106 -16
  652. package/dist/core/nolan-context.js.map +1 -1
  653. package/dist/core/nolan-prompt.js +24 -21
  654. package/dist/core/nolan-prompt.js.map +1 -1
  655. package/dist/core/project-discovery.js +80 -26
  656. package/dist/core/project-discovery.js.map +1 -1
  657. package/dist/core/semantic-search-benchmark.d.ts +1 -1
  658. package/dist/core/semantic-search-benchmark.js +2 -2
  659. package/dist/core/semantic-search-benchmark.js.map +1 -1
  660. package/dist/core/session-export.d.ts +2 -2
  661. package/dist/core/session-export.js +6 -2
  662. package/dist/core/session-export.js.map +1 -1
  663. package/dist/core/skills.d.ts +15 -0
  664. package/dist/core/skills.js +48 -4
  665. package/dist/core/skills.js.map +1 -1
  666. package/dist/core/subagent-manager.d.ts +3 -1
  667. package/dist/core/subagent-manager.js +3 -1
  668. package/dist/core/subagent-manager.js.map +1 -1
  669. package/dist/core/subagent-policy.js +1 -1
  670. package/dist/core/subagent-policy.js.map +1 -1
  671. package/dist/core/verification-evidence.js +7 -2
  672. package/dist/core/verification-evidence.js.map +1 -1
  673. package/dist/core/worktree-setup.d.ts +23 -0
  674. package/dist/core/worktree-setup.js +128 -9
  675. package/dist/core/worktree-setup.js.map +1 -1
  676. package/dist/core/worktree.d.ts +20 -2
  677. package/dist/core/worktree.js +74 -31
  678. package/dist/core/worktree.js.map +1 -1
  679. package/dist/modes/json-mode.js +11 -2
  680. package/dist/modes/json-mode.js.map +1 -1
  681. package/dist/modes/subagent-worker-mode.d.ts +36 -1
  682. package/dist/modes/subagent-worker-mode.js +68 -38
  683. package/dist/modes/subagent-worker-mode.js.map +1 -1
  684. package/dist/motion-agent/motion-agent.d.ts +35 -0
  685. package/dist/motion-agent/motion-agent.js +117 -0
  686. package/dist/motion-agent/motion-agent.js.map +1 -0
  687. package/dist/motion-agent/motion-check-tool.d.ts +35 -0
  688. package/dist/motion-agent/motion-check-tool.js +514 -0
  689. package/dist/motion-agent/motion-check-tool.js.map +1 -0
  690. package/dist/motion-agent/motion-prompt.d.ts +2 -0
  691. package/dist/motion-agent/motion-prompt.js +44 -0
  692. package/dist/motion-agent/motion-prompt.js.map +1 -0
  693. package/dist/motion-agent/motion-review-coverage.d.ts +12 -0
  694. package/dist/motion-agent/motion-review-coverage.js +33 -0
  695. package/dist/motion-agent/motion-review-coverage.js.map +1 -0
  696. package/dist/motion-agent/motion-review-gate.d.ts +48 -0
  697. package/dist/motion-agent/motion-review-gate.js +88 -0
  698. package/dist/motion-agent/motion-review-gate.js.map +1 -0
  699. package/dist/motion-agent/motion-review-session.d.ts +65 -0
  700. package/dist/motion-agent/motion-review-session.js +418 -0
  701. package/dist/motion-agent/motion-review-session.js.map +1 -0
  702. package/dist/motion-agent/motion-review.d.ts +76 -0
  703. package/dist/motion-agent/motion-review.js +225 -0
  704. package/dist/motion-agent/motion-review.js.map +1 -0
  705. package/dist/motion-agent/motion-studio-context.d.ts +44 -0
  706. package/dist/motion-agent/motion-studio-context.js +65 -0
  707. package/dist/motion-agent/motion-studio-context.js.map +1 -0
  708. package/dist/system-prompt.d.ts +5 -1
  709. package/dist/system-prompt.js +17 -4
  710. package/dist/system-prompt.js.map +1 -1
  711. package/dist/tools/bash.js +66 -2
  712. package/dist/tools/bash.js.map +1 -1
  713. package/dist/tools/edit.js +1 -1
  714. package/dist/tools/edit.js.map +1 -1
  715. package/dist/tools/goals.d.ts +1 -1
  716. package/dist/tools/index.d.ts +6 -0
  717. package/dist/tools/index.js +2 -1
  718. package/dist/tools/index.js.map +1 -1
  719. package/dist/tools/read-tracker.d.ts +30 -2
  720. package/dist/tools/read-tracker.js +92 -5
  721. package/dist/tools/read-tracker.js.map +1 -1
  722. package/dist/tools/read.js +36 -5
  723. package/dist/tools/read.js.map +1 -1
  724. package/dist/tools/subagent-shared.d.ts +19 -0
  725. package/dist/tools/subagent-shared.js +30 -0
  726. package/dist/tools/subagent-shared.js.map +1 -1
  727. package/dist/tools/web-fetch.js +38 -32
  728. package/dist/tools/web-fetch.js.map +1 -1
  729. package/dist/tools/web-search.js +2 -2
  730. package/dist/tools/web-search.js.map +1 -1
  731. package/dist/tools/write.js +4 -3
  732. package/dist/tools/write.js.map +1 -1
  733. package/dist/ui/components/Footer.js +2 -3
  734. package/dist/ui/components/Footer.js.map +1 -1
  735. package/dist/ui/render.d.ts +2 -0
  736. package/dist/ui/render.js +3 -0
  737. package/dist/ui/render.js.map +1 -1
  738. package/dist/utils/text.d.ts +12 -0
  739. package/dist/utils/text.js +11 -0
  740. package/dist/utils/text.js.map +1 -1
  741. package/package.json +8 -5
@@ -0,0 +1,239 @@
1
+ <!doctype html>
2
+ <!--
3
+ stack-layers: an architecture stack. 3–4 isometric slabs drop in and stack
4
+ bottom-up (CSS 3D, orthographic), each with a flat, legible label and a
5
+ leader line on the right. Then an accent highlight climbs the stack one
6
+ layer at a time, lighting the slab and its label.
7
+ Params (top of script):
8
+ LAYERS [{ name, sub }] — 3 or 4, listed BOTTOM to TOP (edit here)
9
+ GAP vertical spacing between slabs (px of depth)
10
+ SIZE slab edge length (px); TILT view angle (deg)
11
+ CSS: --sl-x / --sl-y (centre of the stack), --sl-label-x (label column).
12
+ -->
13
+ <html lang="en">
14
+ <head>
15
+ <meta charset="UTF-8" />
16
+ <script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
17
+ </head>
18
+ <body>
19
+ <div
20
+ id="stack-layers-root"
21
+ data-composition-id="stack-layers"
22
+ data-start="0"
23
+ data-duration="6"
24
+ data-width="1920"
25
+ data-height="1080"
26
+ >
27
+ <style>
28
+ [data-composition-id="stack-layers"] {
29
+ --sl-x: 700px;
30
+ --sl-y: 560px;
31
+ --sl-label-x: 1140px;
32
+ position: absolute;
33
+ inset: 0;
34
+ color: var(--ink, #111);
35
+ font-family: var(--text, sans-serif);
36
+ }
37
+ [data-composition-id="stack-layers"] .sl-stage {
38
+ position: absolute;
39
+ left: var(--sl-x);
40
+ top: var(--sl-y);
41
+ width: 0;
42
+ height: 0;
43
+ transform-style: preserve-3d;
44
+ }
45
+ [data-composition-id="stack-layers"] .sl-slab {
46
+ position: absolute;
47
+ left: 0;
48
+ top: 0;
49
+ transform-style: preserve-3d;
50
+ }
51
+ [data-composition-id="stack-layers"] .sl-face {
52
+ position: absolute;
53
+ box-sizing: border-box;
54
+ border-radius: calc(var(--radius, 0px) * 1.2);
55
+ }
56
+ [data-composition-id="stack-layers"] .sl-side {
57
+ background: var(--ink, #111);
58
+ }
59
+ [data-composition-id="stack-layers"] .sl-top {
60
+ background: color-mix(in srgb, var(--field, #fff) 88%, var(--ink, #111));
61
+ border: 3px solid var(--ink, #111);
62
+ }
63
+ [data-composition-id="stack-layers"] .sl-glow {
64
+ background: var(--accent, #111);
65
+ border: 3px solid var(--accent, #111);
66
+ opacity: 0;
67
+ }
68
+ [data-composition-id="stack-layers"] .sl-grid {
69
+ position: absolute;
70
+ inset: 28px;
71
+ border-radius: inherit;
72
+ background-image:
73
+ linear-gradient(var(--line, rgba(0, 0, 0, 0.2)) 2px, transparent 2px),
74
+ linear-gradient(90deg, var(--line, rgba(0, 0, 0, 0.2)) 2px, transparent 2px);
75
+ background-size: 58px 58px;
76
+ opacity: 0.9;
77
+ }
78
+ [data-composition-id="stack-layers"] .sl-label {
79
+ position: absolute;
80
+ left: var(--sl-label-x);
81
+ transform: translateY(-50%);
82
+ display: grid;
83
+ grid-template-columns: 64px auto;
84
+ column-gap: 18px;
85
+ align-items: baseline;
86
+ white-space: nowrap;
87
+ }
88
+ [data-composition-id="stack-layers"] .sl-idx {
89
+ font-family: var(--mono, monospace);
90
+ font-size: 24px;
91
+ letter-spacing: 0.06em;
92
+ font-variant-numeric: tabular-nums;
93
+ color: var(--muted, rgba(0, 0, 0, 0.6));
94
+ }
95
+ [data-composition-id="stack-layers"] .sl-name {
96
+ font-family: var(--display, sans-serif);
97
+ font-weight: var(--display-weight, 800);
98
+ font-stretch: var(--display-stretch, 100%);
99
+ letter-spacing: var(--display-tracking, -0.02em);
100
+ font-size: 50px;
101
+ line-height: 1;
102
+ }
103
+ [data-composition-id="stack-layers"] .sl-sub {
104
+ grid-column: 2;
105
+ margin-top: 10px;
106
+ font-family: var(--mono, monospace);
107
+ font-size: 22px;
108
+ letter-spacing: 0.08em;
109
+ text-transform: uppercase;
110
+ color: var(--muted, rgba(0, 0, 0, 0.6));
111
+ }
112
+ [data-composition-id="stack-layers"] .sl-leader {
113
+ position: absolute;
114
+ height: 3px;
115
+ margin-top: -1.5px;
116
+ background: var(--ink, #111);
117
+ transform-origin: 0 50%;
118
+ }
119
+ [data-composition-id="stack-layers"] .sl-leader::after {
120
+ content: "";
121
+ position: absolute;
122
+ left: -7px;
123
+ top: -5.5px;
124
+ width: 14px;
125
+ height: 14px;
126
+ border-radius: 50%;
127
+ background: inherit;
128
+ }
129
+ </style>
130
+ <div class="sl-stage" id="sl-stage"></div>
131
+ <div id="sl-labels"></div>
132
+ </div>
133
+ <script>
134
+ (function () {
135
+ // edit: layers, BOTTOM to TOP (3 or 4)
136
+ const LAYERS = [
137
+ { name: "Infrastructure", sub: "GPUs · 12 regions" },
138
+ { name: "Data", sub: "Postgres · vector store" },
139
+ { name: "Services", sub: "auth · billing · search" },
140
+ { name: "Interface", sub: "web · mobile · API" },
141
+ ];
142
+ const SIZE = 440;
143
+ const GAP = 130;
144
+ const TILT = 58;
145
+ const THICK = 22;
146
+ const DROP = 0.42; // seconds between slabs landing
147
+
148
+ const root = document.querySelector('[data-composition-id="stack-layers"]');
149
+ const cs = getComputedStyle(root);
150
+ const CX = parseFloat(cs.getPropertyValue("--sl-x")) || 700;
151
+ const CY = parseFloat(cs.getPropertyValue("--sl-y")) || 560;
152
+ const LX = parseFloat(cs.getPropertyValue("--sl-label-x")) || 1140;
153
+ const stage = document.getElementById("sl-stage");
154
+ const labelsEl = document.getElementById("sl-labels");
155
+ stage.style.transform = `rotateX(${TILT}deg) rotateZ(-45deg)`;
156
+
157
+ const n = LAYERS.length;
158
+ const sinT = Math.sin((TILT * Math.PI) / 180);
159
+ const half = SIZE / Math.SQRT2; // diamond half-width on screen
160
+ // Centre the stack's screen footprint on CY.
161
+ const z0 = -((n - 1) * GAP) / 2;
162
+
163
+ function face(cls, z) {
164
+ const f = document.createElement("div");
165
+ f.className = "sl-face " + cls;
166
+ f.style.width = SIZE + "px";
167
+ f.style.height = SIZE + "px";
168
+ f.style.left = -SIZE / 2 + "px";
169
+ f.style.top = -SIZE / 2 + "px";
170
+ f.style.transform = `translateZ(${z}px)`;
171
+ return f;
172
+ }
173
+
174
+ const layers = LAYERS.map((d, i) => {
175
+ const slab = document.createElement("div");
176
+ slab.className = "sl-slab";
177
+ // Thickness: a stack of ink copies below the top face.
178
+ for (let k = THICK; k > 0; k -= 2) slab.appendChild(face("sl-side", -k));
179
+ const top = face("sl-top", 0);
180
+ const grid = document.createElement("div");
181
+ grid.className = "sl-grid";
182
+ top.appendChild(grid);
183
+ slab.appendChild(top);
184
+ const glow = face("sl-glow", 0.5);
185
+ slab.appendChild(glow);
186
+ stage.appendChild(slab);
187
+
188
+ const z = z0 + i * GAP;
189
+ const y = CY - z * sinT; // screen y of the slab's right corner
190
+ const leader = document.createElement("div");
191
+ leader.className = "sl-leader";
192
+ leader.style.left = CX + half + 26 + "px";
193
+ leader.style.top = y + "px";
194
+ leader.style.width = LX - (CX + half + 26) - 28 + "px";
195
+ const label = document.createElement("div");
196
+ label.className = "sl-label";
197
+ label.style.top = y + 14 + "px";
198
+ label.innerHTML = '<span class="sl-idx"></span><span class="sl-name"></span><span class="sl-sub"></span>';
199
+ label.querySelector(".sl-idx").textContent = "L" + (i + 1);
200
+ label.querySelector(".sl-name").textContent = d.name;
201
+ label.querySelector(".sl-sub").textContent = d.sub;
202
+ labelsEl.append(leader, label);
203
+ return { slab, glow, leader, label, name: label.querySelector(".sl-name"), idx: label.querySelector(".sl-idx"), z };
204
+ });
205
+
206
+ const hl = { h: -1 };
207
+ function highlight() {
208
+ layers.forEach((l, i) => {
209
+ const k = Math.max(0, 1 - Math.abs(hl.h - i));
210
+ l.glow.style.opacity = k.toFixed(3);
211
+ const pct = Math.round(k * 100);
212
+ l.name.style.color = `color-mix(in srgb, var(--accent, #111) ${pct}%, var(--ink, #111))`;
213
+ l.idx.style.color = `color-mix(in srgb, var(--accent, #111) ${pct}%, var(--muted, #666))`;
214
+ l.leader.style.background = `color-mix(in srgb, var(--accent, #111) ${pct}%, var(--ink, #111))`;
215
+ });
216
+ }
217
+
218
+ const tl = gsap.timeline({ paused: true });
219
+ layers.forEach((l, i) => {
220
+ const at = 0.2 + i * DROP;
221
+ tl.fromTo(l.slab, { z: l.z + 360, opacity: 0 }, { z: l.z, opacity: 1, duration: 0.75, ease: "expo.out" }, at);
222
+ tl.fromTo(l.leader, { scaleX: 0 }, { scaleX: 1, duration: 0.5, ease: "power3.out" }, at + 0.3);
223
+ tl.fromTo(l.label, { opacity: 0, x: -24 }, { opacity: 1, x: 0, duration: 0.5, ease: "power3.out" }, at + 0.4);
224
+ });
225
+ // Highlight climbs the stack: rest on each layer, then step up.
226
+ let t = 0.2 + n * DROP + 0.5;
227
+ tl.fromTo(hl, { h: -1 }, { h: 0, duration: 0.4, ease: "power2.out", onUpdate: highlight }, t);
228
+ for (let i = 1; i < n; i++) {
229
+ t += 0.75;
230
+ tl.to(hl, { h: i, duration: 0.45, ease: "power2.inOut", onUpdate: highlight }, t);
231
+ }
232
+ tl.to({}, { duration: Math.max(0.1, 6 - tl.duration()) });
233
+ highlight();
234
+ window.__timelines = window.__timelines || {};
235
+ window.__timelines["stack-layers"] = tl;
236
+ })();
237
+ </script>
238
+ </body>
239
+ </html>
@@ -0,0 +1,12 @@
1
+ {
2
+ "id": "stat-grid",
3
+ "name": "Stat grid",
4
+ "kind": "data",
5
+ "description": "A row of 3–4 stat cards rising in with a stagger: mono label, a big tabular display number counting up to its value, and a small up/down delta chip with a comparison period. One featured card is filled with the accent. Edit the STATS array for KPIs, launch results or traction slides.",
6
+ "tags": ["stats", "kpi", "numbers", "count-up", "cards", "metrics", "dashboard", "traction", "launch"],
7
+ "fonts": [],
8
+ "duration": 4,
9
+ "previewAt": 2.6,
10
+ "license": "original",
11
+ "previewLook": "soft-light-ad"
12
+ }
@@ -0,0 +1,200 @@
1
+ <!doctype html>
2
+ <!--
3
+ stat-grid: a row of 3–4 stat cards. Cards rise in with a stagger, each big
4
+ tabular number counts up to its value, a mono label sits above and a tiny
5
+ delta chip pops in once the count lands. The FEATURED card is filled with
6
+ the accent. Transparent background.
7
+ Params (top of script):
8
+ STATS [{ label, value, decimals, prefix, suffix, delta, up }] — 3 or 4
9
+ (prefix/suffix render at 0.62em; keep numbers ≤ 5 digits)
10
+ PERIOD short comparison label beside the chips ("vs Q2")
11
+ FEATURED index of the accent card (-1 for none)
12
+ COUNT seconds each count-up takes; STAGGER between cards
13
+ -->
14
+ <html lang="en">
15
+ <head>
16
+ <meta charset="UTF-8" />
17
+ <script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
18
+ </head>
19
+ <body>
20
+ <div
21
+ id="stat-grid-root"
22
+ data-composition-id="stat-grid"
23
+ data-start="0"
24
+ data-duration="4"
25
+ data-width="1920"
26
+ data-height="1080"
27
+ >
28
+ <style>
29
+ [data-composition-id="stat-grid"] {
30
+ position: absolute;
31
+ inset: 0;
32
+ color: var(--ink, #111);
33
+ font-family: var(--text, sans-serif);
34
+ }
35
+ [data-composition-id="stat-grid"] .sg-row {
36
+ position: absolute;
37
+ left: 120px;
38
+ right: 120px;
39
+ top: 50%;
40
+ transform: translateY(-50%);
41
+ display: grid;
42
+ grid-auto-flow: column;
43
+ grid-auto-columns: 1fr;
44
+ gap: 28px;
45
+ }
46
+ [data-composition-id="stat-grid"] .sg-card {
47
+ position: relative;
48
+ height: 360px;
49
+ box-sizing: border-box;
50
+ padding: 40px 36px 36px;
51
+ border-radius: var(--radius, 0px);
52
+ background: color-mix(in srgb, var(--field, #fff) 90%, var(--ink, #111));
53
+ box-shadow: inset 0 0 0 2px var(--line, rgba(0, 0, 0, 0.2));
54
+ display: flex;
55
+ flex-direction: column;
56
+ justify-content: space-between;
57
+ overflow: hidden;
58
+ }
59
+ [data-composition-id="stat-grid"] .sg-card.is-featured {
60
+ background: var(--accent, #111);
61
+ box-shadow: none;
62
+ color: var(--field, #fff);
63
+ }
64
+ [data-composition-id="stat-grid"] .sg-label {
65
+ font-family: var(--mono, monospace);
66
+ font-size: 22px;
67
+ letter-spacing: 0.1em;
68
+ text-transform: uppercase;
69
+ line-height: 1.35;
70
+ color: var(--muted, rgba(0, 0, 0, 0.6));
71
+ }
72
+ [data-composition-id="stat-grid"] .is-featured .sg-label {
73
+ color: inherit;
74
+ opacity: 0.75;
75
+ }
76
+ [data-composition-id="stat-grid"] .sg-num {
77
+ font-family: var(--display, sans-serif);
78
+ font-weight: var(--display-weight, 800);
79
+ font-stretch: var(--display-stretch, 100%);
80
+ letter-spacing: var(--display-tracking, -0.02em);
81
+ font-size: 96px;
82
+ line-height: 0.9;
83
+ font-variant-numeric: tabular-nums;
84
+ white-space: nowrap;
85
+ }
86
+ [data-composition-id="stat-grid"] .sg-num .sg-unit {
87
+ font-size: 0.62em;
88
+ margin: 0 0.04em;
89
+ }
90
+ [data-composition-id="stat-grid"] .sg-foot {
91
+ display: flex;
92
+ align-items: center;
93
+ gap: 14px;
94
+ height: 40px;
95
+ }
96
+ [data-composition-id="stat-grid"] .sg-chip {
97
+ display: inline-flex;
98
+ align-items: center;
99
+ gap: 8px;
100
+ padding: 7px 14px 6px;
101
+ border-radius: 999px;
102
+ white-space: nowrap;
103
+ flex: none;
104
+ font-family: var(--mono, monospace);
105
+ font-size: 22px;
106
+ font-variant-numeric: tabular-nums;
107
+ background: color-mix(in srgb, var(--accent, #111) 16%, transparent);
108
+ color: var(--accent, #111);
109
+ }
110
+ [data-composition-id="stat-grid"] .sg-chip.is-down {
111
+ background: color-mix(in srgb, var(--ink, #111) 10%, transparent);
112
+ color: var(--muted, rgba(0, 0, 0, 0.6));
113
+ }
114
+ [data-composition-id="stat-grid"] .is-featured .sg-chip {
115
+ background: color-mix(in srgb, var(--field, #fff) 22%, transparent);
116
+ color: var(--field, #fff);
117
+ }
118
+ [data-composition-id="stat-grid"] .sg-chip svg {
119
+ width: 14px;
120
+ height: 14px;
121
+ fill: currentColor;
122
+ }
123
+ [data-composition-id="stat-grid"] .sg-period {
124
+ font-family: var(--mono, monospace);
125
+ font-size: 22px;
126
+ letter-spacing: 0.06em;
127
+ white-space: nowrap;
128
+ text-transform: uppercase;
129
+ color: var(--muted, rgba(0, 0, 0, 0.6));
130
+ }
131
+ [data-composition-id="stat-grid"] .is-featured .sg-period {
132
+ color: inherit;
133
+ opacity: 0.7;
134
+ }
135
+ </style>
136
+ <div class="sg-row" id="sg-row"></div>
137
+ </div>
138
+ <script>
139
+ (function () {
140
+ // edit: stats (3 or 4). delta is text; up=false renders a muted down chip.
141
+ const STATS = [
142
+ { label: "Active users", value: 48.2, decimals: 1, suffix: "K", delta: "12.4%", up: true },
143
+ { label: "Revenue", value: 1.84, decimals: 2, prefix: "$", suffix: "M", delta: "31%", up: true },
144
+ { label: "Uptime", value: 99.98, decimals: 2, suffix: "%", delta: "0.02", up: true },
145
+ { label: "Churn", value: 1.9, decimals: 1, suffix: "%", delta: "0.6", up: false },
146
+ ];
147
+ const FEATURED = 1;
148
+ const PERIOD = "vs Q2"; // edit: comparison period shown beside chips (keep it short)
149
+ const COUNT = 1.4;
150
+ const STAGGER = 0.14;
151
+
152
+ const row = document.getElementById("sg-row");
153
+ const UP = '<svg viewBox="0 0 14 14"><path d="M7 2 13 11H1z"/></svg>';
154
+ const DOWN = '<svg viewBox="0 0 14 14"><path d="M7 12 1 3h12z"/></svg>';
155
+ const cards = STATS.map((s, i) => {
156
+ const card = document.createElement("div");
157
+ card.className = "sg-card" + (i === FEATURED ? " is-featured" : "");
158
+ card.innerHTML =
159
+ '<div class="sg-label"></div><div class="sg-num"></div>' +
160
+ `<div class="sg-foot"><span class="sg-chip${s.up ? "" : " is-down"}">${s.up ? UP : DOWN}<span></span></span><span class="sg-period"></span></div>`;
161
+ card.querySelector(".sg-label").textContent = s.label;
162
+ card.querySelector(".sg-chip span").textContent = s.delta;
163
+ card.querySelector(".sg-period").textContent = PERIOD;
164
+ row.appendChild(card);
165
+ return {
166
+ card,
167
+ num: card.querySelector(".sg-num"),
168
+ chip: card.querySelector(".sg-chip"),
169
+ period: card.querySelector(".sg-period"),
170
+ s,
171
+ v: { x: 0 },
172
+ };
173
+ });
174
+
175
+ const fmt = (s, x) => {
176
+ const n = x.toLocaleString("en-US", {
177
+ minimumFractionDigits: s.decimals || 0,
178
+ maximumFractionDigits: s.decimals || 0,
179
+ });
180
+ const unit = (u) => (u ? `<span class="sg-unit">${u}</span>` : "");
181
+ return unit(s.prefix) + n + unit(s.suffix);
182
+ };
183
+
184
+ const tl = gsap.timeline({ paused: true });
185
+ cards.forEach((c, i) => {
186
+ const at = 0.2 + i * STAGGER;
187
+ const paint = () => (c.num.innerHTML = fmt(c.s, c.v.x));
188
+ tl.fromTo(c.card, { opacity: 0, y: 60 }, { opacity: 1, y: 0, duration: 0.7, ease: "expo.out" }, at);
189
+ tl.fromTo(c.v, { x: 0 }, { x: c.s.value, duration: COUNT, ease: "power3.out", onUpdate: paint }, at + 0.1);
190
+ tl.fromTo(c.chip, { opacity: 0, scale: 0.6 }, { opacity: 1, scale: 1, duration: 0.4, ease: "back.out(2)" }, at + COUNT * 0.75);
191
+ tl.fromTo(c.period, { opacity: 0 }, { opacity: 1, duration: 0.4, ease: "none" }, at + COUNT * 0.8);
192
+ paint();
193
+ });
194
+ tl.to({}, { duration: Math.max(0.1, 4 - tl.duration()) });
195
+ window.__timelines = window.__timelines || {};
196
+ window.__timelines["stat-grid"] = tl;
197
+ })();
198
+ </script>
199
+ </body>
200
+ </html>
@@ -0,0 +1,12 @@
1
+ {
2
+ "id": "studio-backdrop",
3
+ "name": "Studio backdrop",
4
+ "kind": "background",
5
+ "description": "Seamless photo-studio cyclorama in the field color: back wall, a lit cove where wall curves into floor, a soft key-light pool that drifts slowly and a darker floor zone to stand a product or card on. Works on light and dark fields.",
6
+ "tags": ["studio", "cyclorama", "product", "soft", "light", "premium", "ad"],
7
+ "fonts": [],
8
+ "duration": 6,
9
+ "previewAt": 3,
10
+ "license": "original",
11
+ "previewLook": "soft-light-ad"
12
+ }
@@ -0,0 +1,83 @@
1
+ <!doctype html>
2
+ <!--
3
+ studio-backdrop: a seamless photo-studio cyclorama in the look's field
4
+ color. Back wall, a soft cove where wall curves into floor, a key-light
5
+ pool on the wall and a darker floor zone where a product would sit. The
6
+ key light drifts very slowly. Works on light and dark fields (light and
7
+ shade are neutral white/black overlays on --field).
8
+ Params (CSS): --sb-horizon (cove height, % from top), --sb-key-x /
9
+ --sb-key-y (key light center), --sb-light (key strength 0–1),
10
+ --sb-shade (shadow strength 0–1). DRIFT (px the key moves over the piece).
11
+ -->
12
+ <html lang="en">
13
+ <head>
14
+ <meta charset="UTF-8" />
15
+ <script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
16
+ </head>
17
+ <body>
18
+ <div
19
+ id="studio-backdrop-root"
20
+ data-composition-id="studio-backdrop"
21
+ data-start="0"
22
+ data-duration="6"
23
+ data-width="1920"
24
+ data-height="1080"
25
+ >
26
+ <style>
27
+ [data-composition-id="studio-backdrop"] {
28
+ --sb-horizon: 64%;
29
+ --sb-key-x: 50%;
30
+ --sb-key-y: 34%;
31
+ --sb-light: 0.55;
32
+ --sb-shade: 0.16;
33
+ position: absolute;
34
+ inset: 0;
35
+ overflow: hidden;
36
+ background: var(--field, #eef1f7);
37
+ }
38
+ [data-composition-id="studio-backdrop"] .sb-l {
39
+ position: absolute;
40
+ inset: 0;
41
+ }
42
+ /* Wall darkens gently toward the top; the cove catches a band of light;
43
+ the floor falls off toward the camera. */
44
+ [data-composition-id="studio-backdrop"] .sb-cyc {
45
+ background: linear-gradient(
46
+ 180deg,
47
+ rgba(0, 0, 0, calc(var(--sb-shade) * 0.8)) 0%,
48
+ rgba(0, 0, 0, calc(var(--sb-shade) * 0.2)) 40%,
49
+ rgba(255, 255, 255, calc(var(--sb-light) * 0.14)) calc(var(--sb-horizon) - 8%),
50
+ rgba(255, 255, 255, calc(var(--sb-light) * 0.3)) var(--sb-horizon),
51
+ rgba(255, 255, 255, calc(var(--sb-light) * 0.12)) calc(var(--sb-horizon) + 12%),
52
+ rgba(0, 0, 0, calc(var(--sb-shade) * 0.5)) 100%
53
+ );
54
+ }
55
+ [data-composition-id="studio-backdrop"] .sb-key {
56
+ inset: -10%;
57
+ background:
58
+ radial-gradient(34% 40% at var(--sb-key-x) var(--sb-key-y), rgba(255, 255, 255, calc(var(--sb-light) * 0.55)), transparent 70%),
59
+ radial-gradient(70% 60% at var(--sb-key-x) calc(var(--sb-key-y) + 8%), rgba(255, 255, 255, calc(var(--sb-light) * 0.22)), transparent 72%);
60
+ }
61
+ /* Contact shadow zone on the floor, and the room's corners falling off. */
62
+ [data-composition-id="studio-backdrop"] .sb-floor {
63
+ background:
64
+ radial-gradient(26% 7% at 50% 80%, rgba(0, 0, 0, calc(var(--sb-shade) * 0.7)), transparent 100%),
65
+ radial-gradient(60% 18% at 50% 84%, rgba(0, 0, 0, calc(var(--sb-shade) * 0.35)), transparent 100%),
66
+ radial-gradient(120% 100% at 50% 45%, transparent 55%, rgba(0, 0, 0, calc(var(--sb-shade) * 1.2)) 100%);
67
+ }
68
+ </style>
69
+ <div class="sb-l sb-cyc"></div>
70
+ <div class="sb-l sb-key" id="sb-key"></div>
71
+ <div class="sb-l sb-floor"></div>
72
+ </div>
73
+ <script>
74
+ (function () {
75
+ const DRIFT = 60;
76
+ const tl = gsap.timeline({ paused: true });
77
+ tl.fromTo("#sb-key", { x: -DRIFT / 2, y: 6 }, { x: DRIFT / 2, y: -6, duration: 6, ease: "sine.inOut" }, 0);
78
+ window.__timelines = window.__timelines || {};
79
+ window.__timelines["studio-backdrop"] = tl;
80
+ })();
81
+ </script>
82
+ </body>
83
+ </html>
@@ -0,0 +1,6 @@
1
+ {
2
+ "id": "tile-flip", "name": "Tile flip", "kind": "transition",
3
+ "description": "A diagonal wave of perspective tiles closes over a cut and folds away in the same order.",
4
+ "tags": ["tiles", "perspective", "cascade"], "fonts": [], "duration": 3,
5
+ "previewAt": 0.4, "license": "original", "previewLook": "duotone-broadcast"
6
+ }
@@ -0,0 +1,6 @@
1
+ <!doctype html>
2
+ <!-- Tile flip: finite diagonal cascade. Edit COLS, ROWS and STEP; cut the underlying scene at 1.05s. -->
3
+ <html lang="en"><head><meta charset="UTF-8"><script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script></head><body>
4
+ <div id="tile-flip-root" data-composition-id="tile-flip" data-start="0" data-duration="3" data-width="1920" data-height="1080">
5
+ <style>[data-composition-id="tile-flip"]{position:absolute;inset:0;overflow:hidden}[data-composition-id="tile-flip"] .tiles{position:absolute;inset:0;display:grid;perspective:1800px}[data-composition-id="tile-flip"] .tile{background:var(--ink);color:var(--field);backface-visibility:hidden;outline:1px solid var(--ink)}</style><div class="tiles"></div></div>
6
+ <script>(()=>{const COLS=8,ROWS=4,STEP=.045;const root=document.querySelector('[data-composition-id="tile-flip"]').querySelector('.tiles');root.style.gridTemplateColumns=`repeat(${COLS},1fr)`;root.style.gridTemplateRows=`repeat(${ROWS},1fr)`;const tl=gsap.timeline({paused:true});for(let r=0;r<ROWS;r++){for(let c=0;c<COLS;c++){const tile=document.createElement('div');tile.className='tile';root.appendChild(tile);gsap.set(tile,{rotationY:90});const delay=(r+c)*STEP;tl.to(tile,{rotationY:0,duration:.55,ease:'power2.out'},delay).to(tile,{rotationY:-90,duration:.55,ease:'power2.in'},1.3+delay);}}tl.to({},{duration:.7},2.3);window.__timelines=window.__timelines||{};window.__timelines["tile-flip"]=tl;})();</script></body></html>
@@ -0,0 +1,12 @@
1
+ {
2
+ "id": "timeline-track",
3
+ "name": "Timeline track",
4
+ "kind": "diagram",
5
+ "description": "A horizontal timeline whose track fills left to right behind an accent playhead; milestones pop in (dot, mono date above, display label below) as the playhead reaches them, the last one highlighted as 'now'. A mono readout tracks progress. Edit MILESTONES for roadmaps, company history or release trains.",
6
+ "tags": ["timeline", "roadmap", "history", "milestones", "playhead", "dates", "draw-on", "explainer"],
7
+ "fonts": [],
8
+ "duration": 5,
9
+ "previewAt": 3,
10
+ "license": "original",
11
+ "previewLook": "duotone-broadcast"
12
+ }