@retikz/core 0.3.0-beta.1 → 0.3.0-beta.2

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 (203) hide show
  1. package/dist/es/arrows/index.d.ts.map +1 -1
  2. package/dist/es/arrows/index.js +1 -1
  3. package/dist/es/compile/anchor-cache.js +3 -3
  4. package/dist/es/compile/compile.d.ts.map +1 -1
  5. package/dist/es/compile/compile.js +13 -10
  6. package/dist/es/compile/constant.d.ts +1 -3
  7. package/dist/es/compile/constant.d.ts.map +1 -1
  8. package/dist/es/compile/constant.js +2 -4
  9. package/dist/es/compile/node.d.ts +3 -3
  10. package/dist/es/compile/node.d.ts.map +1 -1
  11. package/dist/es/compile/node.js +19 -9
  12. package/dist/es/compile/path/index.d.ts.map +1 -1
  13. package/dist/es/compile/path/index.js +40 -10
  14. package/dist/es/compile/path/label.d.ts.map +1 -1
  15. package/dist/es/compile/path/label.js +8 -4
  16. package/dist/es/compile/scope.d.ts +1 -1
  17. package/dist/es/compile/scope.d.ts.map +1 -1
  18. package/dist/es/compile/scope.js +17 -5
  19. package/dist/es/compile/text-metrics.d.ts +1 -1
  20. package/dist/es/compile/text-metrics.js +2 -2
  21. package/dist/es/geometry/bend.js +1 -1
  22. package/dist/es/geometry/contour.d.ts +5 -0
  23. package/dist/es/geometry/contour.d.ts.map +1 -1
  24. package/dist/es/geometry/contour.js +5 -3
  25. package/dist/es/geometry/diamond.d.ts +7 -1
  26. package/dist/es/geometry/diamond.d.ts.map +1 -1
  27. package/dist/es/geometry/diamond.js +9 -1
  28. package/dist/es/geometry/ellipse.d.ts.map +1 -1
  29. package/dist/es/geometry/ellipse.js +2 -0
  30. package/dist/es/geometry/index.d.ts +4 -0
  31. package/dist/es/geometry/index.d.ts.map +1 -1
  32. package/dist/es/geometry/segment.d.ts +7 -0
  33. package/dist/es/geometry/segment.d.ts.map +1 -1
  34. package/dist/es/geometry/segment.js +24 -1
  35. package/dist/es/index.d.ts +4 -4
  36. package/dist/es/index.d.ts.map +1 -1
  37. package/dist/es/index.js +4 -3
  38. package/dist/es/ir/animation.d.ts +20 -120
  39. package/dist/es/ir/animation.d.ts.map +1 -1
  40. package/dist/es/ir/animation.js +6 -6
  41. package/dist/es/ir/boundary.d.ts +3 -9
  42. package/dist/es/ir/boundary.d.ts.map +1 -1
  43. package/dist/es/ir/clip.d.ts +6 -46
  44. package/dist/es/ir/clip.d.ts.map +1 -1
  45. package/dist/es/ir/composite.d.ts +2 -14
  46. package/dist/es/ir/composite.d.ts.map +1 -1
  47. package/dist/es/ir/coordinate.d.ts +6 -42
  48. package/dist/es/ir/coordinate.d.ts.map +1 -1
  49. package/dist/es/ir/coordinate.js +1 -1
  50. package/dist/es/ir/font.d.ts +10 -13
  51. package/dist/es/ir/font.d.ts.map +1 -1
  52. package/dist/es/ir/json.d.ts +1 -1
  53. package/dist/es/ir/json.d.ts.map +1 -1
  54. package/dist/es/ir/json.js +1 -1
  55. package/dist/es/ir/node.d.ts +123 -770
  56. package/dist/es/ir/node.d.ts.map +1 -1
  57. package/dist/es/ir/node.js +2 -2
  58. package/dist/es/ir/paint.d.ts +13 -91
  59. package/dist/es/ir/paint.d.ts.map +1 -1
  60. package/dist/es/ir/path/arrow.d.ts +4 -117
  61. package/dist/es/ir/path/arrow.d.ts.map +1 -1
  62. package/dist/es/ir/path/path.d.ts +511 -3798
  63. package/dist/es/ir/path/path.d.ts.map +1 -1
  64. package/dist/es/ir/path/path.js +2 -2
  65. package/dist/es/ir/path/step.d.ts +917 -4374
  66. package/dist/es/ir/path/step.d.ts.map +1 -1
  67. package/dist/es/ir/path/step.js +7 -7
  68. package/dist/es/ir/path/target.d.ts +40 -121
  69. package/dist/es/ir/path/target.d.ts.map +1 -1
  70. package/dist/es/ir/position/at-position.d.ts +2 -10
  71. package/dist/es/ir/position/at-position.d.ts.map +1 -1
  72. package/dist/es/ir/position/at-position.js +1 -1
  73. package/dist/es/ir/position/offset-position.d.ts +2 -8
  74. package/dist/es/ir/position/offset-position.d.ts.map +1 -1
  75. package/dist/es/ir/scene.d.ts +17 -181
  76. package/dist/es/ir/scene.d.ts.map +1 -1
  77. package/dist/es/ir/scope.d.ts +283 -8761
  78. package/dist/es/ir/scope.d.ts.map +1 -1
  79. package/dist/es/ir/scope.js +5 -2
  80. package/dist/es/ir/shape.d.ts +2 -8
  81. package/dist/es/ir/shape.d.ts.map +1 -1
  82. package/dist/es/ir/text.d.ts +24 -70
  83. package/dist/es/ir/text.d.ts.map +1 -1
  84. package/dist/es/ir/transform.d.ts +23 -147
  85. package/dist/es/ir/transform.d.ts.map +1 -1
  86. package/dist/es/ir/transform.js +3 -3
  87. package/dist/es/parsers/way.d.ts +1 -1
  88. package/dist/es/parsers/way.js +1 -1
  89. package/dist/es/primitive/marker.d.ts +6 -6
  90. package/dist/es/primitive/marker.d.ts.map +1 -1
  91. package/dist/es/shapes/arc.d.ts.map +1 -1
  92. package/dist/es/shapes/arc.js +23 -4
  93. package/dist/es/shapes/rectangle.js +1 -1
  94. package/dist/es/shapes/shared.d.ts +3 -2
  95. package/dist/es/shapes/shared.d.ts.map +1 -1
  96. package/dist/es/shapes/shared.js +5 -3
  97. package/dist/es/shapes/star.d.ts.map +1 -1
  98. package/dist/es/shapes/star.js +2 -1
  99. package/dist/es/shapes/types.d.ts +10 -3
  100. package/dist/es/shapes/types.d.ts.map +1 -1
  101. package/dist/es/types.d.ts +1 -1
  102. package/dist/lib/arrows/index.cjs +1 -1
  103. package/dist/lib/arrows/index.d.ts.map +1 -1
  104. package/dist/lib/compile/anchor-cache.cjs +3 -3
  105. package/dist/lib/compile/compile.cjs +13 -10
  106. package/dist/lib/compile/compile.d.ts.map +1 -1
  107. package/dist/lib/compile/constant.cjs +2 -4
  108. package/dist/lib/compile/constant.d.ts +1 -3
  109. package/dist/lib/compile/constant.d.ts.map +1 -1
  110. package/dist/lib/compile/node.cjs +19 -9
  111. package/dist/lib/compile/node.d.ts +3 -3
  112. package/dist/lib/compile/node.d.ts.map +1 -1
  113. package/dist/lib/compile/path/index.cjs +39 -9
  114. package/dist/lib/compile/path/index.d.ts.map +1 -1
  115. package/dist/lib/compile/path/label.cjs +8 -4
  116. package/dist/lib/compile/path/label.d.ts.map +1 -1
  117. package/dist/lib/compile/scope.cjs +17 -5
  118. package/dist/lib/compile/scope.d.ts +1 -1
  119. package/dist/lib/compile/scope.d.ts.map +1 -1
  120. package/dist/lib/compile/text-metrics.cjs +2 -2
  121. package/dist/lib/compile/text-metrics.d.ts +1 -1
  122. package/dist/lib/geometry/bend.cjs +1 -1
  123. package/dist/lib/geometry/contour.cjs +5 -3
  124. package/dist/lib/geometry/contour.d.ts +5 -0
  125. package/dist/lib/geometry/contour.d.ts.map +1 -1
  126. package/dist/lib/geometry/diamond.cjs +9 -1
  127. package/dist/lib/geometry/diamond.d.ts +7 -1
  128. package/dist/lib/geometry/diamond.d.ts.map +1 -1
  129. package/dist/lib/geometry/ellipse.cjs +2 -0
  130. package/dist/lib/geometry/ellipse.d.ts.map +1 -1
  131. package/dist/lib/geometry/index.d.ts +4 -0
  132. package/dist/lib/geometry/index.d.ts.map +1 -1
  133. package/dist/lib/geometry/segment.cjs +24 -0
  134. package/dist/lib/geometry/segment.d.ts +7 -0
  135. package/dist/lib/geometry/segment.d.ts.map +1 -1
  136. package/dist/lib/index.cjs +6 -0
  137. package/dist/lib/index.d.ts +4 -4
  138. package/dist/lib/index.d.ts.map +1 -1
  139. package/dist/lib/ir/animation.cjs +6 -6
  140. package/dist/lib/ir/animation.d.ts +20 -120
  141. package/dist/lib/ir/animation.d.ts.map +1 -1
  142. package/dist/lib/ir/boundary.d.ts +3 -9
  143. package/dist/lib/ir/boundary.d.ts.map +1 -1
  144. package/dist/lib/ir/clip.d.ts +6 -46
  145. package/dist/lib/ir/clip.d.ts.map +1 -1
  146. package/dist/lib/ir/composite.d.ts +2 -14
  147. package/dist/lib/ir/composite.d.ts.map +1 -1
  148. package/dist/lib/ir/coordinate.cjs +1 -1
  149. package/dist/lib/ir/coordinate.d.ts +6 -42
  150. package/dist/lib/ir/coordinate.d.ts.map +1 -1
  151. package/dist/lib/ir/font.d.ts +10 -13
  152. package/dist/lib/ir/font.d.ts.map +1 -1
  153. package/dist/lib/ir/json.cjs +1 -1
  154. package/dist/lib/ir/json.d.ts +1 -1
  155. package/dist/lib/ir/json.d.ts.map +1 -1
  156. package/dist/lib/ir/node.cjs +2 -2
  157. package/dist/lib/ir/node.d.ts +123 -770
  158. package/dist/lib/ir/node.d.ts.map +1 -1
  159. package/dist/lib/ir/paint.d.ts +13 -91
  160. package/dist/lib/ir/paint.d.ts.map +1 -1
  161. package/dist/lib/ir/path/arrow.d.ts +4 -117
  162. package/dist/lib/ir/path/arrow.d.ts.map +1 -1
  163. package/dist/lib/ir/path/path.cjs +3 -1
  164. package/dist/lib/ir/path/path.d.ts +511 -3798
  165. package/dist/lib/ir/path/path.d.ts.map +1 -1
  166. package/dist/lib/ir/path/step.cjs +7 -7
  167. package/dist/lib/ir/path/step.d.ts +917 -4374
  168. package/dist/lib/ir/path/step.d.ts.map +1 -1
  169. package/dist/lib/ir/path/target.d.ts +40 -121
  170. package/dist/lib/ir/path/target.d.ts.map +1 -1
  171. package/dist/lib/ir/position/at-position.cjs +1 -1
  172. package/dist/lib/ir/position/at-position.d.ts +2 -10
  173. package/dist/lib/ir/position/at-position.d.ts.map +1 -1
  174. package/dist/lib/ir/position/offset-position.d.ts +2 -8
  175. package/dist/lib/ir/position/offset-position.d.ts.map +1 -1
  176. package/dist/lib/ir/scene.d.ts +17 -181
  177. package/dist/lib/ir/scene.d.ts.map +1 -1
  178. package/dist/lib/ir/scope.cjs +5 -2
  179. package/dist/lib/ir/scope.d.ts +283 -8761
  180. package/dist/lib/ir/scope.d.ts.map +1 -1
  181. package/dist/lib/ir/shape.d.ts +2 -8
  182. package/dist/lib/ir/shape.d.ts.map +1 -1
  183. package/dist/lib/ir/text.d.ts +24 -70
  184. package/dist/lib/ir/text.d.ts.map +1 -1
  185. package/dist/lib/ir/transform.cjs +3 -3
  186. package/dist/lib/ir/transform.d.ts +23 -147
  187. package/dist/lib/ir/transform.d.ts.map +1 -1
  188. package/dist/lib/parsers/way.cjs +1 -1
  189. package/dist/lib/parsers/way.d.ts +1 -1
  190. package/dist/lib/primitive/marker.d.ts +6 -6
  191. package/dist/lib/primitive/marker.d.ts.map +1 -1
  192. package/dist/lib/shapes/arc.cjs +22 -3
  193. package/dist/lib/shapes/arc.d.ts.map +1 -1
  194. package/dist/lib/shapes/rectangle.cjs +1 -1
  195. package/dist/lib/shapes/shared.cjs +5 -3
  196. package/dist/lib/shapes/shared.d.ts +3 -2
  197. package/dist/lib/shapes/shared.d.ts.map +1 -1
  198. package/dist/lib/shapes/star.cjs +2 -1
  199. package/dist/lib/shapes/star.d.ts.map +1 -1
  200. package/dist/lib/shapes/types.d.ts +10 -3
  201. package/dist/lib/shapes/types.d.ts.map +1 -1
  202. package/dist/lib/types.d.ts +1 -1
  203. package/package.json +2 -2
@@ -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,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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W;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyHrB,CAAC"}
1
+ {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../../src/ir/scope.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,8 @@
1
1
  import { z } from 'zod';
2
2
  export declare const ShapeRefSchema: z.ZodObject<{
3
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
- }>;
4
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<import('./json').JsonValue, unknown, z.core.$ZodTypeInternals<import('./json').JsonValue, unknown>>>>;
5
+ }, z.core.$strip>;
12
6
  /** shape 引用:type 名 + 可选 JSON params(编译期由注册的 shape 校验字段形态) */
13
7
  export type IRShapeRef = z.infer<typeof ShapeRefSchema>;
14
8
  //# sourceMappingURL=shape.d.ts.map
@@ -1 +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"}
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;;;iBAcxB,CAAC;AAEJ,6DAA6D;AAC7D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
@@ -3,94 +3,48 @@ import { z } from 'zod';
3
3
  * 单行文本规格:纯字符串走块级默认,对象形式可覆盖 fill/opacity/font
4
4
  * @description 行级覆盖只生效于本行;font 子字段未填则继承块级;align/lineHeight 不可被行覆盖
5
5
  */
6
- export declare const LineSpecSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
6
+ export declare const LineSpecSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
7
7
  text: z.ZodString;
8
8
  fill: z.ZodOptional<z.ZodString>;
9
9
  opacity: z.ZodOptional<z.ZodNumber>;
10
10
  font: z.ZodOptional<z.ZodObject<{
11
11
  family: z.ZodOptional<z.ZodString>;
12
12
  size: z.ZodOptional<z.ZodNumber>;
13
- weight: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["normal", "bold"]>, z.ZodNumber]>>;
14
- style: z.ZodOptional<z.ZodEnum<["normal", "italic", "oblique"]>>;
15
- }, "strip", z.ZodTypeAny, {
16
- family?: string | undefined;
17
- size?: number | undefined;
18
- weight?: number | "normal" | "bold" | undefined;
19
- style?: "normal" | "italic" | "oblique" | undefined;
20
- }, {
21
- family?: string | undefined;
22
- size?: number | undefined;
23
- weight?: number | "normal" | "bold" | undefined;
24
- style?: "normal" | "italic" | "oblique" | undefined;
25
- }>>;
26
- }, "strip", z.ZodTypeAny, {
27
- text: string;
28
- fill?: string | undefined;
29
- opacity?: number | undefined;
30
- font?: {
31
- family?: string | undefined;
32
- size?: number | undefined;
33
- weight?: number | "normal" | "bold" | undefined;
34
- style?: "normal" | "italic" | "oblique" | undefined;
35
- } | undefined;
36
- }, {
37
- text: string;
38
- fill?: string | undefined;
39
- opacity?: number | undefined;
40
- font?: {
41
- family?: string | undefined;
42
- size?: number | undefined;
43
- weight?: number | "normal" | "bold" | undefined;
44
- style?: "normal" | "italic" | "oblique" | undefined;
45
- } | undefined;
46
- }>]>;
13
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
14
+ bold: "bold";
15
+ normal: "normal";
16
+ }>, z.ZodNumber]>>;
17
+ style: z.ZodOptional<z.ZodEnum<{
18
+ normal: "normal";
19
+ italic: "italic";
20
+ oblique: "oblique";
21
+ }>>;
22
+ }, z.core.$strip>>;
23
+ }, z.core.$strip>]>;
47
24
  /** 行规格 IR 类型 */
48
25
  export type IRLineSpec = z.infer<typeof LineSpecSchema>;
49
26
  /**
50
27
  * 文本块:单字符串或非空多行 LineSpec 数组
51
28
  * @description 选数组而非 `\n` 字符串:JSON 友好无 escape,行级覆盖天然落字段;通用文本结构,Node text / 未来 Step.label 等共用
52
29
  */
53
- export declare const TextBlockSchema: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
30
+ export declare const TextBlockSchema: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
54
31
  text: z.ZodString;
55
32
  fill: z.ZodOptional<z.ZodString>;
56
33
  opacity: z.ZodOptional<z.ZodNumber>;
57
34
  font: z.ZodOptional<z.ZodObject<{
58
35
  family: z.ZodOptional<z.ZodString>;
59
36
  size: z.ZodOptional<z.ZodNumber>;
60
- weight: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["normal", "bold"]>, z.ZodNumber]>>;
61
- style: z.ZodOptional<z.ZodEnum<["normal", "italic", "oblique"]>>;
62
- }, "strip", z.ZodTypeAny, {
63
- family?: string | undefined;
64
- size?: number | undefined;
65
- weight?: number | "normal" | "bold" | undefined;
66
- style?: "normal" | "italic" | "oblique" | undefined;
67
- }, {
68
- family?: string | undefined;
69
- size?: number | undefined;
70
- weight?: number | "normal" | "bold" | undefined;
71
- style?: "normal" | "italic" | "oblique" | undefined;
72
- }>>;
73
- }, "strip", z.ZodTypeAny, {
74
- text: string;
75
- fill?: string | undefined;
76
- opacity?: number | undefined;
77
- font?: {
78
- family?: string | undefined;
79
- size?: number | undefined;
80
- weight?: number | "normal" | "bold" | undefined;
81
- style?: "normal" | "italic" | "oblique" | undefined;
82
- } | undefined;
83
- }, {
84
- text: string;
85
- fill?: string | undefined;
86
- opacity?: number | undefined;
87
- font?: {
88
- family?: string | undefined;
89
- size?: number | undefined;
90
- weight?: number | "normal" | "bold" | undefined;
91
- style?: "normal" | "italic" | "oblique" | undefined;
92
- } | undefined;
93
- }>]>, "many">]>;
37
+ weight: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
38
+ bold: "bold";
39
+ normal: "normal";
40
+ }>, z.ZodNumber]>>;
41
+ style: z.ZodOptional<z.ZodEnum<{
42
+ normal: "normal";
43
+ italic: "italic";
44
+ oblique: "oblique";
45
+ }>>;
46
+ }, z.core.$strip>>;
47
+ }, z.core.$strip>]>>]>;
94
48
  /** 文本块 IR 类型(单字符串或多行 LineSpec 数组) */
95
49
  export type IRTextBlock = z.infer<typeof TextBlockSchema>;
96
50
  //# sourceMappingURL=text.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/ir/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsBxB,CAAC;AAEJ,gBAAgB;AAChB,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAIzB,CAAC;AAEJ,qCAAqC;AACrC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/ir/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;mBAsBxB,CAAC;AAEJ,gBAAgB;AAChB,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;sBAIzB,CAAC;AAEJ,qCAAqC;AACrC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
@@ -6,8 +6,8 @@ let zod = require("zod");
6
6
  //#region src/ir/transform.ts
7
7
  var TranslateSchema = zod.z.object({
8
8
  kind: zod.z.literal("translate").describe("Discriminator: Cartesian translate (the 3-variant Scene transform shape)."),
9
- x: zod.z.number().describe("Cartesian x translation in user units."),
10
- y: zod.z.number().describe("Cartesian y translation in user units (screen y-down).")
9
+ x: zod.z.number().finite().describe("Cartesian x translation in user units."),
10
+ y: zod.z.number().finite().describe("Cartesian y translation in user units (screen y-down).")
11
11
  }).describe("Cartesian translate transform; mirrors the Position [x, y] literal. Lowered directly to Scene `GroupPrim` translate.");
12
12
  var PolarTranslateSchema = zod.z.object({
13
13
  kind: zod.z.literal("polar-translate").describe("Discriminator: polar translate; mirrors PolarPosition."),
@@ -21,7 +21,7 @@ var PolarTranslateSchema = zod.z.object({
21
21
  }).describe("Polar translate transform; mirrors PolarPosition. Lowered to Cartesian translate at compile time via resolvePosition.");
22
22
  var AtTranslateSchema = zod.z.object({
23
23
  kind: zod.z.literal("at-translate").describe("Discriminator: direction-relative translate; mirrors AtPosition."),
24
- direction: zod.z.nativeEnum(require_at_position.AtDirection).describe("Direction enum (8 values, shared with AtPosition.direction)."),
24
+ direction: zod.z.enum(require_at_position.AtDirection).describe("Direction enum (8 values, shared with AtPosition.direction)."),
25
25
  of: zod.z.string().min(1).describe("Referent node id; must be defined earlier in the IR (forward references rejected, mirroring AtPosition.of)."),
26
26
  distance: zod.z.number().positive().optional().describe("Distance along direction in user units; omit → falls back to CompileOptions.nodeDistance (same default chain as AtPosition.distance).")
27
27
  }).describe("Direction-relative translate transform; mirrors AtPosition. Lowered to Cartesian translate at compile time via resolvePosition.");
@@ -3,34 +3,16 @@ declare const TranslateSchema: z.ZodObject<{
3
3
  kind: z.ZodLiteral<"translate">;
4
4
  x: z.ZodNumber;
5
5
  y: z.ZodNumber;
6
- }, "strip", z.ZodTypeAny, {
7
- kind: "translate";
8
- x: number;
9
- y: number;
10
- }, {
11
- kind: "translate";
12
- x: number;
13
- y: number;
14
- }>;
6
+ }, z.core.$strip>;
15
7
  declare const PolarTranslateSchema: z.ZodObject<{
16
8
  kind: z.ZodLiteral<"polar-translate">;
17
- origin: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, z.ZodTypeDef, import('./position').PolarPosition>]>>;
9
+ origin: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, unknown, z.core.$ZodTypeInternals<import('./position').PolarPosition, unknown>>]>>;
18
10
  angle: z.ZodNumber;
19
11
  radius: z.ZodNumber;
20
- }, "strip", z.ZodTypeAny, {
21
- angle: number;
22
- radius: number;
23
- kind: "polar-translate";
24
- origin?: string | [number, number] | import('./position').PolarPosition | undefined;
25
- }, {
26
- angle: number;
27
- radius: number;
28
- kind: "polar-translate";
29
- origin?: string | [number, number] | import('./position').PolarPosition | undefined;
30
- }>;
12
+ }, z.core.$strip>;
31
13
  declare const AtTranslateSchema: z.ZodObject<{
32
14
  kind: z.ZodLiteral<"at-translate">;
33
- direction: z.ZodNativeEnum<{
15
+ direction: z.ZodEnum<{
34
16
  readonly Above: "above";
35
17
  readonly Below: "below";
36
18
  readonly Left: "left";
@@ -42,102 +24,40 @@ declare const AtTranslateSchema: z.ZodObject<{
42
24
  }>;
43
25
  of: z.ZodString;
44
26
  distance: z.ZodOptional<z.ZodNumber>;
45
- }, "strip", z.ZodTypeAny, {
46
- direction: "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right";
47
- of: string;
48
- kind: "at-translate";
49
- distance?: number | undefined;
50
- }, {
51
- direction: "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right";
52
- of: string;
53
- kind: "at-translate";
54
- distance?: number | undefined;
55
- }>;
27
+ }, z.core.$strip>;
56
28
  declare const OffsetTranslateSchema: z.ZodObject<{
57
29
  kind: z.ZodLiteral<"offset-translate">;
58
- of: z.ZodUnion<[z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, z.ZodTypeDef, import('./position').PolarPosition>]>;
30
+ of: z.ZodUnion<readonly [z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, unknown, z.core.$ZodTypeInternals<import('./position').PolarPosition, unknown>>]>;
59
31
  offset: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
60
- }, "strip", z.ZodTypeAny, {
61
- of: string | [number, number] | import('./position').PolarPosition;
62
- kind: "offset-translate";
63
- offset?: [number, number] | undefined;
64
- }, {
65
- of: string | [number, number] | import('./position').PolarPosition;
66
- kind: "offset-translate";
67
- offset?: [number, number] | undefined;
68
- }>;
32
+ }, z.core.$strip>;
69
33
  declare const BetweenTranslateSchema: z.ZodObject<{
70
34
  kind: z.ZodLiteral<"between-translate">;
71
- between: z.ZodTuple<[z.ZodType<import('./position').IRAbsoluteTarget, z.ZodTypeDef, import('./position').IRAbsoluteTarget>, z.ZodType<import('./position').IRAbsoluteTarget, z.ZodTypeDef, import('./position').IRAbsoluteTarget>], null>;
35
+ between: z.ZodTuple<[z.ZodType<import('./position').IRAbsoluteTarget, unknown, z.core.$ZodTypeInternals<import('./position').IRAbsoluteTarget, unknown>>, z.ZodType<import('./position').IRAbsoluteTarget, unknown, z.core.$ZodTypeInternals<import('./position').IRAbsoluteTarget, unknown>>], null>;
72
36
  t: z.ZodNumber;
73
- }, "strip", z.ZodTypeAny, {
74
- t: number;
75
- between: [import('./position').IRAbsoluteTarget, import('./position').IRAbsoluteTarget];
76
- kind: "between-translate";
77
- }, {
78
- t: number;
79
- between: [import('./position').IRAbsoluteTarget, import('./position').IRAbsoluteTarget];
80
- kind: "between-translate";
81
- }>;
37
+ }, z.core.$strip>;
82
38
  declare const RotateSchema: z.ZodObject<{
83
39
  kind: z.ZodLiteral<"rotate">;
84
40
  degrees: z.ZodNumber;
85
41
  cx: z.ZodOptional<z.ZodNumber>;
86
42
  cy: z.ZodOptional<z.ZodNumber>;
87
- }, "strip", z.ZodTypeAny, {
88
- kind: "rotate";
89
- degrees: number;
90
- cx?: number | undefined;
91
- cy?: number | undefined;
92
- }, {
93
- kind: "rotate";
94
- degrees: number;
95
- cx?: number | undefined;
96
- cy?: number | undefined;
97
- }>;
43
+ }, z.core.$strip>;
98
44
  declare const ScaleSchema: z.ZodObject<{
99
45
  kind: z.ZodLiteral<"scale">;
100
46
  x: z.ZodNumber;
101
47
  y: z.ZodOptional<z.ZodNumber>;
102
- }, "strip", z.ZodTypeAny, {
103
- kind: "scale";
104
- x: number;
105
- y?: number | undefined;
106
- }, {
107
- kind: "scale";
108
- x: number;
109
- y?: number | undefined;
110
- }>;
111
- export declare const TransformSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
48
+ }, z.core.$strip>;
49
+ export declare const TransformSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
112
50
  kind: z.ZodLiteral<"translate">;
113
51
  x: z.ZodNumber;
114
52
  y: z.ZodNumber;
115
- }, "strip", z.ZodTypeAny, {
116
- kind: "translate";
117
- x: number;
118
- y: number;
119
- }, {
120
- kind: "translate";
121
- x: number;
122
- y: number;
123
- }>, z.ZodObject<{
53
+ }, z.core.$strip>, z.ZodObject<{
124
54
  kind: z.ZodLiteral<"polar-translate">;
125
- origin: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, z.ZodTypeDef, import('./position').PolarPosition>]>>;
55
+ origin: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, unknown, z.core.$ZodTypeInternals<import('./position').PolarPosition, unknown>>]>>;
126
56
  angle: z.ZodNumber;
127
57
  radius: z.ZodNumber;
128
- }, "strip", z.ZodTypeAny, {
129
- angle: number;
130
- radius: number;
131
- kind: "polar-translate";
132
- origin?: string | [number, number] | import('./position').PolarPosition | undefined;
133
- }, {
134
- angle: number;
135
- radius: number;
136
- kind: "polar-translate";
137
- origin?: string | [number, number] | import('./position').PolarPosition | undefined;
138
- }>, z.ZodObject<{
58
+ }, z.core.$strip>, z.ZodObject<{
139
59
  kind: z.ZodLiteral<"at-translate">;
140
- direction: z.ZodNativeEnum<{
60
+ direction: z.ZodEnum<{
141
61
  readonly Above: "above";
142
62
  readonly Below: "below";
143
63
  readonly Left: "left";
@@ -149,68 +69,24 @@ export declare const TransformSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodObje
149
69
  }>;
150
70
  of: z.ZodString;
151
71
  distance: z.ZodOptional<z.ZodNumber>;
152
- }, "strip", z.ZodTypeAny, {
153
- direction: "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right";
154
- of: string;
155
- kind: "at-translate";
156
- distance?: number | undefined;
157
- }, {
158
- direction: "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right";
159
- of: string;
160
- kind: "at-translate";
161
- distance?: number | undefined;
162
- }>, z.ZodObject<{
72
+ }, z.core.$strip>, z.ZodObject<{
163
73
  kind: z.ZodLiteral<"offset-translate">;
164
- of: z.ZodUnion<[z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, z.ZodTypeDef, import('./position').PolarPosition>]>;
74
+ of: z.ZodUnion<readonly [z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, unknown, z.core.$ZodTypeInternals<import('./position').PolarPosition, unknown>>]>;
165
75
  offset: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
166
- }, "strip", z.ZodTypeAny, {
167
- of: string | [number, number] | import('./position').PolarPosition;
168
- kind: "offset-translate";
169
- offset?: [number, number] | undefined;
170
- }, {
171
- of: string | [number, number] | import('./position').PolarPosition;
172
- kind: "offset-translate";
173
- offset?: [number, number] | undefined;
174
- }>, z.ZodObject<{
76
+ }, z.core.$strip>, z.ZodObject<{
175
77
  kind: z.ZodLiteral<"between-translate">;
176
- between: z.ZodTuple<[z.ZodType<import('./position').IRAbsoluteTarget, z.ZodTypeDef, import('./position').IRAbsoluteTarget>, z.ZodType<import('./position').IRAbsoluteTarget, z.ZodTypeDef, import('./position').IRAbsoluteTarget>], null>;
78
+ between: z.ZodTuple<[z.ZodType<import('./position').IRAbsoluteTarget, unknown, z.core.$ZodTypeInternals<import('./position').IRAbsoluteTarget, unknown>>, z.ZodType<import('./position').IRAbsoluteTarget, unknown, z.core.$ZodTypeInternals<import('./position').IRAbsoluteTarget, unknown>>], null>;
177
79
  t: z.ZodNumber;
178
- }, "strip", z.ZodTypeAny, {
179
- t: number;
180
- between: [import('./position').IRAbsoluteTarget, import('./position').IRAbsoluteTarget];
181
- kind: "between-translate";
182
- }, {
183
- t: number;
184
- between: [import('./position').IRAbsoluteTarget, import('./position').IRAbsoluteTarget];
185
- kind: "between-translate";
186
- }>, z.ZodObject<{
80
+ }, z.core.$strip>, z.ZodObject<{
187
81
  kind: z.ZodLiteral<"rotate">;
188
82
  degrees: z.ZodNumber;
189
83
  cx: z.ZodOptional<z.ZodNumber>;
190
84
  cy: z.ZodOptional<z.ZodNumber>;
191
- }, "strip", z.ZodTypeAny, {
192
- kind: "rotate";
193
- degrees: number;
194
- cx?: number | undefined;
195
- cy?: number | undefined;
196
- }, {
197
- kind: "rotate";
198
- degrees: number;
199
- cx?: number | undefined;
200
- cy?: number | undefined;
201
- }>, z.ZodObject<{
85
+ }, z.core.$strip>, z.ZodObject<{
202
86
  kind: z.ZodLiteral<"scale">;
203
87
  x: z.ZodNumber;
204
88
  y: z.ZodOptional<z.ZodNumber>;
205
- }, "strip", z.ZodTypeAny, {
206
- kind: "scale";
207
- x: number;
208
- y?: number | undefined;
209
- }, {
210
- kind: "scale";
211
- x: number;
212
- y?: number | undefined;
213
- }>]>;
89
+ }, z.core.$strip>], "kind">;
214
90
  /** IR 层 transform 类型——7 变体 discriminated union(5 translate + rotate + scale) */
215
91
  export type IRTransform = z.infer<typeof TransformSchema>;
216
92
  /** 笛卡尔 translate 子分支 */
@@ -1 +1 @@
1
- {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../src/ir/transform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,QAAA,MAAM,eAAe;;;;;;;;;;;;EAYlB,CAAC;AAEJ,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;EA0BvB,CAAC;AAEJ,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;EAwBpB,CAAC;AAEJ,QAAA,MAAM,qBAAqB;;;;;;;;;;;;EAmBxB,CAAC;AAEJ,QAAA,MAAM,sBAAsB;;;;;;;;;;;;EAgBzB,CAAC;AAEJ,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;EAsBf,CAAC;AAEJ,QAAA,MAAM,WAAW;;;;;;;;;;;;EAqBd,CAAC;AAEJ,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAYzB,CAAC;AAEJ,gFAAgF;AAChF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAC1D,wBAAwB;AACxB,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACnE,wBAAwB;AACxB,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAC7E,yBAAyB;AACzB,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AACvE,uBAAuB;AACvB,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC/E,0BAA0B;AAC1B,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACjF,YAAY;AACZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAC7D,YAAY;AACZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../src/ir/transform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,QAAA,MAAM,eAAe;;;;iBAalB,CAAC;AAEJ,QAAA,MAAM,oBAAoB;;;;;iBA0BvB,CAAC;AAEJ,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;iBAwBpB,CAAC;AAEJ,QAAA,MAAM,qBAAqB;;;;iBAmBxB,CAAC;AAEJ,QAAA,MAAM,sBAAsB;;;;iBAgBzB,CAAC;AAEJ,QAAA,MAAM,YAAY;;;;;iBAsBf,CAAC;AAEJ,QAAA,MAAM,WAAW;;;;iBAqBd,CAAC;AAEJ,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAYzB,CAAC;AAEJ,gFAAgF;AAChF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAC1D,wBAAwB;AACxB,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACnE,wBAAwB;AACxB,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAC7E,yBAAyB;AACzB,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AACvE,uBAAuB;AACvB,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAC/E,0BAA0B;AAC1B,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACjF,YAAY;AACZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAC7D,YAAY;AACZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC"}
@@ -47,7 +47,7 @@ var targetOf = (item) => {
47
47
  };
48
48
  /**
49
49
  * way 数组 → IRStep 序列
50
- * @description 首元素始终 moveway[0] 是算子时降级到原点 [0,0]);后续元素按各自规则:target/RelItem→line;Cycle→cycle;-|/|- 与下一项合并 fold;curve/cubic/bend 与下一项合并;arc/circle/ellipse 单独成 step;label 算子修饰下一段。连续 label/末尾 label/cycle 上的 label 抛错。纯函数,各框架 adapter Sugar 组件复用
50
+ * @description 首元素必须是 move 目标(way[0] 是算子 / label 算子时抛错,不降级);后续元素按各自规则:target/RelItem→line;Cycle→cycle;-|/|- 与下一项合并 fold;curve/cubic/bend 与下一项合并;arc/circle/ellipse 单独成 step;label 算子修饰下一段。连续 label/末尾 label/cycle 上的 label 抛错。纯函数,各框架 adapter Sugar 组件复用
51
51
  */
52
52
  var parseWay = (way) => {
53
53
  if (way.length < 2) throw new Error("parseWay: way must contain at least 2 items");
@@ -82,7 +82,7 @@ export type WayItem = IRTarget | string | WayRelativeItem | WayVia | WayCycle |
82
82
  export type WayDSL = Array<WayItem>;
83
83
  /**
84
84
  * way 数组 → IRStep 序列
85
- * @description 首元素始终 moveway[0] 是算子时降级到原点 [0,0]);后续元素按各自规则:target/RelItem→line;Cycle→cycle;-|/|- 与下一项合并 fold;curve/cubic/bend 与下一项合并;arc/circle/ellipse 单独成 step;label 算子修饰下一段。连续 label/末尾 label/cycle 上的 label 抛错。纯函数,各框架 adapter Sugar 组件复用
85
+ * @description 首元素必须是 move 目标(way[0] 是算子 / label 算子时抛错,不降级);后续元素按各自规则:target/RelItem→line;Cycle→cycle;-|/|- 与下一项合并 fold;curve/cubic/bend 与下一项合并;arc/circle/ellipse 单独成 step;label 算子修饰下一段。连续 label/末尾 label/cycle 上的 label 抛错。纯函数,各框架 adapter Sugar 组件复用
86
86
  */
87
87
  export declare const parseWay: (way: WayDSL) => Array<IRStep>;
88
88
  //# sourceMappingURL=way.d.ts.map
@@ -24,8 +24,8 @@ export type MarkerPathPrim = {
24
24
  fillOpacity?: number;
25
25
  /** 填充规则:`nonzero`(默认)/ `evenodd`(环形 / 孔洞场景) */
26
26
  fillRule?: 'nonzero' | 'evenodd';
27
- /** 描边色(纯色 CSS / `context-stroke` adapter 映射) */
28
- stroke?: string;
27
+ /** 描边色:纯色 CSS `{ kind: 'contextStroke' }`(继承所在元素描边);与 fill 同词汇,core 不持 SVG 裸关键字 */
28
+ stroke?: MarkerFill;
29
29
  /** 描边透明度 0~1 */
30
30
  strokeOpacity?: number;
31
31
  /** 描边宽度(marker 局部坐标) */
@@ -97,8 +97,8 @@ export type MarkerEllipsePrim = {
97
97
  fill?: MarkerFill;
98
98
  /** 填充透明度 0~1 */
99
99
  fillOpacity?: number;
100
- /** 描边色 */
101
- stroke?: string;
100
+ /** 描边色:纯色 CSS 或 `{ kind: 'contextStroke' }` */
101
+ stroke?: MarkerFill;
102
102
  /** 描边透明度 0~1 */
103
103
  strokeOpacity?: number;
104
104
  /** 描边宽度 */
@@ -125,8 +125,8 @@ export type MarkerRectPrim = {
125
125
  fill?: MarkerFill;
126
126
  /** 填充透明度 0~1 */
127
127
  fillOpacity?: number;
128
- /** 描边色 */
129
- stroke?: string;
128
+ /** 描边色:纯色 CSS 或 `{ kind: 'contextStroke' }` */
129
+ stroke?: MarkerFill;
130
130
  /** 描边透明度 0~1 */
131
131
  strokeOpacity?: number;
132
132
  /** 描边宽度 */
@@ -1 +1 @@
1
- {"version":3,"file":"marker.d.ts","sourceRoot":"","sources":["../../../src/primitive/marker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"marker.d.ts","sourceRoot":"","sources":["../../../src/primitive/marker.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,9 @@ const require_define = require("./define.cjs");
4
4
  const require_shared = require("./shared.cjs");
5
5
  let zod = require("zod");
6
6
  //#region src/shapes/arc.ts
7
+ var RAD_TO_DEG = 180 / Math.PI;
7
8
  /** arc 的派生几何:圆心局部系 AABB + 圆心相对 AABB 中心偏移 */
8
- var arcGeometry = (params) => {
9
+ var computeArcGeometry = (params) => {
9
10
  const { radius } = params;
10
11
  const range = require_shared.normalizeAngularRange(params.startAngle, params.endAngle);
11
12
  const points = require_arc.arcBoundingPoints([0, 0], radius, range.start, range.end);
@@ -29,6 +30,15 @@ var arcGeometry = (params) => {
29
30
  centerOffset: [-aabbCenter[0], -aabbCenter[1]]
30
31
  };
31
32
  };
33
+ /** params → 派生几何的 WeakMap 缓存(同 sector:同一 params 实例多次取几何只算一次,纯性能、行为不变) */
34
+ var arcGeometryCache = /* @__PURE__ */ new WeakMap();
35
+ var arcGeometry = (params) => {
36
+ const cached = arcGeometryCache.get(params);
37
+ if (cached !== void 0) return cached;
38
+ const geo = computeArcGeometry(params);
39
+ arcGeometryCache.set(params, geo);
40
+ return geo;
41
+ };
32
42
  /** 圆心局部点(相对圆心)→ 世界系(+centerOffset 到相对 AABB 中心后经 rect 投影) */
33
43
  var arcLocalToWorld = (rect, centerOffset, localFromCenter) => require_transform.localToWorld(rect, [localFromCenter[0] + centerOffset[0], localFromCenter[1] + centerOffset[1]]);
34
44
  /**
@@ -49,9 +59,18 @@ var arc = require_define.defineShape({
49
59
  const { centerOffset } = arcGeometry(params);
50
60
  return [-centerOffset[0], -centerOffset[1]];
51
61
  },
52
- boundaryPoint: (rect, _toward, params) => {
62
+ boundaryPoint: (rect, toward, params) => {
53
63
  const geo = arcGeometry(params);
54
- return arcLocalToWorld(rect, geo.centerOffset, require_arc.arcEndPoint([0, 0], params.radius, geo.range.mid));
64
+ const { radius } = params;
65
+ const { start, end } = geo.range;
66
+ const local = require_transform.worldToLocal(rect, toward);
67
+ const fx = local[0] - geo.centerOffset[0];
68
+ const fy = local[1] - geo.centerOffset[1];
69
+ let theta = Math.atan2(fy, fx) * RAD_TO_DEG;
70
+ while (theta < start) theta += 360;
71
+ while (theta >= start + 360) theta -= 360;
72
+ const angle = theta <= end ? theta : theta - end <= start + 360 - theta ? end : start;
73
+ return arcLocalToWorld(rect, geo.centerOffset, require_arc.arcEndPoint([0, 0], radius, angle));
55
74
  },
56
75
  anchor: (rect, name, params) => {
57
76
  const geo = arcGeometry(params);
@@ -1 +1 @@
1
- {"version":3,"file":"arc.d.ts","sourceRoot":"","sources":["../../../src/shapes/arc.ts"],"names":[],"mappings":"AA8DA;;;;;GAKG;AACH,eAAO,MAAM,GAAG,mCA8Ed,CAAC"}
1
+ {"version":3,"file":"arc.d.ts","sourceRoot":"","sources":["../../../src/shapes/arc.ts"],"names":[],"mappings":"AA4EA;;;;;GAKG;AACH,eAAO,MAAM,GAAG,mCAyFd,CAAC"}
@@ -44,7 +44,7 @@ var rectangle = require_define.defineShape({
44
44
  *emit(r, style, round, params) {
45
45
  const halfW = r.width / 2;
46
46
  const halfH = r.height / 2;
47
- const cornerRadius = params.cornerRadius ?? style.cornerRadius;
47
+ const cornerRadius = params.cornerRadius;
48
48
  yield {
49
49
  type: "rect",
50
50
  x: round(r.x - halfW),
@@ -2,14 +2,16 @@ const require_arc = require("../geometry/arc.cjs");
2
2
  //#region src/shapes/shared.ts
3
3
  var DEG_TO_RAD = Math.PI / 180;
4
4
  /**
5
- * 规范化起止角:保证 end start(end<start 时加 360° 直至 ≥ start),并给出中分角
5
+ * 规范化起止角:保证 start ≤ end start+360(end<start 时加 360°、跨度>360° 钳到 360°),并给出中分角
6
6
  * @description 角度沿屏幕系(角度递增=CW)从 start 扫到 end;end<start 视为跨过 360°,与 polar / geometry/arc 约定一致。
7
7
  * end<start 时一次性加上 360°·k(k 为使 end ≥ start 的最小非负整数),O(1) 闭式计算——
8
8
  * 避免 while 循环在巨型角度(如 1e308 浮点 end+360===end 卡死、1e9 退化成数百万次迭代)下挂死。
9
- * end start 时 ceil((start−end)/360) 0,k 取 0、end 不变(语义与原逐次加法等价)。
9
+ * 再把跨度钳到 ≤360°:sweep≥360° 视觉即整圆,超出部分冗余;钳定同时防住巨角(如 endAngle=1e8)
10
+ * 让下游 arcBoundingPoints 枚举海量 90°·k 轴向极值点。
10
11
  */
11
12
  var normalizeAngularRange = (startAngle, endAngle) => {
12
- const end = endAngle + 360 * Math.max(0, Math.ceil((startAngle - endAngle) / 360));
13
+ const k = Math.max(0, Math.ceil((startAngle - endAngle) / 360));
14
+ const end = Math.min(endAngle + 360 * k, startAngle + 360);
13
15
  return {
14
16
  start: startAngle,
15
17
  end,
@@ -9,11 +9,12 @@ type AngularRange = {
9
9
  mid: number;
10
10
  };
11
11
  /**
12
- * 规范化起止角:保证 end start(end<start 时加 360° 直至 ≥ start),并给出中分角
12
+ * 规范化起止角:保证 start ≤ end start+360(end<start 时加 360°、跨度>360° 钳到 360°),并给出中分角
13
13
  * @description 角度沿屏幕系(角度递增=CW)从 start 扫到 end;end<start 视为跨过 360°,与 polar / geometry/arc 约定一致。
14
14
  * end<start 时一次性加上 360°·k(k 为使 end ≥ start 的最小非负整数),O(1) 闭式计算——
15
15
  * 避免 while 循环在巨型角度(如 1e308 浮点 end+360===end 卡死、1e9 退化成数百万次迭代)下挂死。
16
- * end start 时 ceil((start−end)/360) 0,k 取 0、end 不变(语义与原逐次加法等价)。
16
+ * 再把跨度钳到 ≤360°:sweep≥360° 视觉即整圆,超出部分冗余;钳定同时防住巨角(如 endAngle=1e8)
17
+ * 让下游 arcBoundingPoints 枚举海量 90°·k 轴向极值点。
17
18
  */
18
19
  export declare const normalizeAngularRange: (startAngle: number, endAngle: number) => AngularRange;
19
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/shapes/shared.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAIlD,8BAA8B;AAC9B,KAAK,YAAY,GAAG;IAClB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,oCAAoC;IACpC,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAAI,YAAY,MAAM,EAAE,UAAU,MAAM,KAAG,YAI5E,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,iBAAiB;IACjB,KAAK,EAAE,YAAY,CAAC;IACpB,4CAA4C;IAC5C,YAAY,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD,uDAAuD;IACvD,UAAU,EAAE,QAAQ,CAAC;IACrB,kDAAkD;IAClD,cAAc,EAAE,QAAQ,CAAC;IACzB,gDAAgD;IAChD,oBAAoB,EAAE,QAAQ,CAAC;CAChC,CAAC;AAEF,wEAAwE;AACxE,KAAK,mBAAmB,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,mBAAmB,KAAG,cAoE5D,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,EAAE,UAAU,MAAM,KAAG,QAC7B,CAAC"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/shapes/shared.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAIlD,8BAA8B;AAC9B,KAAK,YAAY,GAAG;IAClB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,oCAAoC;IACpC,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,GAAI,YAAY,MAAM,EAAE,UAAU,MAAM,KAAG,YAI5E,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,iBAAiB;IACjB,KAAK,EAAE,YAAY,CAAC;IACpB,4CAA4C;IAC5C,YAAY,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACxD,uDAAuD;IACvD,UAAU,EAAE,QAAQ,CAAC;IACrB,kDAAkD;IAClD,cAAc,EAAE,QAAQ,CAAC;IACzB,gDAAgD;IAChD,oBAAoB,EAAE,QAAQ,CAAC;CAChC,CAAC;AAEF,wEAAwE;AACxE,KAAK,mBAAmB,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,QAAQ,mBAAmB,KAAG,cAoE5D,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,EAAE,UAAU,MAAM,KAAG,QAC7B,CAAC"}