@exponential_app/eui 0.3.0 → 0.4.0

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 (442) hide show
  1. package/catalog/a11y.json +10 -0
  2. package/catalog/core.catalog.json +284 -6
  3. package/catalog/core.schema.json +437 -4
  4. package/catalog/layout.json +3 -2
  5. package/catalog/limits.json +10 -1
  6. package/catalog/macros.json +1 -0
  7. package/catalog/recipes.json +3 -1
  8. package/catalog/strings.json +9 -2
  9. package/catalog/style.json +21 -0
  10. package/catalog/theme.schema.json +4435 -3676
  11. package/conformance/manifest.json +2 -2
  12. package/conformance/motion/build-corpus.ts +232 -0
  13. package/conformance/motion/corpus/SOURCES.md +117 -0
  14. package/conformance/motion/corpus/images/footage_0.json +1 -0
  15. package/conformance/motion/corpus/images/img_0.jpg +0 -0
  16. package/conformance/motion/corpus/images/img_1.jpg +0 -0
  17. package/conformance/motion/corpus/images/triangle.png +0 -0
  18. package/conformance/motion/corpus/skottie-3d-parenting-nocamera.json +367 -0
  19. package/conformance/motion/corpus/skottie-auto-orient-2.json +292 -0
  20. package/conformance/motion/corpus/skottie-auto-orient.json +717 -0
  21. package/conformance/motion/corpus/skottie-bezier-extranormal.json +199 -0
  22. package/conformance/motion/corpus/skottie-blendmode-hardmix.json +558 -0
  23. package/conformance/motion/corpus/skottie-chained-mattes.json +259 -0
  24. package/conformance/motion/corpus/skottie-dropshadow-ramp.json +852 -0
  25. package/conformance/motion/corpus/skottie-dropshadow-style.json +278 -0
  26. package/conformance/motion/corpus/skottie-effects-transform.json +385 -0
  27. package/conformance/motion/corpus/skottie-fill-effect.json +358 -0
  28. package/conformance/motion/corpus/skottie-fill-rule.json +457 -0
  29. package/conformance/motion/corpus/skottie-gaussian-blur.json +670 -0
  30. package/conformance/motion/corpus/skottie-gradient-opacity.json +451 -0
  31. package/conformance/motion/corpus/skottie-gradient-radial-highlight.json +581 -0
  32. package/conformance/motion/corpus/skottie-hidden-shapes-layers.json +381 -0
  33. package/conformance/motion/corpus/skottie-huesaturation-effect.json +1117 -0
  34. package/conformance/motion/corpus/skottie-invert-effect.json +665 -0
  35. package/conformance/motion/corpus/skottie-luma-matte.json +239 -0
  36. package/conformance/motion/corpus/skottie-mask-feather.json +892 -0
  37. package/conformance/motion/corpus/skottie-masking-opaque.json +2376 -0
  38. package/conformance/motion/corpus/skottie-masking-translucent.json +2376 -0
  39. package/conformance/motion/corpus/skottie-matte-blendmode.json +196 -0
  40. package/conformance/motion/corpus/skottie-matte-nonsequential.json +722 -0
  41. package/conformance/motion/corpus/skottie-matte-visible.json +666 -0
  42. package/conformance/motion/corpus/skottie-mergepaths-effect.json +722 -0
  43. package/conformance/motion/corpus/skottie-motion-blur-mask.json +120 -0
  44. package/conformance/motion/corpus/skottie-nested-animation.json +253 -0
  45. package/conformance/motion/corpus/skottie-offsetpaths-effect.json +525 -0
  46. package/conformance/motion/corpus/skottie-phonehub-connecting.json +947 -0
  47. package/conformance/motion/corpus/skottie-puckerbloat-effect.json +339 -0
  48. package/conformance/motion/corpus/skottie-repeater.json +234 -0
  49. package/conformance/motion/corpus/skottie-sample-1.json +168 -0
  50. package/conformance/motion/corpus/skottie-sample-search.json +329 -0
  51. package/conformance/motion/corpus/skottie-spatial-supernormal.json +898 -0
  52. package/conformance/motion/corpus/skottie-text-animator-1.json +1286 -0
  53. package/conformance/motion/corpus/skottie-text-fill-over-stroke.json +1014 -0
  54. package/conformance/motion/corpus/skottie-text-tracking.json +950 -0
  55. package/conformance/motion/corpus/skottie-text-valign.json +484 -0
  56. package/conformance/motion/corpus/skottie-time-reverse.json +297 -0
  57. package/conformance/motion/corpus/skottie-transform-skew.json +290 -0
  58. package/conformance/motion/corpus/skottie-trimpath-fill.json +933 -0
  59. package/conformance/motion/corpus/skottie-trimpath-modes.json +266 -0
  60. package/conformance/motion/corpus/skottie-tritone-effect.json +379 -0
  61. package/conformance/motion/corpus/spec-blend-mode.json +531 -0
  62. package/conformance/motion/corpus/spec-ellipse.json +142 -0
  63. package/conformance/motion/corpus/spec-fill.json +193 -0
  64. package/conformance/motion/corpus/spec-gradient-stroke.json +1263 -0
  65. package/conformance/motion/corpus/spec-gradient.json +1255 -0
  66. package/conformance/motion/corpus/spec-mask.json +773 -0
  67. package/conformance/motion/corpus/spec-masks.json +676 -0
  68. package/conformance/motion/corpus/spec-matte.json +390 -0
  69. package/conformance/motion/corpus/spec-metadata.json +1 -0
  70. package/conformance/motion/corpus/spec-path.json +177 -0
  71. package/conformance/motion/corpus/spec-pucker-bloat.json +179 -0
  72. package/conformance/motion/corpus/spec-rectangle.json +145 -0
  73. package/conformance/motion/corpus/spec-rounded-corners.json +187 -0
  74. package/conformance/motion/corpus/spec-slots.json +325 -0
  75. package/conformance/motion/corpus/spec-star.json +159 -0
  76. package/conformance/motion/corpus/spec-stroke.json +156 -0
  77. package/conformance/motion/corpus/spec-test-ellipse-xy-pos.json +141 -0
  78. package/conformance/motion/corpus/spec-test-gradient-fill.json +1 -0
  79. package/conformance/motion/corpus/spec-test-gradient-stroke.json +229 -0
  80. package/conformance/motion/corpus/spec-test-unknown-shape.json +63 -0
  81. package/conformance/motion/corpus/spec-time-remap.json +1090 -0
  82. package/conformance/motion/corpus/spec-time-stretch.json +594 -0
  83. package/conformance/motion/corpus/spec-transform.json +273 -0
  84. package/conformance/motion/corpus/spec-trim-path.json +209 -0
  85. package/conformance/motion/corpus/web-adrock.json +1 -0
  86. package/conformance/motion/corpus/web-bacon.json +1 -0
  87. package/conformance/motion/corpus/web-banner.json +1 -0
  88. package/conformance/motion/corpus/web-bodymovin.json +1 -0
  89. package/conformance/motion/corpus/web-dalek.json +1 -0
  90. package/conformance/motion/corpus/web-footage-data.json +1 -0
  91. package/conformance/motion/corpus/web-lights.json +1 -0
  92. package/conformance/motion/corpus/web-ripple.json +1 -0
  93. package/conformance/motion/corpus/web-starfish.json +1 -0
  94. package/conformance/motion/known-gaps.json +35 -0
  95. package/conformance/motion/parity/group-transforms-parenting@0.png +0 -0
  96. package/conformance/motion/parity/group-transforms-parenting@10.png +0 -0
  97. package/conformance/motion/parity/hidden-unknown-inactive@0.png +0 -0
  98. package/conformance/motion/parity/keyframes-transform@0.png +0 -0
  99. package/conformance/motion/parity/keyframes-transform@10.png +0 -0
  100. package/conformance/motion/parity/keyframes-transform@15.png +0 -0
  101. package/conformance/motion/parity/keyframes-transform@5.png +0 -0
  102. package/conformance/motion/parity/layer-opacity-blend@0.png +0 -0
  103. package/conformance/motion/parity/linear-gradient@0.png +0 -0
  104. package/conformance/motion/parity/masks-modes@0.png +0 -0
  105. package/conformance/motion/parity/matte-alpha@0.png +0 -0
  106. package/conformance/motion/parity/matte-luma@0.png +0 -0
  107. package/conformance/motion/parity/matte-parent-tp@0.png +0 -0
  108. package/conformance/motion/parity/path-evenodd@0.png +0 -0
  109. package/conformance/motion/parity/precomp-clip-offset@0.png +0 -0
  110. package/conformance/motion/parity/precomp-clip-offset@15.png +0 -0
  111. package/conformance/motion/parity/precomp-clip-offset@5.png +0 -0
  112. package/conformance/motion/parity/radial-gradient-highlight@0.png +0 -0
  113. package/conformance/motion/parity/rect-solid-fill@0.png +0 -0
  114. package/conformance/motion/parity/repeater@0.png +0 -0
  115. package/conformance/motion/parity/rounded-rect-ellipse@0.png +0 -0
  116. package/conformance/motion/parity/solid-and-image@0.png +0 -0
  117. package/conformance/motion/parity/split-position-skew@0.png +0 -0
  118. package/conformance/motion/parity/split-position-skew@10.png +0 -0
  119. package/conformance/motion/parity/star-polygon@0.png +0 -0
  120. package/conformance/motion/parity/stroke-caps-joins@0.png +0 -0
  121. package/conformance/motion/parity/stroke-dashes@0.png +0 -0
  122. package/conformance/motion/parity/stroke-dashes@10.png +0 -0
  123. package/conformance/motion/parity/time-remap@0.png +0 -0
  124. package/conformance/motion/parity/time-remap@10.png +0 -0
  125. package/conformance/motion/parity/time-remap@19.png +0 -0
  126. package/conformance/motion/parity/time-stretch@0.png +0 -0
  127. package/conformance/motion/parity/time-stretch@10.png +0 -0
  128. package/conformance/motion/parity/trim-individually@0.png +0 -0
  129. package/conformance/motion/parity/trim-path@0.png +0 -0
  130. package/conformance/motion/parity/trim-path@10.png +0 -0
  131. package/conformance/motion/refs/index.json +688 -0
  132. package/conformance/motion/refs/skottie-3d-parenting-nocamera@0.png +0 -0
  133. package/conformance/motion/refs/skottie-3d-parenting-nocamera@150.png +0 -0
  134. package/conformance/motion/refs/skottie-3d-parenting-nocamera@270.png +0 -0
  135. package/conformance/motion/refs/skottie-auto-orient-2@0.png +0 -0
  136. package/conformance/motion/refs/skottie-auto-orient-2@210.png +0 -0
  137. package/conformance/motion/refs/skottie-auto-orient-2@378.png +0 -0
  138. package/conformance/motion/refs/skottie-auto-orient@0.png +0 -0
  139. package/conformance/motion/refs/skottie-auto-orient@300.png +0 -0
  140. package/conformance/motion/refs/skottie-auto-orient@540.png +0 -0
  141. package/conformance/motion/refs/skottie-bezier-extranormal@0.png +0 -0
  142. package/conformance/motion/refs/skottie-bezier-extranormal@150.png +0 -0
  143. package/conformance/motion/refs/skottie-bezier-extranormal@270.png +0 -0
  144. package/conformance/motion/refs/skottie-blendmode-hardmix@0.png +0 -0
  145. package/conformance/motion/refs/skottie-blendmode-hardmix@150.png +0 -0
  146. package/conformance/motion/refs/skottie-blendmode-hardmix@270.png +0 -0
  147. package/conformance/motion/refs/skottie-chained-mattes@0.png +0 -0
  148. package/conformance/motion/refs/skottie-chained-mattes@300.png +0 -0
  149. package/conformance/motion/refs/skottie-chained-mattes@540.png +0 -0
  150. package/conformance/motion/refs/skottie-dropshadow-ramp@0.png +0 -0
  151. package/conformance/motion/refs/skottie-dropshadow-ramp@135.png +0 -0
  152. package/conformance/motion/refs/skottie-dropshadow-ramp@75.png +0 -0
  153. package/conformance/motion/refs/skottie-dropshadow-style@0.png +0 -0
  154. package/conformance/motion/refs/skottie-dropshadow-style@300.png +0 -0
  155. package/conformance/motion/refs/skottie-dropshadow-style@540.png +0 -0
  156. package/conformance/motion/refs/skottie-effects-transform@0.png +0 -0
  157. package/conformance/motion/refs/skottie-effects-transform@450.png +0 -0
  158. package/conformance/motion/refs/skottie-effects-transform@810.png +0 -0
  159. package/conformance/motion/refs/skottie-fill-effect@0.png +0 -0
  160. package/conformance/motion/refs/skottie-fill-effect@300.png +0 -0
  161. package/conformance/motion/refs/skottie-fill-effect@540.png +0 -0
  162. package/conformance/motion/refs/skottie-fill-rule@0.png +0 -0
  163. package/conformance/motion/refs/skottie-fill-rule@150.png +0 -0
  164. package/conformance/motion/refs/skottie-fill-rule@270.png +0 -0
  165. package/conformance/motion/refs/skottie-gaussian-blur@0.png +0 -0
  166. package/conformance/motion/refs/skottie-gaussian-blur@150.png +0 -0
  167. package/conformance/motion/refs/skottie-gaussian-blur@270.png +0 -0
  168. package/conformance/motion/refs/skottie-gradient-opacity@0.png +0 -0
  169. package/conformance/motion/refs/skottie-gradient-opacity@150.png +0 -0
  170. package/conformance/motion/refs/skottie-gradient-opacity@270.png +0 -0
  171. package/conformance/motion/refs/skottie-gradient-radial-highlight@0.png +0 -0
  172. package/conformance/motion/refs/skottie-gradient-radial-highlight@135.png +0 -0
  173. package/conformance/motion/refs/skottie-gradient-radial-highlight@75.png +0 -0
  174. package/conformance/motion/refs/skottie-hidden-shapes-layers@0.png +0 -0
  175. package/conformance/motion/refs/skottie-hidden-shapes-layers@150.png +0 -0
  176. package/conformance/motion/refs/skottie-hidden-shapes-layers@270.png +0 -0
  177. package/conformance/motion/refs/skottie-huesaturation-effect@0.png +0 -0
  178. package/conformance/motion/refs/skottie-huesaturation-effect@30.png +0 -0
  179. package/conformance/motion/refs/skottie-huesaturation-effect@54.png +0 -0
  180. package/conformance/motion/refs/skottie-invert-effect@0.png +0 -0
  181. package/conformance/motion/refs/skottie-invert-effect@300.png +0 -0
  182. package/conformance/motion/refs/skottie-invert-effect@540.png +0 -0
  183. package/conformance/motion/refs/skottie-luma-matte@0.png +0 -0
  184. package/conformance/motion/refs/skottie-luma-matte@150.png +0 -0
  185. package/conformance/motion/refs/skottie-luma-matte@270.png +0 -0
  186. package/conformance/motion/refs/skottie-mask-feather@0.png +0 -0
  187. package/conformance/motion/refs/skottie-mask-feather@150.png +0 -0
  188. package/conformance/motion/refs/skottie-mask-feather@270.png +0 -0
  189. package/conformance/motion/refs/skottie-masking-opaque@0.png +0 -0
  190. package/conformance/motion/refs/skottie-masking-opaque@135.png +0 -0
  191. package/conformance/motion/refs/skottie-masking-opaque@75.png +0 -0
  192. package/conformance/motion/refs/skottie-masking-translucent@0.png +0 -0
  193. package/conformance/motion/refs/skottie-masking-translucent@135.png +0 -0
  194. package/conformance/motion/refs/skottie-masking-translucent@75.png +0 -0
  195. package/conformance/motion/refs/skottie-matte-blendmode@0.png +0 -0
  196. package/conformance/motion/refs/skottie-matte-blendmode@150.png +0 -0
  197. package/conformance/motion/refs/skottie-matte-blendmode@270.png +0 -0
  198. package/conformance/motion/refs/skottie-matte-nonsequential@0.png +0 -0
  199. package/conformance/motion/refs/skottie-matte-nonsequential@150.png +0 -0
  200. package/conformance/motion/refs/skottie-matte-nonsequential@270.png +0 -0
  201. package/conformance/motion/refs/skottie-matte-visible@0.png +0 -0
  202. package/conformance/motion/refs/skottie-matte-visible@150.png +0 -0
  203. package/conformance/motion/refs/skottie-matte-visible@270.png +0 -0
  204. package/conformance/motion/refs/skottie-mergepaths-effect@0.png +0 -0
  205. package/conformance/motion/refs/skottie-mergepaths-effect@210.png +0 -0
  206. package/conformance/motion/refs/skottie-mergepaths-effect@378.png +0 -0
  207. package/conformance/motion/refs/skottie-motion-blur-mask@0.png +0 -0
  208. package/conformance/motion/refs/skottie-motion-blur-mask@150.png +0 -0
  209. package/conformance/motion/refs/skottie-motion-blur-mask@270.png +0 -0
  210. package/conformance/motion/refs/skottie-nested-animation@0.png +0 -0
  211. package/conformance/motion/refs/skottie-nested-animation@300.png +0 -0
  212. package/conformance/motion/refs/skottie-nested-animation@540.png +0 -0
  213. package/conformance/motion/refs/skottie-offsetpaths-effect@0.png +0 -0
  214. package/conformance/motion/refs/skottie-offsetpaths-effect@150.png +0 -0
  215. package/conformance/motion/refs/skottie-offsetpaths-effect@270.png +0 -0
  216. package/conformance/motion/refs/skottie-phonehub-connecting@0.png +0 -0
  217. package/conformance/motion/refs/skottie-puckerbloat-effect@0.png +0 -0
  218. package/conformance/motion/refs/skottie-puckerbloat-effect@210.png +0 -0
  219. package/conformance/motion/refs/skottie-puckerbloat-effect@378.png +0 -0
  220. package/conformance/motion/refs/skottie-repeater@0.png +0 -0
  221. package/conformance/motion/refs/skottie-repeater@300.png +0 -0
  222. package/conformance/motion/refs/skottie-repeater@540.png +0 -0
  223. package/conformance/motion/refs/skottie-sample-1@0.png +0 -0
  224. package/conformance/motion/refs/skottie-sample-1@100.png +0 -0
  225. package/conformance/motion/refs/skottie-sample-1@180.png +0 -0
  226. package/conformance/motion/refs/skottie-sample-search@0.png +0 -0
  227. package/conformance/motion/refs/skottie-sample-search@27.png +0 -0
  228. package/conformance/motion/refs/skottie-sample-search@48.png +0 -0
  229. package/conformance/motion/refs/skottie-spatial-supernormal@0.png +0 -0
  230. package/conformance/motion/refs/skottie-spatial-supernormal@200.png +0 -0
  231. package/conformance/motion/refs/skottie-spatial-supernormal@360.png +0 -0
  232. package/conformance/motion/refs/skottie-text-animator-1@0.png +0 -0
  233. package/conformance/motion/refs/skottie-text-animator-1@150.png +0 -0
  234. package/conformance/motion/refs/skottie-text-animator-1@270.png +0 -0
  235. package/conformance/motion/refs/skottie-text-fill-over-stroke@0.png +0 -0
  236. package/conformance/motion/refs/skottie-text-fill-over-stroke@210.png +0 -0
  237. package/conformance/motion/refs/skottie-text-fill-over-stroke@378.png +0 -0
  238. package/conformance/motion/refs/skottie-text-tracking@0.png +0 -0
  239. package/conformance/motion/refs/skottie-text-tracking@108.png +0 -0
  240. package/conformance/motion/refs/skottie-text-tracking@60.png +0 -0
  241. package/conformance/motion/refs/skottie-text-valign@0.png +0 -0
  242. package/conformance/motion/refs/skottie-text-valign@150.png +0 -0
  243. package/conformance/motion/refs/skottie-text-valign@270.png +0 -0
  244. package/conformance/motion/refs/skottie-time-reverse@0.png +0 -0
  245. package/conformance/motion/refs/skottie-time-reverse@300.png +0 -0
  246. package/conformance/motion/refs/skottie-time-reverse@540.png +0 -0
  247. package/conformance/motion/refs/skottie-transform-skew@0.png +0 -0
  248. package/conformance/motion/refs/skottie-transform-skew@300.png +0 -0
  249. package/conformance/motion/refs/skottie-transform-skew@540.png +0 -0
  250. package/conformance/motion/refs/skottie-trimpath-fill@0.png +0 -0
  251. package/conformance/motion/refs/skottie-trimpath-fill@300.png +0 -0
  252. package/conformance/motion/refs/skottie-trimpath-fill@540.png +0 -0
  253. package/conformance/motion/refs/skottie-trimpath-modes@0.png +0 -0
  254. package/conformance/motion/refs/skottie-trimpath-modes@300.png +0 -0
  255. package/conformance/motion/refs/skottie-trimpath-modes@540.png +0 -0
  256. package/conformance/motion/refs/skottie-tritone-effect@0.png +0 -0
  257. package/conformance/motion/refs/skottie-tritone-effect@300.png +0 -0
  258. package/conformance/motion/refs/skottie-tritone-effect@540.png +0 -0
  259. package/conformance/motion/refs/spec-blend-mode@0.png +0 -0
  260. package/conformance/motion/refs/spec-blend-mode@162.png +0 -0
  261. package/conformance/motion/refs/spec-blend-mode@90.png +0 -0
  262. package/conformance/motion/refs/spec-ellipse@0.png +0 -0
  263. package/conformance/motion/refs/spec-ellipse@162.png +0 -0
  264. package/conformance/motion/refs/spec-ellipse@90.png +0 -0
  265. package/conformance/motion/refs/spec-fill@0.png +0 -0
  266. package/conformance/motion/refs/spec-fill@162.png +0 -0
  267. package/conformance/motion/refs/spec-fill@90.png +0 -0
  268. package/conformance/motion/refs/spec-gradient-stroke@0.png +0 -0
  269. package/conformance/motion/refs/spec-gradient-stroke@162.png +0 -0
  270. package/conformance/motion/refs/spec-gradient-stroke@90.png +0 -0
  271. package/conformance/motion/refs/spec-gradient@0.png +0 -0
  272. package/conformance/motion/refs/spec-gradient@162.png +0 -0
  273. package/conformance/motion/refs/spec-gradient@90.png +0 -0
  274. package/conformance/motion/refs/spec-mask@0.png +0 -0
  275. package/conformance/motion/refs/spec-mask@300.png +0 -0
  276. package/conformance/motion/refs/spec-mask@540.png +0 -0
  277. package/conformance/motion/refs/spec-masks@0.png +0 -0
  278. package/conformance/motion/refs/spec-masks@135.png +0 -0
  279. package/conformance/motion/refs/spec-masks@75.png +0 -0
  280. package/conformance/motion/refs/spec-matte@0.png +0 -0
  281. package/conformance/motion/refs/spec-matte@162.png +0 -0
  282. package/conformance/motion/refs/spec-matte@90.png +0 -0
  283. package/conformance/motion/refs/spec-metadata@0.png +0 -0
  284. package/conformance/motion/refs/spec-metadata@162.png +0 -0
  285. package/conformance/motion/refs/spec-metadata@90.png +0 -0
  286. package/conformance/motion/refs/spec-path@0.png +0 -0
  287. package/conformance/motion/refs/spec-path@162.png +0 -0
  288. package/conformance/motion/refs/spec-path@90.png +0 -0
  289. package/conformance/motion/refs/spec-pucker-bloat@0.png +0 -0
  290. package/conformance/motion/refs/spec-pucker-bloat@162.png +0 -0
  291. package/conformance/motion/refs/spec-pucker-bloat@90.png +0 -0
  292. package/conformance/motion/refs/spec-rectangle@0.png +0 -0
  293. package/conformance/motion/refs/spec-rectangle@162.png +0 -0
  294. package/conformance/motion/refs/spec-rectangle@90.png +0 -0
  295. package/conformance/motion/refs/spec-rounded-corners@0.png +0 -0
  296. package/conformance/motion/refs/spec-rounded-corners@162.png +0 -0
  297. package/conformance/motion/refs/spec-rounded-corners@90.png +0 -0
  298. package/conformance/motion/refs/spec-slots@0.png +0 -0
  299. package/conformance/motion/refs/spec-slots@450.png +0 -0
  300. package/conformance/motion/refs/spec-slots@810.png +0 -0
  301. package/conformance/motion/refs/spec-star@0.png +0 -0
  302. package/conformance/motion/refs/spec-star@162.png +0 -0
  303. package/conformance/motion/refs/spec-star@90.png +0 -0
  304. package/conformance/motion/refs/spec-stroke@0.png +0 -0
  305. package/conformance/motion/refs/spec-stroke@162.png +0 -0
  306. package/conformance/motion/refs/spec-stroke@90.png +0 -0
  307. package/conformance/motion/refs/spec-test-ellipse-xy-pos@0.png +0 -0
  308. package/conformance/motion/refs/spec-test-ellipse-xy-pos@162.png +0 -0
  309. package/conformance/motion/refs/spec-test-ellipse-xy-pos@90.png +0 -0
  310. package/conformance/motion/refs/spec-test-gradient-fill@0.png +0 -0
  311. package/conformance/motion/refs/spec-test-gradient-fill@30.png +0 -0
  312. package/conformance/motion/refs/spec-test-gradient-fill@54.png +0 -0
  313. package/conformance/motion/refs/spec-test-gradient-stroke@0.png +0 -0
  314. package/conformance/motion/refs/spec-test-gradient-stroke@30.png +0 -0
  315. package/conformance/motion/refs/spec-test-gradient-stroke@54.png +0 -0
  316. package/conformance/motion/refs/spec-test-unknown-shape@0.png +0 -0
  317. package/conformance/motion/refs/spec-test-unknown-shape@162.png +0 -0
  318. package/conformance/motion/refs/spec-test-unknown-shape@90.png +0 -0
  319. package/conformance/motion/refs/spec-time-remap@0.png +0 -0
  320. package/conformance/motion/refs/spec-time-remap@300.png +0 -0
  321. package/conformance/motion/refs/spec-time-remap@540.png +0 -0
  322. package/conformance/motion/refs/spec-time-stretch@0.png +0 -0
  323. package/conformance/motion/refs/spec-time-stretch@300.png +0 -0
  324. package/conformance/motion/refs/spec-time-stretch@540.png +0 -0
  325. package/conformance/motion/refs/spec-transform@0.png +0 -0
  326. package/conformance/motion/refs/spec-transform@162.png +0 -0
  327. package/conformance/motion/refs/spec-transform@90.png +0 -0
  328. package/conformance/motion/refs/spec-trim-path@0.png +0 -0
  329. package/conformance/motion/refs/spec-trim-path@162.png +0 -0
  330. package/conformance/motion/refs/spec-trim-path@90.png +0 -0
  331. package/conformance/motion/refs/web-adrock@0.png +0 -0
  332. package/conformance/motion/refs/web-adrock@10.png +0 -0
  333. package/conformance/motion/refs/web-adrock@18.png +0 -0
  334. package/conformance/motion/refs/web-bacon@0.png +0 -0
  335. package/conformance/motion/refs/web-bacon@126.png +0 -0
  336. package/conformance/motion/refs/web-bacon@70.png +0 -0
  337. package/conformance/motion/refs/web-banner@0.png +0 -0
  338. package/conformance/motion/refs/web-banner@301.png +0 -0
  339. package/conformance/motion/refs/web-banner@542.png +0 -0
  340. package/conformance/motion/refs/web-bodymovin@0.png +0 -0
  341. package/conformance/motion/refs/web-bodymovin@51.png +0 -0
  342. package/conformance/motion/refs/web-bodymovin@92.png +0 -0
  343. package/conformance/motion/refs/web-dalek@0.png +0 -0
  344. package/conformance/motion/refs/web-dalek@145.png +0 -0
  345. package/conformance/motion/refs/web-dalek@261.png +0 -0
  346. package/conformance/motion/refs/web-footage-data@0.png +0 -0
  347. package/conformance/motion/refs/web-footage-data@180.png +0 -0
  348. package/conformance/motion/refs/web-footage-data@324.png +0 -0
  349. package/conformance/motion/refs/web-lights@0.png +0 -0
  350. package/conformance/motion/refs/web-lights@150.png +0 -0
  351. package/conformance/motion/refs/web-lights@270.png +0 -0
  352. package/conformance/motion/refs/web-ripple@0.png +0 -0
  353. package/conformance/motion/refs/web-ripple@180.png +0 -0
  354. package/conformance/motion/refs/web-ripple@324.png +0 -0
  355. package/conformance/motion/refs/web-starfish@0.png +0 -0
  356. package/conformance/motion/refs/web-starfish@150.png +0 -0
  357. package/conformance/motion/refs/web-starfish@270.png +0 -0
  358. package/conformance/motion/render-refs.ts +126 -0
  359. package/conformance/motion/report.json +1367 -0
  360. package/conformance/motion/web-parity-gaps.json +12 -0
  361. package/conformance/motion-parity-entry.ts +3 -0
  362. package/conformance/motion-parity.ts +101 -0
  363. package/dist/chunks/{index-4z7f2bp1.js → index-4xczxey5.js} +35 -15
  364. package/dist/chunks/{index-4z7f2bp1.js.map → index-4xczxey5.js.map} +4 -4
  365. package/dist/chunks/{index-dx45asrf.js → index-5sjj5p84.js} +174 -8
  366. package/dist/chunks/{index-dx45asrf.js.map → index-5sjj5p84.js.map} +2 -2
  367. package/dist/chunks/{index-fy7y2nz8.js → index-cvf7bbs5.js} +23 -2
  368. package/dist/chunks/{index-fy7y2nz8.js.map → index-cvf7bbs5.js.map} +1 -1
  369. package/dist/chunks/index-dgkf6yw5.js +48 -0
  370. package/dist/chunks/index-dgkf6yw5.js.map +10 -0
  371. package/dist/chunks/{index-abcjanhc.js → index-f9wkb6aq.js} +192 -3
  372. package/dist/chunks/{index-abcjanhc.js.map → index-f9wkb6aq.js.map} +2 -2
  373. package/dist/chunks/index-t2mwfbb6.js +1515 -0
  374. package/dist/chunks/index-t2mwfbb6.js.map +15 -0
  375. package/dist/chunks/{index-h3zgfghf.js → index-vkn82srs.js} +179 -8
  376. package/dist/chunks/{index-h3zgfghf.js.map → index-vkn82srs.js.map} +2 -2
  377. package/dist/chunks/wasm-ctcc3cma.js +424 -0
  378. package/dist/chunks/wasm-ctcc3cma.js.map +11 -0
  379. package/dist/conformance.js +3154 -63
  380. package/dist/conformance.js.map +2 -2
  381. package/dist/entries/prompt.js +2 -2
  382. package/dist/entries/schema.js +3 -3
  383. package/dist/host/index.js +3 -3
  384. package/dist/index.js +333 -98
  385. package/dist/index.js.map +4 -4
  386. package/dist/types/src/catalog.generated.d.ts +50 -4
  387. package/dist/types/src/index.d.ts +2 -0
  388. package/dist/types/src/layout.d.ts +2 -0
  389. package/dist/types/src/limits.d.ts +1 -0
  390. package/dist/types/src/motion/index.d.ts +1 -0
  391. package/dist/types/src/motion/server.d.ts +9 -0
  392. package/dist/types/src/motion/wasm.d.ts +11 -0
  393. package/dist/types/src/web/coerce.d.ts +3 -0
  394. package/dist/types/src/web/focus.d.ts +8 -0
  395. package/dist/types/src/web/index.d.ts +5 -2
  396. package/dist/types/src/web/primitives/carousel.d.ts +1 -1
  397. package/dist/types/src/web/primitives/dock.d.ts +5 -2
  398. package/dist/types/src/web/primitives/index.d.ts +2 -0
  399. package/dist/types/src/web/primitives/motion-paint.d.ts +36 -0
  400. package/dist/types/src/web/primitives/motion.d.ts +162 -0
  401. package/dist/types/src/web/primitives/zoomable-image.d.ts +158 -0
  402. package/dist/types/src/web/table.d.ts +8 -0
  403. package/dist/types/src/zoom.d.ts +128 -0
  404. package/dist/types/wasm/motion/bytes.d.ts +1 -0
  405. package/dist/web/index.js +165 -230
  406. package/dist/web/index.js.map +8 -9
  407. package/dist/web/primitives/index.js +584 -7
  408. package/dist/web/primitives/index.js.map +7 -6
  409. package/docs/components.generated.json +392 -4
  410. package/docs/round-6-contract.md +5 -3
  411. package/docs/themes.generated.json +27 -0
  412. package/fixtures/bind-time.json +4 -0
  413. package/fixtures/catalog-components.json +930 -16
  414. package/fixtures/catalog-macros.json +11 -0
  415. package/fixtures/conformance-baseline.json +33020 -32952
  416. package/fixtures/conformance-known.json +64 -70
  417. package/fixtures/kitchen-sink.expanded.json +72 -0
  418. package/fixtures/kitchen-sink.json +33 -0
  419. package/fixtures/layout-geometry-round1.json +42 -42
  420. package/fixtures/motion-frames.json +2618 -0
  421. package/fixtures/motion-playback.json +528 -0
  422. package/fixtures/motion-state.json +722 -0
  423. package/fixtures/motion-validate.json +138 -0
  424. package/fixtures/primitive-specimens.json +1 -0
  425. package/fixtures/prompt-budget.json +16 -16
  426. package/fixtures/specimens.json +717 -21
  427. package/fixtures/theme-recipes.json +1518 -32
  428. package/fixtures/theme-resolved.json +732 -56
  429. package/fixtures/zoom.json +1382 -0
  430. package/generated/ExponentialUICatalog.generated.kt +20 -20
  431. package/generated/ExponentialUICatalog.generated.swift +20 -20
  432. package/generated/ExponentialUIThemes.generated.kt +7 -7
  433. package/generated/ExponentialUIThemes.generated.swift +7 -7
  434. package/generated/catalog.descriptions.generated.rs +1 -1
  435. package/generated/catalog.generated.rs +29 -29
  436. package/generated/catalog.themes.generated.rs +8 -8
  437. package/generated/core.descriptions.json +171 -5
  438. package/generated/core.runtime.json +189 -1
  439. package/package.json +1 -1
  440. package/themes/neutral.theme.json +172 -3
  441. package/dist/chunks/index-t6qz1770.js +0 -95
  442. package/dist/chunks/index-t6qz1770.js.map +0 -11
@@ -37,14 +37,7 @@
37
37
  {
38
38
  "id": "c0-box",
39
39
  "component": "Box",
40
- "props": {
41
- "style": {
42
- "display": "flex",
43
- "flexDirection": "column",
44
- "gap": "$spacing.md",
45
- "padding": "$spacing.lg"
46
- }
47
- },
40
+ "props": {},
48
41
  "children": [
49
42
  {
50
43
  "id": "c0-t1",
@@ -62,7 +55,13 @@
62
55
  "variant": "muted"
63
56
  }
64
57
  }
65
- ]
58
+ ],
59
+ "style": {
60
+ "display": "flex",
61
+ "flexDirection": "column",
62
+ "gap": "$spacing.md",
63
+ "padding": "$spacing.lg"
64
+ }
66
65
  }
67
66
  ]
68
67
  }
@@ -456,11 +455,41 @@
456
455
  }
457
456
  },
458
457
  {
459
- "id": "c1-separator",
460
- "component": "Separator",
458
+ "id": "c1-bar",
459
+ "component": "Stack",
461
460
  "props": {
462
- "orientation": "vertical"
463
- }
461
+ "direction": "horizontal",
462
+ "gap": "md",
463
+ "align": "center"
464
+ },
465
+ "children": [
466
+ {
467
+ "id": "c1-a",
468
+ "component": "Text",
469
+ "props": {
470
+ "text": "Inbox",
471
+ "variant": "body"
472
+ }
473
+ },
474
+ {
475
+ "id": "c1-separator",
476
+ "component": "Separator",
477
+ "props": {
478
+ "orientation": "vertical"
479
+ },
480
+ "style": {
481
+ "height": 20
482
+ }
483
+ },
484
+ {
485
+ "id": "c1-b",
486
+ "component": "Text",
487
+ "props": {
488
+ "text": "Drafts",
489
+ "variant": "body"
490
+ }
491
+ }
492
+ ]
464
493
  }
465
494
  ]
466
495
  }
@@ -557,7 +586,8 @@
557
586
  "component": "List",
558
587
  "props": {
559
588
  "direction": "horizontal",
560
- "divided": true
589
+ "divided": true,
590
+ "gap": "lg"
561
591
  },
562
592
  "children": [
563
593
  {
@@ -1583,7 +1613,7 @@
1583
1613
  "component": "Row",
1584
1614
  "props": {
1585
1615
  "title": "Release 0.18",
1586
- "meta": "4 runs",
1616
+ "meta": "4 steps",
1587
1617
  "pressable": true
1588
1618
  }
1589
1619
  },
@@ -1632,7 +1662,7 @@
1632
1662
  "component": "Row",
1633
1663
  "props": {
1634
1664
  "title": "Release 0.17",
1635
- "meta": "3 runs",
1665
+ "meta": "3 steps",
1636
1666
  "pressable": true
1637
1667
  }
1638
1668
  }
@@ -2599,6 +2629,53 @@
2599
2629
  ]
2600
2630
  }
2601
2631
  },
2632
+ {
2633
+ "id": "exponential-ui-zoomable-image",
2634
+ "component": "ZoomableImage",
2635
+ "title": "ZoomableImage",
2636
+ "node": {
2637
+ "id": "specimen-zoomable-image",
2638
+ "component": "Box",
2639
+ "style": {
2640
+ "display": "flex",
2641
+ "flexDirection": "column",
2642
+ "gap": "$spacing.lg",
2643
+ "padding": "$spacing.xl",
2644
+ "maxWidth": 720
2645
+ },
2646
+ "children": [
2647
+ {
2648
+ "id": "specimen-zoomable-image-case-0",
2649
+ "component": "Stack",
2650
+ "props": {
2651
+ "direction": "vertical",
2652
+ "gap": "xs",
2653
+ "align": "stretch"
2654
+ },
2655
+ "children": [
2656
+ {
2657
+ "id": "specimen-zoomable-image-case-0-label",
2658
+ "component": "Text",
2659
+ "props": {
2660
+ "text": "example",
2661
+ "variant": "caption"
2662
+ }
2663
+ },
2664
+ {
2665
+ "id": "c0-zoomable-image",
2666
+ "component": "ZoomableImage",
2667
+ "props": {
2668
+ "src": "https://example.com/screenshot.png",
2669
+ "alt": "Screenshot",
2670
+ "naturalWidth": 1440,
2671
+ "naturalHeight": 900
2672
+ }
2673
+ }
2674
+ ]
2675
+ }
2676
+ ]
2677
+ }
2678
+ },
2602
2679
  {
2603
2680
  "id": "exponential-ui-icon",
2604
2681
  "component": "Icon",
@@ -3189,7 +3266,7 @@
3189
3266
  "id": "specimen-carousel-case-0-label",
3190
3267
  "component": "Text",
3191
3268
  "props": {
3192
- "text": "example",
3269
+ "text": "counter · thumbnails",
3193
3270
  "variant": "caption"
3194
3271
  }
3195
3272
  },
@@ -3198,7 +3275,13 @@
3198
3275
  "component": "Carousel",
3199
3276
  "props": {
3200
3277
  "page": 0,
3201
- "indicators": true
3278
+ "indicators": true,
3279
+ "counter": true,
3280
+ "thumbnails": [
3281
+ "https://example.com/1.jpg",
3282
+ "https://example.com/2.jpg",
3283
+ "https://example.com/3.jpg"
3284
+ ]
3202
3285
  },
3203
3286
  "children": [
3204
3287
  {
@@ -3335,8 +3418,8 @@
3335
3418
  "value": "issue"
3336
3419
  },
3337
3420
  {
3338
- "label": "Run",
3339
- "value": "run"
3421
+ "label": "Session",
3422
+ "value": "session"
3340
3423
  }
3341
3424
  ],
3342
3425
  "value": "issue"
@@ -3354,7 +3437,7 @@
3354
3437
  "id": "c0-p2",
3355
3438
  "component": "Text",
3356
3439
  "props": {
3357
- "text": "The run panel.",
3440
+ "text": "The session panel.",
3358
3441
  "variant": "body"
3359
3442
  }
3360
3443
  }
@@ -7493,6 +7576,98 @@
7493
7576
  }
7494
7577
  }
7495
7578
  ]
7579
+ },
7580
+ {
7581
+ "id": "specimen-table-case-3",
7582
+ "component": "Stack",
7583
+ "props": {
7584
+ "direction": "vertical",
7585
+ "gap": "xs",
7586
+ "align": "stretch"
7587
+ },
7588
+ "children": [
7589
+ {
7590
+ "id": "specimen-table-case-3-label",
7591
+ "component": "Text",
7592
+ "props": {
7593
+ "text": "wide · scrolls",
7594
+ "variant": "caption"
7595
+ }
7596
+ },
7597
+ {
7598
+ "id": "c3-wide",
7599
+ "component": "Table",
7600
+ "props": {
7601
+ "columns": [
7602
+ {
7603
+ "key": "issue",
7604
+ "label": "Issue",
7605
+ "width": 96
7606
+ },
7607
+ {
7608
+ "key": "title",
7609
+ "label": "Title"
7610
+ },
7611
+ {
7612
+ "key": "board",
7613
+ "label": "Board"
7614
+ },
7615
+ {
7616
+ "key": "assignee",
7617
+ "label": "Assignee"
7618
+ },
7619
+ {
7620
+ "key": "status",
7621
+ "label": "Status",
7622
+ "type": "badge"
7623
+ },
7624
+ {
7625
+ "key": "summary",
7626
+ "label": "Summary",
7627
+ "truncate": true
7628
+ },
7629
+ {
7630
+ "key": "estimate",
7631
+ "label": "Estimate",
7632
+ "type": "number",
7633
+ "align": "end"
7634
+ }
7635
+ ],
7636
+ "rows": [
7637
+ {
7638
+ "id": "a",
7639
+ "issue": "APP-9",
7640
+ "title": "Fix crash when uploading HEIC photos from the share sheet",
7641
+ "board": "Mobile",
7642
+ "assignee": "Alice Lindqvist",
7643
+ "status": "In progress",
7644
+ "summary": "The share extension hands over a file URL the uploader cannot read once the sheet closes",
7645
+ "estimate": 3
7646
+ },
7647
+ {
7648
+ "id": "b",
7649
+ "issue": "APP-21",
7650
+ "title": "Offline queue for issue edits",
7651
+ "board": "Sync",
7652
+ "assignee": "Bob Okafor",
7653
+ "status": "Todo",
7654
+ "summary": "Edits made without a connection are lost on relaunch",
7655
+ "estimate": 8
7656
+ },
7657
+ {
7658
+ "id": "c",
7659
+ "issue": "APP-18",
7660
+ "title": "Reduce cold start below 800 ms",
7661
+ "board": "Performance",
7662
+ "assignee": "Chen Wei",
7663
+ "status": "Done",
7664
+ "summary": "Defer the sync bootstrap until after the first frame",
7665
+ "estimate": 5
7666
+ }
7667
+ ]
7668
+ }
7669
+ }
7670
+ ]
7496
7671
  }
7497
7672
  ]
7498
7673
  }
@@ -11145,6 +11320,527 @@
11145
11320
  ]
11146
11321
  }
11147
11322
  },
11323
+ {
11324
+ "id": "exponential-ui-motion",
11325
+ "component": "Motion",
11326
+ "title": "Motion",
11327
+ "node": {
11328
+ "id": "specimen-motion",
11329
+ "component": "Box",
11330
+ "style": {
11331
+ "display": "flex",
11332
+ "flexDirection": "column",
11333
+ "gap": "$spacing.lg",
11334
+ "padding": "$spacing.xl",
11335
+ "maxWidth": 720
11336
+ },
11337
+ "children": [
11338
+ {
11339
+ "id": "specimen-motion-case-0",
11340
+ "component": "Stack",
11341
+ "props": {
11342
+ "direction": "vertical",
11343
+ "gap": "xs",
11344
+ "align": "stretch"
11345
+ },
11346
+ "children": [
11347
+ {
11348
+ "id": "specimen-motion-case-0-label",
11349
+ "component": "Text",
11350
+ "props": {
11351
+ "text": "example",
11352
+ "variant": "caption"
11353
+ }
11354
+ },
11355
+ {
11356
+ "id": "c0-motion",
11357
+ "component": "Motion",
11358
+ "props": {
11359
+ "size": [
11360
+ 48,
11361
+ 48
11362
+ ],
11363
+ "duration": 1000,
11364
+ "layers": [
11365
+ {
11366
+ "type": "shape",
11367
+ "transform": {
11368
+ "position": [
11369
+ 24,
11370
+ 24
11371
+ ],
11372
+ "rotation": {
11373
+ "keys": [
11374
+ {
11375
+ "t": 0,
11376
+ "v": 0
11377
+ },
11378
+ {
11379
+ "t": 1000,
11380
+ "v": 360
11381
+ }
11382
+ ]
11383
+ }
11384
+ },
11385
+ "shapes": [
11386
+ {
11387
+ "type": "ellipse",
11388
+ "size": [
11389
+ 36,
11390
+ 36
11391
+ ]
11392
+ },
11393
+ {
11394
+ "type": "trim",
11395
+ "end": 70
11396
+ },
11397
+ {
11398
+ "type": "stroke",
11399
+ "color": "$color.primary",
11400
+ "width": 4
11401
+ }
11402
+ ]
11403
+ }
11404
+ ]
11405
+ }
11406
+ }
11407
+ ]
11408
+ },
11409
+ {
11410
+ "id": "specimen-motion-case-1",
11411
+ "component": "Stack",
11412
+ "props": {
11413
+ "direction": "vertical",
11414
+ "gap": "xs",
11415
+ "align": "stretch"
11416
+ },
11417
+ "children": [
11418
+ {
11419
+ "id": "specimen-motion-case-1-label",
11420
+ "component": "Text",
11421
+ "props": {
11422
+ "text": "direction · forward",
11423
+ "variant": "caption"
11424
+ }
11425
+ },
11426
+ {
11427
+ "id": "c1-motion",
11428
+ "component": "Motion",
11429
+ "props": {
11430
+ "size": [
11431
+ 48,
11432
+ 48
11433
+ ],
11434
+ "duration": 1000,
11435
+ "layers": [
11436
+ {
11437
+ "type": "shape",
11438
+ "transform": {
11439
+ "position": [
11440
+ 24,
11441
+ 24
11442
+ ],
11443
+ "rotation": {
11444
+ "keys": [
11445
+ {
11446
+ "t": 0,
11447
+ "v": 0
11448
+ },
11449
+ {
11450
+ "t": 1000,
11451
+ "v": 360
11452
+ }
11453
+ ]
11454
+ }
11455
+ },
11456
+ "shapes": [
11457
+ {
11458
+ "type": "ellipse",
11459
+ "size": [
11460
+ 36,
11461
+ 36
11462
+ ]
11463
+ },
11464
+ {
11465
+ "type": "trim",
11466
+ "end": 70
11467
+ },
11468
+ {
11469
+ "type": "stroke",
11470
+ "color": "$color.primary",
11471
+ "width": 4
11472
+ }
11473
+ ]
11474
+ }
11475
+ ],
11476
+ "direction": "forward"
11477
+ }
11478
+ }
11479
+ ]
11480
+ },
11481
+ {
11482
+ "id": "specimen-motion-case-2",
11483
+ "component": "Stack",
11484
+ "props": {
11485
+ "direction": "vertical",
11486
+ "gap": "xs",
11487
+ "align": "stretch"
11488
+ },
11489
+ "children": [
11490
+ {
11491
+ "id": "specimen-motion-case-2-label",
11492
+ "component": "Text",
11493
+ "props": {
11494
+ "text": "direction · reverse",
11495
+ "variant": "caption"
11496
+ }
11497
+ },
11498
+ {
11499
+ "id": "c2-motion",
11500
+ "component": "Motion",
11501
+ "props": {
11502
+ "size": [
11503
+ 48,
11504
+ 48
11505
+ ],
11506
+ "duration": 1000,
11507
+ "layers": [
11508
+ {
11509
+ "type": "shape",
11510
+ "transform": {
11511
+ "position": [
11512
+ 24,
11513
+ 24
11514
+ ],
11515
+ "rotation": {
11516
+ "keys": [
11517
+ {
11518
+ "t": 0,
11519
+ "v": 0
11520
+ },
11521
+ {
11522
+ "t": 1000,
11523
+ "v": 360
11524
+ }
11525
+ ]
11526
+ }
11527
+ },
11528
+ "shapes": [
11529
+ {
11530
+ "type": "ellipse",
11531
+ "size": [
11532
+ 36,
11533
+ 36
11534
+ ]
11535
+ },
11536
+ {
11537
+ "type": "trim",
11538
+ "end": 70
11539
+ },
11540
+ {
11541
+ "type": "stroke",
11542
+ "color": "$color.primary",
11543
+ "width": 4
11544
+ }
11545
+ ]
11546
+ }
11547
+ ],
11548
+ "direction": "reverse"
11549
+ }
11550
+ }
11551
+ ]
11552
+ },
11553
+ {
11554
+ "id": "specimen-motion-case-3",
11555
+ "component": "Stack",
11556
+ "props": {
11557
+ "direction": "vertical",
11558
+ "gap": "xs",
11559
+ "align": "stretch"
11560
+ },
11561
+ "children": [
11562
+ {
11563
+ "id": "specimen-motion-case-3-label",
11564
+ "component": "Text",
11565
+ "props": {
11566
+ "text": "direction · alternate",
11567
+ "variant": "caption"
11568
+ }
11569
+ },
11570
+ {
11571
+ "id": "c3-motion",
11572
+ "component": "Motion",
11573
+ "props": {
11574
+ "size": [
11575
+ 48,
11576
+ 48
11577
+ ],
11578
+ "duration": 1000,
11579
+ "layers": [
11580
+ {
11581
+ "type": "shape",
11582
+ "transform": {
11583
+ "position": [
11584
+ 24,
11585
+ 24
11586
+ ],
11587
+ "rotation": {
11588
+ "keys": [
11589
+ {
11590
+ "t": 0,
11591
+ "v": 0
11592
+ },
11593
+ {
11594
+ "t": 1000,
11595
+ "v": 360
11596
+ }
11597
+ ]
11598
+ }
11599
+ },
11600
+ "shapes": [
11601
+ {
11602
+ "type": "ellipse",
11603
+ "size": [
11604
+ 36,
11605
+ 36
11606
+ ]
11607
+ },
11608
+ {
11609
+ "type": "trim",
11610
+ "end": 70
11611
+ },
11612
+ {
11613
+ "type": "stroke",
11614
+ "color": "$color.primary",
11615
+ "width": 4
11616
+ }
11617
+ ]
11618
+ }
11619
+ ],
11620
+ "direction": "alternate"
11621
+ }
11622
+ }
11623
+ ]
11624
+ },
11625
+ {
11626
+ "id": "specimen-motion-case-4",
11627
+ "component": "Stack",
11628
+ "props": {
11629
+ "direction": "vertical",
11630
+ "gap": "xs",
11631
+ "align": "stretch"
11632
+ },
11633
+ "children": [
11634
+ {
11635
+ "id": "specimen-motion-case-4-label",
11636
+ "component": "Text",
11637
+ "props": {
11638
+ "text": "fit · contain",
11639
+ "variant": "caption"
11640
+ }
11641
+ },
11642
+ {
11643
+ "id": "c4-motion",
11644
+ "component": "Motion",
11645
+ "props": {
11646
+ "size": [
11647
+ 48,
11648
+ 48
11649
+ ],
11650
+ "duration": 1000,
11651
+ "layers": [
11652
+ {
11653
+ "type": "shape",
11654
+ "transform": {
11655
+ "position": [
11656
+ 24,
11657
+ 24
11658
+ ],
11659
+ "rotation": {
11660
+ "keys": [
11661
+ {
11662
+ "t": 0,
11663
+ "v": 0
11664
+ },
11665
+ {
11666
+ "t": 1000,
11667
+ "v": 360
11668
+ }
11669
+ ]
11670
+ }
11671
+ },
11672
+ "shapes": [
11673
+ {
11674
+ "type": "ellipse",
11675
+ "size": [
11676
+ 36,
11677
+ 36
11678
+ ]
11679
+ },
11680
+ {
11681
+ "type": "trim",
11682
+ "end": 70
11683
+ },
11684
+ {
11685
+ "type": "stroke",
11686
+ "color": "$color.primary",
11687
+ "width": 4
11688
+ }
11689
+ ]
11690
+ }
11691
+ ],
11692
+ "fit": "contain"
11693
+ }
11694
+ }
11695
+ ]
11696
+ },
11697
+ {
11698
+ "id": "specimen-motion-case-5",
11699
+ "component": "Stack",
11700
+ "props": {
11701
+ "direction": "vertical",
11702
+ "gap": "xs",
11703
+ "align": "stretch"
11704
+ },
11705
+ "children": [
11706
+ {
11707
+ "id": "specimen-motion-case-5-label",
11708
+ "component": "Text",
11709
+ "props": {
11710
+ "text": "fit · cover",
11711
+ "variant": "caption"
11712
+ }
11713
+ },
11714
+ {
11715
+ "id": "c5-motion",
11716
+ "component": "Motion",
11717
+ "props": {
11718
+ "size": [
11719
+ 48,
11720
+ 48
11721
+ ],
11722
+ "duration": 1000,
11723
+ "layers": [
11724
+ {
11725
+ "type": "shape",
11726
+ "transform": {
11727
+ "position": [
11728
+ 24,
11729
+ 24
11730
+ ],
11731
+ "rotation": {
11732
+ "keys": [
11733
+ {
11734
+ "t": 0,
11735
+ "v": 0
11736
+ },
11737
+ {
11738
+ "t": 1000,
11739
+ "v": 360
11740
+ }
11741
+ ]
11742
+ }
11743
+ },
11744
+ "shapes": [
11745
+ {
11746
+ "type": "ellipse",
11747
+ "size": [
11748
+ 36,
11749
+ 36
11750
+ ]
11751
+ },
11752
+ {
11753
+ "type": "trim",
11754
+ "end": 70
11755
+ },
11756
+ {
11757
+ "type": "stroke",
11758
+ "color": "$color.primary",
11759
+ "width": 4
11760
+ }
11761
+ ]
11762
+ }
11763
+ ],
11764
+ "fit": "cover"
11765
+ }
11766
+ }
11767
+ ]
11768
+ },
11769
+ {
11770
+ "id": "specimen-motion-case-6",
11771
+ "component": "Stack",
11772
+ "props": {
11773
+ "direction": "vertical",
11774
+ "gap": "xs",
11775
+ "align": "stretch"
11776
+ },
11777
+ "children": [
11778
+ {
11779
+ "id": "specimen-motion-case-6-label",
11780
+ "component": "Text",
11781
+ "props": {
11782
+ "text": "fit · fill",
11783
+ "variant": "caption"
11784
+ }
11785
+ },
11786
+ {
11787
+ "id": "c6-motion",
11788
+ "component": "Motion",
11789
+ "props": {
11790
+ "size": [
11791
+ 48,
11792
+ 48
11793
+ ],
11794
+ "duration": 1000,
11795
+ "layers": [
11796
+ {
11797
+ "type": "shape",
11798
+ "transform": {
11799
+ "position": [
11800
+ 24,
11801
+ 24
11802
+ ],
11803
+ "rotation": {
11804
+ "keys": [
11805
+ {
11806
+ "t": 0,
11807
+ "v": 0
11808
+ },
11809
+ {
11810
+ "t": 1000,
11811
+ "v": 360
11812
+ }
11813
+ ]
11814
+ }
11815
+ },
11816
+ "shapes": [
11817
+ {
11818
+ "type": "ellipse",
11819
+ "size": [
11820
+ 36,
11821
+ 36
11822
+ ]
11823
+ },
11824
+ {
11825
+ "type": "trim",
11826
+ "end": 70
11827
+ },
11828
+ {
11829
+ "type": "stroke",
11830
+ "color": "$color.primary",
11831
+ "width": 4
11832
+ }
11833
+ ]
11834
+ }
11835
+ ],
11836
+ "fit": "fill"
11837
+ }
11838
+ }
11839
+ ]
11840
+ }
11841
+ ]
11842
+ }
11843
+ },
11148
11844
  {
11149
11845
  "id": "exponential-ui-demo",
11150
11846
  "component": null,