@retikz/core 0.3.0-alpha.3 → 0.3.0-alpha.5

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 (242) hide show
  1. package/README.md +41 -41
  2. package/dist/es/compile/anchor-cache.d.ts +5 -3
  3. package/dist/es/compile/anchor-cache.d.ts.map +1 -1
  4. package/dist/es/compile/anchor-cache.js +14 -10
  5. package/dist/es/compile/boundary.d.ts +19 -0
  6. package/dist/es/compile/boundary.d.ts.map +1 -0
  7. package/dist/es/compile/boundary.js +64 -0
  8. package/dist/es/compile/compile.d.ts +1 -1
  9. package/dist/es/compile/compile.d.ts.map +1 -1
  10. package/dist/es/compile/compile.js +49 -5
  11. package/dist/es/compile/node.d.ts +26 -8
  12. package/dist/es/compile/node.d.ts.map +1 -1
  13. package/dist/es/compile/node.js +103 -16
  14. package/dist/es/compile/path/anchor.d.ts.map +1 -1
  15. package/dist/es/compile/path/anchor.js +7 -6
  16. package/dist/es/compile/path/index.d.ts.map +1 -1
  17. package/dist/es/compile/path/index.js +7 -3
  18. package/dist/es/compile/path/relative.js +1 -1
  19. package/dist/es/compile/scope.d.ts.map +1 -1
  20. package/dist/es/compile/scope.js +2 -1
  21. package/dist/es/geometry/arc.d.ts +14 -0
  22. package/dist/es/geometry/arc.d.ts.map +1 -1
  23. package/dist/es/geometry/arc.js +65 -9
  24. package/dist/es/geometry/index.d.ts +1 -0
  25. package/dist/es/geometry/index.d.ts.map +1 -1
  26. package/dist/es/geometry/rect.d.ts +2 -2
  27. package/dist/es/geometry/rect.d.ts.map +1 -1
  28. package/dist/es/geometry/rect.js +3 -3
  29. package/dist/es/geometry/roundedContour.d.ts +88 -0
  30. package/dist/es/geometry/roundedContour.d.ts.map +1 -0
  31. package/dist/es/geometry/roundedContour.js +417 -0
  32. package/dist/es/index.d.ts +9 -5
  33. package/dist/es/index.d.ts.map +1 -1
  34. package/dist/es/index.js +11 -6
  35. package/dist/es/ir/animation.d.ts +218 -0
  36. package/dist/es/ir/animation.d.ts.map +1 -0
  37. package/dist/es/ir/animation.js +118 -0
  38. package/dist/es/ir/boundary.d.ts +25 -0
  39. package/dist/es/ir/boundary.d.ts.map +1 -0
  40. package/dist/es/ir/boundary.js +14 -0
  41. package/dist/es/ir/index.d.ts +3 -0
  42. package/dist/es/ir/index.d.ts.map +1 -1
  43. package/dist/es/ir/node.d.ts +219 -27
  44. package/dist/es/ir/node.d.ts.map +1 -1
  45. package/dist/es/ir/node.js +10 -3
  46. package/dist/es/ir/path/arrow.d.ts +36 -36
  47. package/dist/es/ir/path/path.d.ts +702 -203
  48. package/dist/es/ir/path/path.d.ts.map +1 -1
  49. package/dist/es/ir/path/path.js +4 -0
  50. package/dist/es/ir/path/step.d.ts +674 -154
  51. package/dist/es/ir/path/step.d.ts.map +1 -1
  52. package/dist/es/ir/path/step.js +2 -2
  53. package/dist/es/ir/path/target.d.ts +43 -8
  54. package/dist/es/ir/path/target.d.ts.map +1 -1
  55. package/dist/es/ir/path/target.js +4 -5
  56. package/dist/es/ir/scene.d.ts +156 -0
  57. package/dist/es/ir/scene.d.ts.map +1 -1
  58. package/dist/es/ir/scene.js +3 -1
  59. package/dist/es/ir/scope.d.ts +1671 -424
  60. package/dist/es/ir/scope.d.ts.map +1 -1
  61. package/dist/es/ir/scope.js +10 -2
  62. package/dist/es/ir/shape.d.ts +14 -0
  63. package/dist/es/ir/shape.d.ts.map +1 -0
  64. package/dist/es/ir/shape.js +9 -0
  65. package/dist/es/parsers/parseNodeTarget.d.ts.map +1 -1
  66. package/dist/es/parsers/parseNodeTarget.js +4 -2
  67. package/dist/es/presets/animation.d.ts +123 -0
  68. package/dist/es/presets/animation.d.ts.map +1 -0
  69. package/dist/es/presets/animation.js +272 -0
  70. package/dist/es/presets/index.d.ts +3 -0
  71. package/dist/es/presets/index.d.ts.map +1 -0
  72. package/dist/es/primitive/ellipse.d.ts +6 -0
  73. package/dist/es/primitive/ellipse.d.ts.map +1 -1
  74. package/dist/es/primitive/group.d.ts +6 -0
  75. package/dist/es/primitive/group.d.ts.map +1 -1
  76. package/dist/es/primitive/path.d.ts +6 -0
  77. package/dist/es/primitive/path.d.ts.map +1 -1
  78. package/dist/es/primitive/rect.d.ts +6 -0
  79. package/dist/es/primitive/rect.d.ts.map +1 -1
  80. package/dist/es/primitive/scene.d.ts +3 -0
  81. package/dist/es/primitive/scene.d.ts.map +1 -1
  82. package/dist/es/primitive/text.d.ts +6 -0
  83. package/dist/es/primitive/text.d.ts.map +1 -1
  84. package/dist/es/shapes/_contour.d.ts +19 -0
  85. package/dist/es/shapes/_contour.d.ts.map +1 -0
  86. package/dist/es/shapes/_contour.js +60 -0
  87. package/dist/es/shapes/_shared.d.ts +54 -0
  88. package/dist/es/shapes/_shared.d.ts.map +1 -1
  89. package/dist/es/shapes/_shared.js +68 -1
  90. package/dist/es/shapes/arc.d.ts +8 -0
  91. package/dist/es/shapes/arc.d.ts.map +1 -0
  92. package/dist/es/shapes/arc.js +104 -0
  93. package/dist/es/shapes/define.d.ts +13 -0
  94. package/dist/es/shapes/define.d.ts.map +1 -0
  95. package/dist/es/shapes/define.js +13 -0
  96. package/dist/es/shapes/ellipse.d.ts +5 -4
  97. package/dist/es/shapes/ellipse.d.ts.map +1 -1
  98. package/dist/es/shapes/ellipse.js +15 -7
  99. package/dist/es/shapes/index.d.ts +9 -6
  100. package/dist/es/shapes/index.d.ts.map +1 -1
  101. package/dist/es/shapes/index.js +10 -5
  102. package/dist/es/shapes/polygon.d.ts +13 -0
  103. package/dist/es/shapes/polygon.d.ts.map +1 -0
  104. package/dist/es/shapes/polygon.js +104 -0
  105. package/dist/es/shapes/rectangle.d.ts +7 -5
  106. package/dist/es/shapes/rectangle.d.ts.map +1 -1
  107. package/dist/es/shapes/rectangle.js +37 -8
  108. package/dist/es/shapes/sector.d.ts +9 -0
  109. package/dist/es/shapes/sector.d.ts.map +1 -0
  110. package/dist/es/shapes/sector.js +143 -0
  111. package/dist/es/shapes/star.d.ts +15 -0
  112. package/dist/es/shapes/star.d.ts.map +1 -0
  113. package/dist/es/shapes/star.js +113 -0
  114. package/dist/es/shapes/types.d.ts +47 -14
  115. package/dist/es/shapes/types.d.ts.map +1 -1
  116. package/dist/lib/compile/anchor-cache.cjs +14 -10
  117. package/dist/lib/compile/anchor-cache.d.ts +5 -3
  118. package/dist/lib/compile/anchor-cache.d.ts.map +1 -1
  119. package/dist/lib/compile/boundary.cjs +65 -0
  120. package/dist/lib/compile/boundary.d.ts +19 -0
  121. package/dist/lib/compile/boundary.d.ts.map +1 -0
  122. package/dist/lib/compile/compile.cjs +49 -5
  123. package/dist/lib/compile/compile.d.ts +1 -1
  124. package/dist/lib/compile/compile.d.ts.map +1 -1
  125. package/dist/lib/compile/node.cjs +103 -16
  126. package/dist/lib/compile/node.d.ts +26 -8
  127. package/dist/lib/compile/node.d.ts.map +1 -1
  128. package/dist/lib/compile/path/anchor.cjs +7 -6
  129. package/dist/lib/compile/path/anchor.d.ts.map +1 -1
  130. package/dist/lib/compile/path/index.cjs +7 -3
  131. package/dist/lib/compile/path/index.d.ts.map +1 -1
  132. package/dist/lib/compile/path/relative.cjs +1 -1
  133. package/dist/lib/compile/scope.cjs +2 -1
  134. package/dist/lib/compile/scope.d.ts.map +1 -1
  135. package/dist/lib/geometry/arc.cjs +66 -8
  136. package/dist/lib/geometry/arc.d.ts +14 -0
  137. package/dist/lib/geometry/arc.d.ts.map +1 -1
  138. package/dist/lib/geometry/index.d.ts +1 -0
  139. package/dist/lib/geometry/index.d.ts.map +1 -1
  140. package/dist/lib/geometry/rect.cjs +3 -3
  141. package/dist/lib/geometry/rect.d.ts +2 -2
  142. package/dist/lib/geometry/rect.d.ts.map +1 -1
  143. package/dist/lib/geometry/roundedContour.cjs +418 -0
  144. package/dist/lib/geometry/roundedContour.d.ts +88 -0
  145. package/dist/lib/geometry/roundedContour.d.ts.map +1 -0
  146. package/dist/lib/index.cjs +41 -7
  147. package/dist/lib/index.d.ts +9 -5
  148. package/dist/lib/index.d.ts.map +1 -1
  149. package/dist/lib/ir/animation.cjs +127 -0
  150. package/dist/lib/ir/animation.d.ts +218 -0
  151. package/dist/lib/ir/animation.d.ts.map +1 -0
  152. package/dist/lib/ir/boundary.cjs +15 -0
  153. package/dist/lib/ir/boundary.d.ts +25 -0
  154. package/dist/lib/ir/boundary.d.ts.map +1 -0
  155. package/dist/lib/ir/index.d.ts +3 -0
  156. package/dist/lib/ir/index.d.ts.map +1 -1
  157. package/dist/lib/ir/node.cjs +10 -3
  158. package/dist/lib/ir/node.d.ts +219 -27
  159. package/dist/lib/ir/node.d.ts.map +1 -1
  160. package/dist/lib/ir/path/arrow.d.ts +36 -36
  161. package/dist/lib/ir/path/path.cjs +4 -0
  162. package/dist/lib/ir/path/path.d.ts +702 -203
  163. package/dist/lib/ir/path/path.d.ts.map +1 -1
  164. package/dist/lib/ir/path/step.cjs +2 -2
  165. package/dist/lib/ir/path/step.d.ts +674 -154
  166. package/dist/lib/ir/path/step.d.ts.map +1 -1
  167. package/dist/lib/ir/path/target.cjs +4 -5
  168. package/dist/lib/ir/path/target.d.ts +43 -8
  169. package/dist/lib/ir/path/target.d.ts.map +1 -1
  170. package/dist/lib/ir/scene.cjs +3 -1
  171. package/dist/lib/ir/scene.d.ts +156 -0
  172. package/dist/lib/ir/scene.d.ts.map +1 -1
  173. package/dist/lib/ir/scope.cjs +10 -2
  174. package/dist/lib/ir/scope.d.ts +1671 -424
  175. package/dist/lib/ir/scope.d.ts.map +1 -1
  176. package/dist/lib/ir/shape.cjs +9 -0
  177. package/dist/lib/ir/shape.d.ts +14 -0
  178. package/dist/lib/ir/shape.d.ts.map +1 -0
  179. package/dist/lib/parsers/parseNodeTarget.cjs +4 -2
  180. package/dist/lib/parsers/parseNodeTarget.d.ts.map +1 -1
  181. package/dist/lib/presets/animation.cjs +286 -0
  182. package/dist/lib/presets/animation.d.ts +123 -0
  183. package/dist/lib/presets/animation.d.ts.map +1 -0
  184. package/dist/lib/presets/index.d.ts +3 -0
  185. package/dist/lib/presets/index.d.ts.map +1 -0
  186. package/dist/lib/primitive/ellipse.d.ts +6 -0
  187. package/dist/lib/primitive/ellipse.d.ts.map +1 -1
  188. package/dist/lib/primitive/group.d.ts +6 -0
  189. package/dist/lib/primitive/group.d.ts.map +1 -1
  190. package/dist/lib/primitive/path.d.ts +6 -0
  191. package/dist/lib/primitive/path.d.ts.map +1 -1
  192. package/dist/lib/primitive/rect.d.ts +6 -0
  193. package/dist/lib/primitive/rect.d.ts.map +1 -1
  194. package/dist/lib/primitive/scene.d.ts +3 -0
  195. package/dist/lib/primitive/scene.d.ts.map +1 -1
  196. package/dist/lib/primitive/text.d.ts +6 -0
  197. package/dist/lib/primitive/text.d.ts.map +1 -1
  198. package/dist/lib/shapes/_contour.cjs +61 -0
  199. package/dist/lib/shapes/_contour.d.ts +19 -0
  200. package/dist/lib/shapes/_contour.d.ts.map +1 -0
  201. package/dist/lib/shapes/_shared.cjs +70 -0
  202. package/dist/lib/shapes/_shared.d.ts +54 -0
  203. package/dist/lib/shapes/_shared.d.ts.map +1 -1
  204. package/dist/lib/shapes/arc.cjs +104 -0
  205. package/dist/lib/shapes/arc.d.ts +8 -0
  206. package/dist/lib/shapes/arc.d.ts.map +1 -0
  207. package/dist/lib/shapes/define.cjs +13 -0
  208. package/dist/lib/shapes/define.d.ts +13 -0
  209. package/dist/lib/shapes/define.d.ts.map +1 -0
  210. package/dist/lib/shapes/ellipse.cjs +15 -7
  211. package/dist/lib/shapes/ellipse.d.ts +5 -4
  212. package/dist/lib/shapes/ellipse.d.ts.map +1 -1
  213. package/dist/lib/shapes/index.cjs +12 -6
  214. package/dist/lib/shapes/index.d.ts +9 -6
  215. package/dist/lib/shapes/index.d.ts.map +1 -1
  216. package/dist/lib/shapes/polygon.cjs +104 -0
  217. package/dist/lib/shapes/polygon.d.ts +13 -0
  218. package/dist/lib/shapes/polygon.d.ts.map +1 -0
  219. package/dist/lib/shapes/rectangle.cjs +37 -8
  220. package/dist/lib/shapes/rectangle.d.ts +7 -5
  221. package/dist/lib/shapes/rectangle.d.ts.map +1 -1
  222. package/dist/lib/shapes/sector.cjs +143 -0
  223. package/dist/lib/shapes/sector.d.ts +9 -0
  224. package/dist/lib/shapes/sector.d.ts.map +1 -0
  225. package/dist/lib/shapes/star.cjs +113 -0
  226. package/dist/lib/shapes/star.d.ts +15 -0
  227. package/dist/lib/shapes/star.d.ts.map +1 -0
  228. package/dist/lib/shapes/types.d.ts +47 -14
  229. package/dist/lib/shapes/types.d.ts.map +1 -1
  230. package/package.json +2 -2
  231. package/dist/es/shapes/circle.d.ts +0 -8
  232. package/dist/es/shapes/circle.d.ts.map +0 -1
  233. package/dist/es/shapes/circle.js +0 -34
  234. package/dist/es/shapes/diamond.d.ts +0 -8
  235. package/dist/es/shapes/diamond.d.ts.map +0 -1
  236. package/dist/es/shapes/diamond.js +0 -66
  237. package/dist/lib/shapes/circle.cjs +0 -34
  238. package/dist/lib/shapes/circle.d.ts +0 -8
  239. package/dist/lib/shapes/circle.d.ts.map +0 -1
  240. package/dist/lib/shapes/diamond.cjs +0 -66
  241. package/dist/lib/shapes/diamond.d.ts +0 -8
  242. package/dist/lib/shapes/diamond.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../../src/ir/scope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,KAAK,MAAM,EAAc,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,KAAK,MAAM,EAAc,MAAM,QAAQ,CAAC;AAEjD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,aAAa,CAAC;AAOhE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOnB,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8GrB,CAAC"}
1
+ {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../../src/ir/scope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAwB,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,KAAK,YAAY,EAAoB,MAAM,QAAQ,CAAC;AAC7D,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,KAAK,MAAM,EAAc,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,KAAK,MAAM,EAAc,MAAM,QAAQ,CAAC;AAEjD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,aAAa,CAAC;AAOhE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASnB,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuHrB,CAAC"}
@@ -1,4 +1,6 @@
1
+ import { JsonObjectSchema } from "./json.js";
1
2
  import { FontSchema } from "./font.js";
3
+ import { AnimationTrackSchema } from "./animation.js";
2
4
  import { PaintSpecSchema } from "./paint.js";
3
5
  import { ClipSpecSchema } from "./clip.js";
4
6
  import { ArrowDetailSchema } from "./path/arrow.js";
@@ -18,7 +20,9 @@ var NodeDefaultSchema = NodeSchema.omit({
18
20
  position: true,
19
21
  text: true,
20
22
  label: true,
21
- zIndex: true
23
+ zIndex: true,
24
+ meta: true,
25
+ animations: true
22
26
  }).strict();
23
27
  /**
24
28
  * every path 默认样式 schema
@@ -29,7 +33,9 @@ var PathDefaultSchema = PathSchema.omit({
29
33
  children: true,
30
34
  arrow: true,
31
35
  arrowDetail: true,
32
- zIndex: true
36
+ zIndex: true,
37
+ meta: true,
38
+ animations: true
33
39
  }).strict();
34
40
  /**
35
41
  * every label 默认样式 schema(node label 与 step label 共享)
@@ -86,6 +92,8 @@ var ScopeSchema = z.object({
86
92
  ]))]).optional().describe("Inheritance barrier: drop the outer scope cascade + every-X defaults for the listed channels (or all when true), falling back to the built-in baseline. Only cuts the scope-inheritance axis; labels / arrows still follow their host path / node resolved color (structural relation, not scope inheritance)."),
87
93
  zIndex: z.number().int().finite().optional().describe("Explicit stacking order of this scope as a whole among its sibling IR children. Higher draws on top. Applies to the scope group as a single unit in the parent; does NOT affect how children stack inside the scope. Omitted = 0 = source order."),
88
94
  clip: ClipSpecSchema.optional().describe("Clip region (rect / circle / ellipse / polygon, in scope-local coords); when set, all children of this scope are clipped to it. Compiled into a renderer-agnostic ClipResource referenced via the group clipRef."),
95
+ meta: JsonObjectSchema.optional().describe("Opaque provenance metadata carried by this element (e.g. a Tier 2 lowering tagging which datum / series / layer it came from). Provenance passthrough: preserved verbatim into the Scene primitive(s) this element emits, ignored by renderers, and never interpreted by the compiler — it does not affect layout, connection, style, or bounding box. Must be a JSON object (fully serializable). Not inherited across scopes; not part of the every-X style defaults."),
96
+ animations: z.array(AnimationTrackSchema).optional().describe("Declarative timeline animation tracks for this scope as a whole (applied to its group). Each track animates one renderer-agnostic property over normalized time; the base value is the settled (animation-end) state. Carried verbatim into the emitted group primitive; renderers play them or render the static settled state with a diagnosable warning when unable. Does not affect layout / bounding box; not propagated to child elements; not part of the every-X style defaults."),
89
97
  children: z.array(z.lazy(() => {
90
98
  if (!childSchemaRef) throw new Error("ScopeSchema: ChildSchema not registered yet; ensure scene.ts loaded");
91
99
  return childSchemaRef;
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ export declare const ShapeRefSchema: z.ZodObject<{
3
+ type: z.ZodString;
4
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import('./json').JsonValue, z.ZodTypeDef, import('./json').JsonValue>>>;
5
+ }, "strip", z.ZodTypeAny, {
6
+ type: string;
7
+ params?: Record<string, import('./json').JsonValue> | undefined;
8
+ }, {
9
+ type: string;
10
+ params?: Record<string, import('./json').JsonValue> | undefined;
11
+ }>;
12
+ /** shape 引用:type 名 + 可选 JSON params(编译期由注册的 shape 校验字段形态) */
13
+ export type IRShapeRef = z.infer<typeof ShapeRefSchema>;
14
+ //# sourceMappingURL=shape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shape.d.ts","sourceRoot":"","sources":["../../../src/ir/shape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,cAAc;;;;;;;;;EAcxB,CAAC;AAEJ,6DAA6D;AAC7D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { JsonObjectSchema } from "./json.js";
2
+ import { z } from "zod";
3
+ //#region src/ir/shape.ts
4
+ var ShapeRefSchema = z.object({
5
+ type: z.string().min(1).describe("Shape name; built-in or registered via CompileOptions.shapes. Unregistered names are rejected at compile time."),
6
+ params: JsonObjectSchema.optional().describe("JSON-only parameter object for parametric shapes (e.g. sector { innerRadius, outerRadius, startAngle, endAngle }). Must be a plain JSON object (validated by JsonObjectSchema); the registered shape validates its own field shape via paramsSchema. Omitted for parameterless shapes.")
7
+ }).describe("Shape reference: type name + optional JSON params, validated at compile time by the registered shape.");
8
+ //#endregion
9
+ export { ShapeRefSchema };
@@ -1 +1 @@
1
- {"version":3,"file":"parseNodeTarget.d.ts","sourceRoot":"","sources":["../../../src/parsers/parseNodeTarget.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAQ1C,0CAA0C;AAC1C,eAAO,MAAM,eAAe,GAAI,GAAG,MAAM,KAAG,YAmB3C,CAAC"}
1
+ {"version":3,"file":"parseNodeTarget.d.ts","sourceRoot":"","sources":["../../../src/parsers/parseNodeTarget.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAQ1C,0CAA0C;AAC1C,eAAO,MAAM,eAAe,GAAI,GAAG,MAAM,KAAG,YAmB3C,CAAC"}
@@ -6,7 +6,9 @@ import { RECT_ANCHORS } from "../geometry/rect.js";
6
6
  * `'A'`→`{id:'A'}`;`'A.<name>'`→命名 anchor(center/north/.../south-west);`'A.<deg>'`→角度 anchor。
7
7
  * 按**第一个点**切分——含 `.` 的 id 不能用 shorthand,必须写对象 `{ id: 'a.b', anchor: 'north' }`。
8
8
  * {side,t} 边上比例点是结构化新能力、shorthand 不表达(仅对象形态)。
9
- * 不命中 anchor 名抛错(避免静默吞拼写错误)。放 parser 层(非 compile)避免 adapter 反向依赖 compile。
9
+ * 字符串 shorthand 只认内置 9 anchor(提前拦拼写错误);shape 自定义 anchor(如 sector 的
10
+ * `outer-arc-mid`)走对象形态 `{ id, anchor: 'outer-arc-mid' }`,由 compile 据目标 shape 解释。
11
+ * 放 parser 层(非 compile)避免 adapter 反向依赖 compile。
10
12
  */
11
13
  /** RECT_ANCHORS 的 9 个 anchor 名 */
12
14
  var ANCHOR_NAMES = new Set(Object.values(RECT_ANCHORS));
@@ -23,7 +25,7 @@ var parseNodeTarget = (s) => {
23
25
  id,
24
26
  anchor: Number(tail)
25
27
  };
26
- if (!ANCHOR_NAMES.has(tail)) throw new Error(`parseNodeTarget: unknown anchor '${tail}' in '${s}' (supports: ${[...ANCHOR_NAMES].join(", ")}); for ids containing '.', use the object form { id, anchor }`);
28
+ if (!ANCHOR_NAMES.has(tail)) throw new Error(`parseNodeTarget: unknown anchor '${tail}' in '${s}' (supports: ${[...ANCHOR_NAMES].join(", ")}); for ids containing '.' or shape-specific anchors, use the object form { id, anchor }`);
27
29
  return {
28
30
  id,
29
31
  anchor: tail
@@ -0,0 +1,123 @@
1
+ import { IRAnimationOrigin, IRAnimationTrack } from '../ir/animation';
2
+ /** preset 公共可调项(各 preset 在此之上加专有项;默认值由各 preset 给) */
3
+ export type AnimationPresetOptions = {
4
+ /** 单次迭代时长(毫秒);缺省由各 preset 给 */
5
+ duration?: number;
6
+ /** 首次迭代前延迟(毫秒) */
7
+ delay?: number;
8
+ /** 缓动:具名预设 / cubic-bezier 四元组 / 注册名;缺省由各 preset 给 */
9
+ easing?: IRAnimationTrack['easing'];
10
+ /** 播放触发器;缺省 load */
11
+ trigger?: IRAnimationTrack['trigger'];
12
+ };
13
+ /** 淡入:`opacity` 0→1(末帧 = base,降级见完整图) */
14
+ export declare const fadeIn: (opts?: AnimationPresetOptions) => IRAnimationTrack;
15
+ /** 描边画出:`pathDraw` 0→1(仅对有描边元素有效) */
16
+ export declare const drawOn: (opts?: AnimationPresetOptions) => IRAnimationTrack;
17
+ /** `scaleIn` 选项:起始均匀缩放 `from` + 支点 `origin` */
18
+ export type ScaleInOptions = AnimationPresetOptions & {
19
+ /** 起始缩放(末帧恒为 1 = base);缺省 0.8 */
20
+ from?: number;
21
+ /** 缩放支点(缺省几何中心) */
22
+ origin?: IRAnimationOrigin;
23
+ };
24
+ /** 缩放入场:`scale` from→1(均匀,绕 origin) */
25
+ export declare const scaleIn: (opts?: ScaleInOptions) => IRAnimationTrack;
26
+ /** 从无到有放大:`scaleIn` 的 `from: 0` 别名 */
27
+ export declare const grow: (opts?: Omit<ScaleInOptions, "from">) => IRAnimationTrack;
28
+ /** `growUp` 选项:支点 `origin`(缺省底边中点,柱状图从基线长出) */
29
+ export type GrowUpOptions = AnimationPresetOptions & {
30
+ /** 缩放支点;缺省 'south'(底边中点) */
31
+ origin?: IRAnimationOrigin;
32
+ };
33
+ /** 从基线长出:`scaleY` 0→1,支点底边(柱状图入场) */
34
+ export declare const growUp: (opts?: GrowUpOptions) => IRAnimationTrack;
35
+ /** `slideIn` 选项:轴向 + 起始位移 */
36
+ export type SlideInOptions = AnimationPresetOptions & {
37
+ /** 滑入轴向;缺省 'x' */
38
+ axis?: 'x' | 'y';
39
+ /** 起始位移(末帧恒为 0 = base);缺省 −20 */
40
+ offset?: number;
41
+ };
42
+ /** 滑入:`translateX|Y` offset→0 */
43
+ export declare const slideIn: (opts?: SlideInOptions) => IRAnimationTrack;
44
+ /** `colorShift` 选项:通道 + 起止色(均必填,纯工厂无法取 base 色) */
45
+ export type ColorShiftOptions = AnimationPresetOptions & {
46
+ /** 起始颜色(必填) */
47
+ from: string;
48
+ /** 终止颜色(必填) */
49
+ to: string;
50
+ /** 变色通道;缺省 'fill' */
51
+ channel?: 'fill' | 'stroke';
52
+ };
53
+ /** 变色:`fill|stroke` from→to(oklch 插值,由 renderer 端处理) */
54
+ export declare const colorShift: (opts: ColorShiftOptions) => IRAnimationTrack;
55
+ /** `cameraTo` 选项:起止取景 `[x,y,w,h]`(均必填,纯工厂无法取当前 layout) */
56
+ export type CameraToOptions = AnimationPresetOptions & {
57
+ /** 起始取景 `[x, y, w, h]`(必填) */
58
+ from: [number, number, number, number];
59
+ /** 终止取景 `[x, y, w, h]`(必填) */
60
+ to: [number, number, number, number];
61
+ };
62
+ /** 镜头:scene 根 `viewBox` from→to(挂 `<Layout animations>` / IR 根 `animations`) */
63
+ export declare const cameraTo: (opts: CameraToOptions) => IRAnimationTrack;
64
+ /** `pulse` 选项:峰值缩放 + 支点 */
65
+ export type PulseOptions = AnimationPresetOptions & {
66
+ /** 峰值缩放;缺省 1.1 */
67
+ peak?: number;
68
+ /** 缩放支点(缺省几何中心) */
69
+ origin?: IRAnimationOrigin;
70
+ };
71
+ /** 脉冲:`scale` 1→peak→1 无限循环(强调 / 心跳) */
72
+ export declare const pulse: (opts?: PulseOptions) => IRAnimationTrack;
73
+ /** `spin` 选项:旋转支点 */
74
+ export type SpinOptions = AnimationPresetOptions & {
75
+ /** 旋转支点(缺省几何中心) */
76
+ origin?: IRAnimationOrigin;
77
+ };
78
+ /** 旋转:`rotate` 0→360 无限循环、匀速(loader) */
79
+ export declare const spin: (opts?: SpinOptions) => IRAnimationTrack;
80
+ /** `loop` 选项:循环次数 + 方向 */
81
+ export type LoopOptions = {
82
+ /** 循环次数;缺省 'infinite' */
83
+ iterations?: IRAnimationTrack['iterations'];
84
+ /** 每次迭代方向(如 'alternate') */
85
+ direction?: IRAnimationTrack['direction'];
86
+ };
87
+ /** 循环包装:给任意 track 叠加无限(或指定次数)循环 + 方向 */
88
+ export declare const loop: (track: IRAnimationTrack, opts?: LoopOptions) => IRAnimationTrack;
89
+ /** `flash` 选项:谷值不透明度 + 闪烁次数 */
90
+ export type FlashOptions = AnimationPresetOptions & {
91
+ /** 闪烁谷值不透明度;缺省 0 */
92
+ dim?: number;
93
+ /** 闪烁次数;缺省 2 */
94
+ iterations?: IRAnimationTrack['iterations'];
95
+ };
96
+ /** 闪一下强调:`opacity` 1→dim→1,默认闪 2 次(末帧 = base = 完整可见) */
97
+ export declare const flash: (opts?: FlashOptions) => IRAnimationTrack;
98
+ /** `blink` 选项:谷值不透明度 + 闪烁次数(缺省无限) */
99
+ export type BlinkOptions = AnimationPresetOptions & {
100
+ /** 闪烁谷值不透明度;缺省 0 */
101
+ dim?: number;
102
+ /** 闪烁次数;缺省 'infinite' */
103
+ iterations?: IRAnimationTrack['iterations'];
104
+ };
105
+ /** 持续闪烁:`opacity` 1→dim→1 无限循环(blink = 无限版 flash) */
106
+ export declare const blink: (opts?: BlinkOptions) => IRAnimationTrack;
107
+ /** `wiggle` 选项:抖动幅度(度)+ 支点 + 抖动次数 */
108
+ export type WiggleOptions = AnimationPresetOptions & {
109
+ /** 抖动幅度(度);缺省 5 */
110
+ angle?: number;
111
+ /** 旋转支点(缺省几何中心) */
112
+ origin?: IRAnimationOrigin;
113
+ /** 抖动次数;缺省 3 */
114
+ iterations?: IRAnimationTrack['iterations'];
115
+ };
116
+ /** 抖动强调:`rotate` 0→+a→−a→+a→0 来回摆(末帧 = base 不旋转) */
117
+ export declare const wiggle: (opts?: WiggleOptions) => IRAnimationTrack;
118
+ /**
119
+ * 错峰:给一组 track 依次叠加 delay(`startMs + i*stepMs`),实现「N 元素依次入场」
120
+ * @description 覆盖各 track 原有 delay(错峰编排以本 helper 为准)。
121
+ */
122
+ export declare const stagger: (tracks: ReadonlyArray<IRAnimationTrack>, stepMs: number, startMs?: number) => Array<IRAnimationTrack>;
123
+ //# sourceMappingURL=animation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animation.d.ts","sourceRoot":"","sources":["../../../src/presets/animation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,272 @@
1
+ import { AnimationProperty } from "../ir/animation.js";
2
+ //#region src/presets/animation.ts
3
+ /**
4
+ * 具名动画 preset 工厂(Sugar):把 roadmap §动画配方表实装成 `fadeIn()` / `spin()` / `growUp()` … 函数
5
+ * @description 纯函数、产 `IRAnimationTrack`,用于 `animations={[fadeIn(), scaleIn()]}`。不引入新能力——
6
+ * 产出逐字段等于手写 track(Sugar=Kernel 等价),播放 / 降级全走 renderer 既有通路。默认值 = 配方表,单一真源。
7
+ */
8
+ /** 把公共项叠到 track(duration/easing 取 opts 覆盖否则 preset 默认;delay/trigger 仅在给定时写入) */
9
+ var applyBase = (base, opts) => ({
10
+ duration: opts.duration ?? base.duration,
11
+ easing: opts.easing ?? base.easing,
12
+ ...opts.delay !== void 0 ? { delay: opts.delay } : {},
13
+ ...opts.trigger !== void 0 ? { trigger: opts.trigger } : {}
14
+ });
15
+ /** 淡入:`opacity` 0→1(末帧 = base,降级见完整图) */
16
+ var fadeIn = (opts = {}) => ({
17
+ property: AnimationProperty.Opacity,
18
+ keyframes: [{
19
+ at: 0,
20
+ value: 0
21
+ }, {
22
+ at: 1,
23
+ value: 1
24
+ }],
25
+ ...applyBase({
26
+ duration: 400,
27
+ easing: "ease-out"
28
+ }, opts)
29
+ });
30
+ /** 描边画出:`pathDraw` 0→1(仅对有描边元素有效) */
31
+ var drawOn = (opts = {}) => ({
32
+ property: AnimationProperty.PathDraw,
33
+ keyframes: [{
34
+ at: 0,
35
+ value: 0
36
+ }, {
37
+ at: 1,
38
+ value: 1
39
+ }],
40
+ ...applyBase({
41
+ duration: 600,
42
+ easing: "ease-in-out"
43
+ }, opts)
44
+ });
45
+ /** 缩放入场:`scale` from→1(均匀,绕 origin) */
46
+ var scaleIn = (opts = {}) => ({
47
+ property: AnimationProperty.Scale,
48
+ keyframes: [{
49
+ at: 0,
50
+ value: opts.from ?? .8
51
+ }, {
52
+ at: 1,
53
+ value: 1
54
+ }],
55
+ ...opts.origin !== void 0 ? { origin: opts.origin } : {},
56
+ ...applyBase({
57
+ duration: 400,
58
+ easing: "ease-out"
59
+ }, opts)
60
+ });
61
+ /** 从无到有放大:`scaleIn` 的 `from: 0` 别名 */
62
+ var grow = (opts = {}) => scaleIn({
63
+ ...opts,
64
+ from: 0
65
+ });
66
+ /** 从基线长出:`scaleY` 0→1,支点底边(柱状图入场) */
67
+ var growUp = (opts = {}) => ({
68
+ property: AnimationProperty.ScaleY,
69
+ keyframes: [{
70
+ at: 0,
71
+ value: 0
72
+ }, {
73
+ at: 1,
74
+ value: 1
75
+ }],
76
+ origin: opts.origin ?? "south",
77
+ ...applyBase({
78
+ duration: 500,
79
+ easing: "ease-out"
80
+ }, opts)
81
+ });
82
+ /** 滑入:`translateX|Y` offset→0 */
83
+ var slideIn = (opts = {}) => ({
84
+ property: (opts.axis ?? "x") === "y" ? AnimationProperty.TranslateY : AnimationProperty.TranslateX,
85
+ keyframes: [{
86
+ at: 0,
87
+ value: opts.offset ?? -20
88
+ }, {
89
+ at: 1,
90
+ value: 0
91
+ }],
92
+ ...applyBase({
93
+ duration: 400,
94
+ easing: "ease-out"
95
+ }, opts)
96
+ });
97
+ /** 变色:`fill|stroke` from→to(oklch 插值,由 renderer 端处理) */
98
+ var colorShift = (opts) => {
99
+ const { from, to } = opts;
100
+ if (from === void 0 || to === void 0) throw new Error("colorShift: `from` and `to` colors are required.");
101
+ return {
102
+ property: (opts.channel ?? "fill") === "stroke" ? AnimationProperty.Stroke : AnimationProperty.Fill,
103
+ keyframes: [{
104
+ at: 0,
105
+ value: from
106
+ }, {
107
+ at: 1,
108
+ value: to
109
+ }],
110
+ ...applyBase({
111
+ duration: 400,
112
+ easing: "ease-in-out"
113
+ }, opts)
114
+ };
115
+ };
116
+ /** 镜头:scene 根 `viewBox` from→to(挂 `<Layout animations>` / IR 根 `animations`) */
117
+ var cameraTo = (opts) => {
118
+ const { from, to } = opts;
119
+ if (from === void 0 || to === void 0) throw new Error("cameraTo: `from` and `to` viewBox [x, y, w, h] are required.");
120
+ return {
121
+ property: AnimationProperty.ViewBox,
122
+ keyframes: [{
123
+ at: 0,
124
+ value: from
125
+ }, {
126
+ at: 1,
127
+ value: to
128
+ }],
129
+ ...applyBase({
130
+ duration: 800,
131
+ easing: "ease-in-out"
132
+ }, opts)
133
+ };
134
+ };
135
+ /** 脉冲:`scale` 1→peak→1 无限循环(强调 / 心跳) */
136
+ var pulse = (opts = {}) => ({
137
+ property: AnimationProperty.Scale,
138
+ keyframes: [
139
+ {
140
+ at: 0,
141
+ value: 1
142
+ },
143
+ {
144
+ at: .5,
145
+ value: opts.peak ?? 1.1
146
+ },
147
+ {
148
+ at: 1,
149
+ value: 1
150
+ }
151
+ ],
152
+ iterations: "infinite",
153
+ ...opts.origin !== void 0 ? { origin: opts.origin } : {},
154
+ ...applyBase({
155
+ duration: 1e3,
156
+ easing: "ease-in-out"
157
+ }, opts)
158
+ });
159
+ /** 旋转:`rotate` 0→360 无限循环、匀速(loader) */
160
+ var spin = (opts = {}) => ({
161
+ property: AnimationProperty.Rotate,
162
+ keyframes: [{
163
+ at: 0,
164
+ value: 0
165
+ }, {
166
+ at: 1,
167
+ value: 360
168
+ }],
169
+ iterations: "infinite",
170
+ ...opts.origin !== void 0 ? { origin: opts.origin } : {},
171
+ ...applyBase({
172
+ duration: 1e3,
173
+ easing: "linear"
174
+ }, opts)
175
+ });
176
+ /** 循环包装:给任意 track 叠加无限(或指定次数)循环 + 方向 */
177
+ var loop = (track, opts = {}) => ({
178
+ ...track,
179
+ iterations: opts.iterations ?? "infinite",
180
+ ...opts.direction !== void 0 ? { direction: opts.direction } : {}
181
+ });
182
+ /** 闪一下强调:`opacity` 1→dim→1,默认闪 2 次(末帧 = base = 完整可见) */
183
+ var flash = (opts = {}) => ({
184
+ property: AnimationProperty.Opacity,
185
+ keyframes: [
186
+ {
187
+ at: 0,
188
+ value: 1
189
+ },
190
+ {
191
+ at: .5,
192
+ value: opts.dim ?? 0
193
+ },
194
+ {
195
+ at: 1,
196
+ value: 1
197
+ }
198
+ ],
199
+ iterations: opts.iterations ?? 2,
200
+ ...applyBase({
201
+ duration: 300,
202
+ easing: "ease-in-out"
203
+ }, opts)
204
+ });
205
+ /** 持续闪烁:`opacity` 1→dim→1 无限循环(blink = 无限版 flash) */
206
+ var blink = (opts = {}) => ({
207
+ property: AnimationProperty.Opacity,
208
+ keyframes: [
209
+ {
210
+ at: 0,
211
+ value: 1
212
+ },
213
+ {
214
+ at: .5,
215
+ value: opts.dim ?? 0
216
+ },
217
+ {
218
+ at: 1,
219
+ value: 1
220
+ }
221
+ ],
222
+ iterations: opts.iterations ?? "infinite",
223
+ ...applyBase({
224
+ duration: 800,
225
+ easing: "ease-in-out"
226
+ }, opts)
227
+ });
228
+ /** 抖动强调:`rotate` 0→+a→−a→+a→0 来回摆(末帧 = base 不旋转) */
229
+ var wiggle = (opts = {}) => {
230
+ const angle = opts.angle ?? 5;
231
+ return {
232
+ property: AnimationProperty.Rotate,
233
+ keyframes: [
234
+ {
235
+ at: 0,
236
+ value: 0
237
+ },
238
+ {
239
+ at: .25,
240
+ value: angle
241
+ },
242
+ {
243
+ at: .5,
244
+ value: -angle
245
+ },
246
+ {
247
+ at: .75,
248
+ value: angle
249
+ },
250
+ {
251
+ at: 1,
252
+ value: 0
253
+ }
254
+ ],
255
+ iterations: opts.iterations ?? 3,
256
+ ...opts.origin !== void 0 ? { origin: opts.origin } : {},
257
+ ...applyBase({
258
+ duration: 400,
259
+ easing: "ease-in-out"
260
+ }, opts)
261
+ };
262
+ };
263
+ /**
264
+ * 错峰:给一组 track 依次叠加 delay(`startMs + i*stepMs`),实现「N 元素依次入场」
265
+ * @description 覆盖各 track 原有 delay(错峰编排以本 helper 为准)。
266
+ */
267
+ var stagger = (tracks, stepMs, startMs = 0) => tracks.map((track, index) => ({
268
+ ...track,
269
+ delay: startMs + index * stepMs
270
+ }));
271
+ //#endregion
272
+ export { blink, cameraTo, colorShift, drawOn, fadeIn, flash, grow, growUp, loop, pulse, scaleIn, slideIn, spin, stagger, wiggle };
@@ -0,0 +1,3 @@
1
+ /** 动画 preset 工厂 barrel */
2
+ export * from './animation';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/presets/index.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,cAAc,aAAa,CAAC"}
@@ -1,8 +1,14 @@
1
+ import { IRAnimationTrack } from '../ir/animation';
2
+ import { IRJsonObject } from '../ir/json';
1
3
  import { PaintValue } from './paint';
2
4
  export type EllipsePrim = {
3
5
  type: 'ellipse';
4
6
  /** 稳定挂点 id:compile 从 IR 元素 user id stamp,供 renderer emit data-retikz-id / canvas hit-test */
5
7
  id?: string;
8
+ /** provenance 元数据:compile 从 IR 元素(node / path / scope)的 `meta` 原样 stamp,renderer 忽略(不进 DOM),交互层 / 工具链从 Scene 读 */
9
+ meta?: IRJsonObject;
10
+ /** 时间轴动画 tracks:compile 从 IR 元素的 animations 原样 stamp;renderer 能播则播、不能则渲染 settled 静态态并 warn(不丢图) */
11
+ animations?: Array<IRAnimationTrack>;
6
12
  cx: number;
7
13
  cy: number;
8
14
  rx: number;
@@ -1 +1 @@
1
- {"version":3,"file":"ellipse.d.ts","sourceRoot":"","sources":["../../../src/primitive/ellipse.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,6FAA6F;IAC7F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,cAAc;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B,gBAAgB;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC"}
1
+ {"version":3,"file":"ellipse.d.ts","sourceRoot":"","sources":["../../../src/primitive/ellipse.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,6FAA6F;IAC7F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kHAAkH;IAClH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,mGAAmG;IACnG,UAAU,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,cAAc;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B,gBAAgB;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { IRAnimationTrack } from '../ir/animation';
2
+ import { IRJsonObject } from '../ir/json';
1
3
  import { ScenePrimitive } from './scene';
2
4
  /** Translate transform:沿 x / y 平移(user units) */
3
5
  export type TranslateTransform = {
@@ -39,6 +41,10 @@ export type GroupPrim = {
39
41
  type: 'group';
40
42
  /** 稳定挂点 id:compile 从 IR 元素 user id stamp,供 renderer emit data-retikz-id / canvas hit-test */
41
43
  id?: string;
44
+ /** provenance 元数据:compile 从 IR 元素(node / path / scope)的 `meta` 原样 stamp,renderer 忽略(不进 DOM),交互层 / 工具链从 Scene 读 */
45
+ meta?: IRJsonObject;
46
+ /** 时间轴动画 tracks:compile 从 IR 元素的 animations 原样 stamp;renderer 能播则播、不能则渲染 settled 静态态并 warn(不丢图) */
47
+ animations?: Array<IRAnimationTrack>;
42
48
  /** 结构化变换序列,按数组顺序应用;undefined / 空数组表示无变换 */
43
49
  transforms?: Array<Transform>;
44
50
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../src/primitive/group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,iDAAiD;AACjD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,YAAY;IACZ,IAAI,EAAE,WAAW,CAAC;IAClB,aAAa;IACb,CAAC,EAAE,MAAM,CAAC;IACV,wBAAwB;IACxB,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,uDAAuD;AACvD,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY;IACZ,IAAI,EAAE,QAAQ,CAAC;IACf,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mBAAmB;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,8CAA8C;AAC9C,MAAM,MAAM,cAAc,GAAG;IAC3B,YAAY;IACZ,IAAI,EAAE,OAAO,CAAC;IACd,cAAc;IACd,CAAC,EAAE,MAAM,CAAC;IACV,2BAA2B;IAC3B,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,eAAe,GACf,cAAc,CAAC;AAEnB,2CAA2C;AAC3C,MAAM,MAAM,SAAS,GAAG;IACtB,YAAY;IACZ,IAAI,EAAE,OAAO,CAAC;IACd,6FAA6F;IAC7F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY;IACZ,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;CACjC,CAAC"}
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../src/primitive/group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,iDAAiD;AACjD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,YAAY;IACZ,IAAI,EAAE,WAAW,CAAC;IAClB,aAAa;IACb,CAAC,EAAE,MAAM,CAAC;IACV,wBAAwB;IACxB,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,uDAAuD;AACvD,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY;IACZ,IAAI,EAAE,QAAQ,CAAC;IACf,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mBAAmB;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,8CAA8C;AAC9C,MAAM,MAAM,cAAc,GAAG;IAC3B,YAAY;IACZ,IAAI,EAAE,OAAO,CAAC;IACd,cAAc;IACd,CAAC,EAAE,MAAM,CAAC;IACV,2BAA2B;IAC3B,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,eAAe,GACf,cAAc,CAAC;AAEnB,2CAA2C;AAC3C,MAAM,MAAM,SAAS,GAAG;IACtB,YAAY;IACZ,IAAI,EAAE,OAAO,CAAC;IACd,6FAA6F;IAC7F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kHAAkH;IAClH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,mGAAmG;IACnG,UAAU,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACrC,2CAA2C;IAC3C,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY;IACZ,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;CACjC,CAAC"}
@@ -1,4 +1,6 @@
1
1
  import { ArrowShapeName } from '../ir/path/arrow';
2
+ import { IRAnimationTrack } from '../ir/animation';
3
+ import { IRJsonObject } from '../ir/json';
2
4
  import { MarkerPrimitive } from './marker';
3
5
  import { PaintValue } from './paint';
4
6
  /** Move command:移动游标到目标点,不绘制 */
@@ -110,6 +112,10 @@ export type PathPrim = {
110
112
  type: 'path';
111
113
  /** 稳定挂点 id:compile 从 IR 元素 user id stamp,供 renderer emit data-retikz-id / canvas hit-test */
112
114
  id?: string;
115
+ /** provenance 元数据:compile 从 IR 元素(node / path / scope)的 `meta` 原样 stamp,renderer 忽略(不进 DOM),交互层 / 工具链从 Scene 读 */
116
+ meta?: IRJsonObject;
117
+ /** 时间轴动画 tracks:compile 从 IR 元素的 animations 原样 stamp;renderer 能播则播、不能则渲染 settled 静态态并 warn(不丢图) */
118
+ animations?: Array<IRAnimationTrack>;
113
119
  /** 结构化路径命令序列,按数组顺序绘制 */
114
120
  commands: Array<PathCommand>;
115
121
  /** 填充:纯色 / 资源表 paint server(gradient)/ contextStroke;不填表示不填充 */
@@ -1 +1 @@
1
- {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../src/primitive/path.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../src/primitive/path.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { IRAnimationTrack } from '../ir/animation';
2
+ import { IRJsonObject } from '../ir/json';
1
3
  import { PaintValue } from './paint';
2
4
  /** 矩形原语 */
3
5
  export type RectPrim = {
@@ -5,6 +7,10 @@ export type RectPrim = {
5
7
  type: 'rect';
6
8
  /** 稳定挂点 id:compile 从 IR 元素 user id stamp,供 renderer emit data-retikz-id / canvas hit-test */
7
9
  id?: string;
10
+ /** provenance 元数据:compile 从 IR 元素(node / path / scope)的 `meta` 原样 stamp,renderer 忽略(不进 DOM),交互层 / 工具链从 Scene 读 */
11
+ meta?: IRJsonObject;
12
+ /** 时间轴动画 tracks:compile 从 IR 元素的 animations 原样 stamp;renderer 能播则播、不能则渲染 settled 静态态并 warn(不丢图) */
13
+ animations?: Array<IRAnimationTrack>;
8
14
  /** 左上角横坐标 */
9
15
  x: number;
10
16
  /** 左上角纵坐标 */