@retikz/core 0.1.0-alpha.2 → 0.1.0-alpha.4

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 (119) hide show
  1. package/dist/es/compile/compile.d.ts +6 -0
  2. package/dist/es/compile/compile.d.ts.map +1 -1
  3. package/dist/es/compile/compile.js +33 -4
  4. package/dist/es/compile/node.d.ts +23 -2
  5. package/dist/es/compile/node.d.ts.map +1 -1
  6. package/dist/es/compile/node.js +94 -4
  7. package/dist/es/compile/path.d.ts +3 -2
  8. package/dist/es/compile/path.d.ts.map +1 -1
  9. package/dist/es/compile/path.js +333 -14
  10. package/dist/es/compile/position.d.ts +8 -5
  11. package/dist/es/compile/position.d.ts.map +1 -1
  12. package/dist/es/compile/position.js +32 -5
  13. package/dist/es/geometry/arc.d.ts +34 -0
  14. package/dist/es/geometry/arc.d.ts.map +1 -0
  15. package/dist/es/geometry/arc.js +53 -0
  16. package/dist/es/geometry/bend.d.ts +18 -0
  17. package/dist/es/geometry/bend.d.ts.map +1 -0
  18. package/dist/es/geometry/bend.js +29 -0
  19. package/dist/es/geometry/index.d.ts +3 -0
  20. package/dist/es/geometry/index.d.ts.map +1 -1
  21. package/dist/es/geometry/segment.d.ts +38 -0
  22. package/dist/es/geometry/segment.d.ts.map +1 -0
  23. package/dist/es/geometry/segment.js +82 -0
  24. package/dist/es/index.d.ts +4 -4
  25. package/dist/es/index.d.ts.map +1 -1
  26. package/dist/es/index.js +7 -4
  27. package/dist/es/ir/coordinate.d.ts +57 -0
  28. package/dist/es/ir/coordinate.d.ts.map +1 -0
  29. package/dist/es/ir/coordinate.js +27 -0
  30. package/dist/es/ir/index.d.ts +1 -0
  31. package/dist/es/ir/index.d.ts.map +1 -1
  32. package/dist/es/ir/node.d.ts +276 -17
  33. package/dist/es/ir/node.d.ts.map +1 -1
  34. package/dist/es/ir/node.js +28 -3
  35. package/dist/es/ir/path/path.d.ts +625 -15
  36. package/dist/es/ir/path/path.d.ts.map +1 -1
  37. package/dist/es/ir/path/path.js +22 -0
  38. package/dist/es/ir/path/step.d.ts +872 -20
  39. package/dist/es/ir/path/step.d.ts.map +1 -1
  40. package/dist/es/ir/path/step.js +86 -4
  41. package/dist/es/ir/path/target.d.ts +32 -2
  42. package/dist/es/ir/path/target.d.ts.map +1 -1
  43. package/dist/es/ir/path/target.js +7 -3
  44. package/dist/es/ir/position/at-position.d.ts +50 -0
  45. package/dist/es/ir/position/at-position.d.ts.map +1 -0
  46. package/dist/es/ir/position/at-position.js +30 -0
  47. package/dist/es/ir/position/index.d.ts +1 -0
  48. package/dist/es/ir/position/index.d.ts.map +1 -1
  49. package/dist/es/ir/scene.d.ts +2072 -112
  50. package/dist/es/ir/scene.d.ts.map +1 -1
  51. package/dist/es/ir/scene.js +6 -1
  52. package/dist/es/parsers/index.d.ts +1 -0
  53. package/dist/es/parsers/index.d.ts.map +1 -1
  54. package/dist/es/parsers/parseTargetSugar.d.ts +3 -0
  55. package/dist/es/parsers/parseTargetSugar.d.ts.map +1 -0
  56. package/dist/es/parsers/parseTargetSugar.js +31 -0
  57. package/dist/es/parsers/parseWay.d.ts +131 -22
  58. package/dist/es/parsers/parseWay.d.ts.map +1 -1
  59. package/dist/es/parsers/parseWay.js +149 -17
  60. package/dist/lib/compile/compile.cjs +33 -4
  61. package/dist/lib/compile/compile.d.ts +6 -0
  62. package/dist/lib/compile/compile.d.ts.map +1 -1
  63. package/dist/lib/compile/node.cjs +94 -4
  64. package/dist/lib/compile/node.d.ts +23 -2
  65. package/dist/lib/compile/node.d.ts.map +1 -1
  66. package/dist/lib/compile/path.cjs +333 -14
  67. package/dist/lib/compile/path.d.ts +3 -2
  68. package/dist/lib/compile/path.d.ts.map +1 -1
  69. package/dist/lib/compile/position.cjs +32 -5
  70. package/dist/lib/compile/position.d.ts +8 -5
  71. package/dist/lib/compile/position.d.ts.map +1 -1
  72. package/dist/lib/geometry/arc.cjs +55 -0
  73. package/dist/lib/geometry/arc.d.ts +34 -0
  74. package/dist/lib/geometry/arc.d.ts.map +1 -0
  75. package/dist/lib/geometry/bend.cjs +29 -0
  76. package/dist/lib/geometry/bend.d.ts +18 -0
  77. package/dist/lib/geometry/bend.d.ts.map +1 -0
  78. package/dist/lib/geometry/index.d.ts +3 -0
  79. package/dist/lib/geometry/index.d.ts.map +1 -1
  80. package/dist/lib/geometry/segment.cjs +88 -0
  81. package/dist/lib/geometry/segment.d.ts +38 -0
  82. package/dist/lib/geometry/segment.d.ts.map +1 -0
  83. package/dist/lib/index.cjs +18 -0
  84. package/dist/lib/index.d.ts +4 -4
  85. package/dist/lib/index.d.ts.map +1 -1
  86. package/dist/lib/ir/coordinate.cjs +27 -0
  87. package/dist/lib/ir/coordinate.d.ts +57 -0
  88. package/dist/lib/ir/coordinate.d.ts.map +1 -0
  89. package/dist/lib/ir/index.d.ts +1 -0
  90. package/dist/lib/ir/index.d.ts.map +1 -1
  91. package/dist/lib/ir/node.cjs +28 -2
  92. package/dist/lib/ir/node.d.ts +276 -17
  93. package/dist/lib/ir/node.d.ts.map +1 -1
  94. package/dist/lib/ir/path/path.cjs +22 -0
  95. package/dist/lib/ir/path/path.d.ts +625 -15
  96. package/dist/lib/ir/path/path.d.ts.map +1 -1
  97. package/dist/lib/ir/path/step.cjs +93 -3
  98. package/dist/lib/ir/path/step.d.ts +872 -20
  99. package/dist/lib/ir/path/step.d.ts.map +1 -1
  100. package/dist/lib/ir/path/target.cjs +8 -2
  101. package/dist/lib/ir/path/target.d.ts +32 -2
  102. package/dist/lib/ir/path/target.d.ts.map +1 -1
  103. package/dist/lib/ir/position/at-position.cjs +31 -0
  104. package/dist/lib/ir/position/at-position.d.ts +50 -0
  105. package/dist/lib/ir/position/at-position.d.ts.map +1 -0
  106. package/dist/lib/ir/position/index.d.ts +1 -0
  107. package/dist/lib/ir/position/index.d.ts.map +1 -1
  108. package/dist/lib/ir/scene.cjs +6 -1
  109. package/dist/lib/ir/scene.d.ts +2072 -112
  110. package/dist/lib/ir/scene.d.ts.map +1 -1
  111. package/dist/lib/parsers/index.d.ts +1 -0
  112. package/dist/lib/parsers/index.d.ts.map +1 -1
  113. package/dist/lib/parsers/parseTargetSugar.cjs +31 -0
  114. package/dist/lib/parsers/parseTargetSugar.d.ts +3 -0
  115. package/dist/lib/parsers/parseTargetSugar.d.ts.map +1 -0
  116. package/dist/lib/parsers/parseWay.cjs +149 -17
  117. package/dist/lib/parsers/parseWay.d.ts +131 -22
  118. package/dist/lib/parsers/parseWay.d.ts.map +1 -1
  119. package/package.json +1 -1
@@ -157,6 +157,75 @@ export declare const NODE_TEXT_ALIGNS: {
157
157
  };
158
158
  /** 多行文本对齐字面量类型 */
159
159
  export type NodeTextAlign = ValueOf<typeof NODE_TEXT_ALIGNS>;
160
+ /**
161
+ * 节点附属标签(label)——TikZ `[label=above:foo]` / `[label={[red]30:foo}]` 同义。
162
+ *
163
+ * 一个 Node 可挂多个 label(数组形态);label 自身不参与 viewBox(视觉外延少时可接受)。
164
+ *
165
+ * `position` 接受两种形态:
166
+ * - 8 方向枚举(`above` / `right` / `above-left` ...):标签贴在 node 该方向边界外
167
+ * - 数字角度:以 node 中心为原点,按该角度方向投射;约定与 polar 一致(0° = +x,90° = +y 屏幕下方)
168
+ *
169
+ * 默认 `position = 'above'`,`distance = 4`(user units,标签与 node 边界的距离)。
170
+ */
171
+ export declare const NodeLabelSchema: z.ZodObject<{
172
+ text: z.ZodString;
173
+ position: z.ZodOptional<z.ZodUnion<[z.ZodNativeEnum<{
174
+ readonly above: "above";
175
+ readonly below: "below";
176
+ readonly left: "left";
177
+ readonly right: "right";
178
+ readonly 'above-left': "above-left";
179
+ readonly 'above-right': "above-right";
180
+ readonly 'below-left': "below-left";
181
+ readonly 'below-right': "below-right";
182
+ }>, z.ZodNumber]>>;
183
+ distance: z.ZodOptional<z.ZodNumber>;
184
+ textColor: z.ZodOptional<z.ZodString>;
185
+ opacity: z.ZodOptional<z.ZodNumber>;
186
+ font: z.ZodOptional<z.ZodObject<{
187
+ family: z.ZodOptional<z.ZodString>;
188
+ size: z.ZodOptional<z.ZodNumber>;
189
+ weight: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["normal", "bold"]>, z.ZodNumber]>>;
190
+ style: z.ZodOptional<z.ZodEnum<["normal", "italic", "oblique"]>>;
191
+ }, "strip", z.ZodTypeAny, {
192
+ family?: string | undefined;
193
+ size?: number | undefined;
194
+ weight?: number | "normal" | "bold" | undefined;
195
+ style?: "normal" | "italic" | "oblique" | undefined;
196
+ }, {
197
+ family?: string | undefined;
198
+ size?: number | undefined;
199
+ weight?: number | "normal" | "bold" | undefined;
200
+ style?: "normal" | "italic" | "oblique" | undefined;
201
+ }>>;
202
+ }, "strip", z.ZodTypeAny, {
203
+ text: string;
204
+ distance?: number | undefined;
205
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
206
+ opacity?: number | undefined;
207
+ font?: {
208
+ family?: string | undefined;
209
+ size?: number | undefined;
210
+ weight?: number | "normal" | "bold" | undefined;
211
+ style?: "normal" | "italic" | "oblique" | undefined;
212
+ } | undefined;
213
+ textColor?: string | undefined;
214
+ }, {
215
+ text: string;
216
+ distance?: number | undefined;
217
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
218
+ opacity?: number | undefined;
219
+ font?: {
220
+ family?: string | undefined;
221
+ size?: number | undefined;
222
+ weight?: number | "normal" | "bold" | undefined;
223
+ style?: "normal" | "italic" | "oblique" | undefined;
224
+ } | undefined;
225
+ textColor?: string | undefined;
226
+ }>;
227
+ /** Node label IR 类型——单条 label 的字段集 */
228
+ export type IRNodeLabel = z.infer<typeof NodeLabelSchema>;
160
229
  export declare const NodeSchema: z.ZodObject<{
161
230
  type: z.ZodLiteral<"node">;
162
231
  id: z.ZodOptional<z.ZodString>;
@@ -166,7 +235,28 @@ export declare const NodeSchema: z.ZodObject<{
166
235
  readonly ellipse: "ellipse";
167
236
  readonly diamond: "diamond";
168
237
  }>>;
169
- position: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, z.ZodTypeDef, import('./position').PolarPosition>]>;
238
+ position: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('./position').PolarPosition, z.ZodTypeDef, import('./position').PolarPosition>, z.ZodObject<{
239
+ direction: z.ZodNativeEnum<{
240
+ readonly above: "above";
241
+ readonly below: "below";
242
+ readonly left: "left";
243
+ readonly right: "right";
244
+ readonly 'above-left': "above-left";
245
+ readonly 'above-right': "above-right";
246
+ readonly 'below-left': "below-left";
247
+ readonly 'below-right': "below-right";
248
+ }>;
249
+ of: z.ZodString;
250
+ distance: z.ZodOptional<z.ZodNumber>;
251
+ }, "strip", z.ZodTypeAny, {
252
+ direction: "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right";
253
+ of: string;
254
+ distance?: number | undefined;
255
+ }, {
256
+ direction: "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right";
257
+ of: string;
258
+ distance?: number | undefined;
259
+ }>]>;
170
260
  rotate: z.ZodOptional<z.ZodNumber>;
171
261
  text: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
172
262
  text: z.ZodString;
@@ -253,13 +343,125 @@ export declare const NodeSchema: z.ZodObject<{
253
343
  weight?: number | "normal" | "bold" | undefined;
254
344
  style?: "normal" | "italic" | "oblique" | undefined;
255
345
  }>>;
346
+ label: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
347
+ text: z.ZodString;
348
+ position: z.ZodOptional<z.ZodUnion<[z.ZodNativeEnum<{
349
+ readonly above: "above";
350
+ readonly below: "below";
351
+ readonly left: "left";
352
+ readonly right: "right";
353
+ readonly 'above-left': "above-left";
354
+ readonly 'above-right': "above-right";
355
+ readonly 'below-left': "below-left";
356
+ readonly 'below-right': "below-right";
357
+ }>, z.ZodNumber]>>;
358
+ distance: z.ZodOptional<z.ZodNumber>;
359
+ textColor: z.ZodOptional<z.ZodString>;
360
+ opacity: z.ZodOptional<z.ZodNumber>;
361
+ font: z.ZodOptional<z.ZodObject<{
362
+ family: z.ZodOptional<z.ZodString>;
363
+ size: z.ZodOptional<z.ZodNumber>;
364
+ weight: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["normal", "bold"]>, z.ZodNumber]>>;
365
+ style: z.ZodOptional<z.ZodEnum<["normal", "italic", "oblique"]>>;
366
+ }, "strip", z.ZodTypeAny, {
367
+ family?: string | undefined;
368
+ size?: number | undefined;
369
+ weight?: number | "normal" | "bold" | undefined;
370
+ style?: "normal" | "italic" | "oblique" | undefined;
371
+ }, {
372
+ family?: string | undefined;
373
+ size?: number | undefined;
374
+ weight?: number | "normal" | "bold" | undefined;
375
+ style?: "normal" | "italic" | "oblique" | undefined;
376
+ }>>;
377
+ }, "strip", z.ZodTypeAny, {
378
+ text: string;
379
+ distance?: number | undefined;
380
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
381
+ opacity?: number | undefined;
382
+ font?: {
383
+ family?: string | undefined;
384
+ size?: number | undefined;
385
+ weight?: number | "normal" | "bold" | undefined;
386
+ style?: "normal" | "italic" | "oblique" | undefined;
387
+ } | undefined;
388
+ textColor?: string | undefined;
389
+ }, {
390
+ text: string;
391
+ distance?: number | undefined;
392
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
393
+ opacity?: number | undefined;
394
+ font?: {
395
+ family?: string | undefined;
396
+ size?: number | undefined;
397
+ weight?: number | "normal" | "bold" | undefined;
398
+ style?: "normal" | "italic" | "oblique" | undefined;
399
+ } | undefined;
400
+ textColor?: string | undefined;
401
+ }>, z.ZodArray<z.ZodObject<{
402
+ text: z.ZodString;
403
+ position: z.ZodOptional<z.ZodUnion<[z.ZodNativeEnum<{
404
+ readonly above: "above";
405
+ readonly below: "below";
406
+ readonly left: "left";
407
+ readonly right: "right";
408
+ readonly 'above-left': "above-left";
409
+ readonly 'above-right': "above-right";
410
+ readonly 'below-left': "below-left";
411
+ readonly 'below-right': "below-right";
412
+ }>, z.ZodNumber]>>;
413
+ distance: z.ZodOptional<z.ZodNumber>;
414
+ textColor: z.ZodOptional<z.ZodString>;
415
+ opacity: z.ZodOptional<z.ZodNumber>;
416
+ font: z.ZodOptional<z.ZodObject<{
417
+ family: z.ZodOptional<z.ZodString>;
418
+ size: z.ZodOptional<z.ZodNumber>;
419
+ weight: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["normal", "bold"]>, z.ZodNumber]>>;
420
+ style: z.ZodOptional<z.ZodEnum<["normal", "italic", "oblique"]>>;
421
+ }, "strip", z.ZodTypeAny, {
422
+ family?: string | undefined;
423
+ size?: number | undefined;
424
+ weight?: number | "normal" | "bold" | undefined;
425
+ style?: "normal" | "italic" | "oblique" | undefined;
426
+ }, {
427
+ family?: string | undefined;
428
+ size?: number | undefined;
429
+ weight?: number | "normal" | "bold" | undefined;
430
+ style?: "normal" | "italic" | "oblique" | undefined;
431
+ }>>;
432
+ }, "strip", z.ZodTypeAny, {
433
+ text: string;
434
+ distance?: number | undefined;
435
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
436
+ opacity?: number | undefined;
437
+ font?: {
438
+ family?: string | undefined;
439
+ size?: number | undefined;
440
+ weight?: number | "normal" | "bold" | undefined;
441
+ style?: "normal" | "italic" | "oblique" | undefined;
442
+ } | undefined;
443
+ textColor?: string | undefined;
444
+ }, {
445
+ text: string;
446
+ distance?: number | undefined;
447
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
448
+ opacity?: number | undefined;
449
+ font?: {
450
+ family?: string | undefined;
451
+ size?: number | undefined;
452
+ weight?: number | "normal" | "bold" | undefined;
453
+ style?: "normal" | "italic" | "oblique" | undefined;
454
+ } | undefined;
455
+ textColor?: string | undefined;
456
+ }>, "many">]>>;
256
457
  }, "strip", z.ZodTypeAny, {
257
458
  type: "node";
258
- position: [number, number] | import('./position').PolarPosition;
459
+ position: [number, number] | import('./position').PolarPosition | {
460
+ direction: "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right";
461
+ of: string;
462
+ distance?: number | undefined;
463
+ };
259
464
  fill?: string | undefined;
260
- shape?: "diamond" | "circle" | "rectangle" | "ellipse" | undefined;
261
- stroke?: string | undefined;
262
- strokeWidth?: number | undefined;
263
465
  text?: string | (string | {
264
466
  text: string;
265
467
  fill?: string | undefined;
@@ -271,19 +473,48 @@ export declare const NodeSchema: z.ZodObject<{
271
473
  style?: "normal" | "italic" | "oblique" | undefined;
272
474
  } | undefined;
273
475
  })[] | undefined;
476
+ label?: {
477
+ text: string;
478
+ distance?: number | undefined;
479
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
480
+ opacity?: number | undefined;
481
+ font?: {
482
+ family?: string | undefined;
483
+ size?: number | undefined;
484
+ weight?: number | "normal" | "bold" | undefined;
485
+ style?: "normal" | "italic" | "oblique" | undefined;
486
+ } | undefined;
487
+ textColor?: string | undefined;
488
+ } | {
489
+ text: string;
490
+ distance?: number | undefined;
491
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
492
+ opacity?: number | undefined;
493
+ font?: {
494
+ family?: string | undefined;
495
+ size?: number | undefined;
496
+ weight?: number | "normal" | "bold" | undefined;
497
+ style?: "normal" | "italic" | "oblique" | undefined;
498
+ } | undefined;
499
+ textColor?: string | undefined;
500
+ }[] | undefined;
501
+ shape?: "diamond" | "circle" | "rectangle" | "ellipse" | undefined;
502
+ stroke?: string | undefined;
503
+ strokeWidth?: number | undefined;
274
504
  opacity?: number | undefined;
505
+ fillOpacity?: number | undefined;
506
+ drawOpacity?: number | undefined;
275
507
  font?: {
276
508
  family?: string | undefined;
277
509
  size?: number | undefined;
278
510
  weight?: number | "normal" | "bold" | undefined;
279
511
  style?: "normal" | "italic" | "oblique" | undefined;
280
512
  } | undefined;
513
+ textColor?: string | undefined;
281
514
  id?: string | undefined;
282
515
  rotate?: number | undefined;
283
- align?: "left" | "center" | "right" | undefined;
516
+ align?: "left" | "right" | "center" | undefined;
284
517
  lineHeight?: number | undefined;
285
- fillOpacity?: number | undefined;
286
- drawOpacity?: number | undefined;
287
518
  dashed?: boolean | undefined;
288
519
  dotted?: boolean | undefined;
289
520
  dashArray?: string | undefined;
@@ -294,7 +525,6 @@ export declare const NodeSchema: z.ZodObject<{
294
525
  scale?: number | undefined;
295
526
  xScale?: number | undefined;
296
527
  yScale?: number | undefined;
297
- textColor?: string | undefined;
298
528
  innerXSep?: number | undefined;
299
529
  innerYSep?: number | undefined;
300
530
  outerSep?: number | undefined;
@@ -302,11 +532,12 @@ export declare const NodeSchema: z.ZodObject<{
302
532
  margin?: number | undefined;
303
533
  }, {
304
534
  type: "node";
305
- position: [number, number] | import('./position').PolarPosition;
535
+ position: [number, number] | import('./position').PolarPosition | {
536
+ direction: "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right";
537
+ of: string;
538
+ distance?: number | undefined;
539
+ };
306
540
  fill?: string | undefined;
307
- shape?: "diamond" | "circle" | "rectangle" | "ellipse" | undefined;
308
- stroke?: string | undefined;
309
- strokeWidth?: number | undefined;
310
541
  text?: string | (string | {
311
542
  text: string;
312
543
  fill?: string | undefined;
@@ -318,19 +549,48 @@ export declare const NodeSchema: z.ZodObject<{
318
549
  style?: "normal" | "italic" | "oblique" | undefined;
319
550
  } | undefined;
320
551
  })[] | undefined;
552
+ label?: {
553
+ text: string;
554
+ distance?: number | undefined;
555
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
556
+ opacity?: number | undefined;
557
+ font?: {
558
+ family?: string | undefined;
559
+ size?: number | undefined;
560
+ weight?: number | "normal" | "bold" | undefined;
561
+ style?: "normal" | "italic" | "oblique" | undefined;
562
+ } | undefined;
563
+ textColor?: string | undefined;
564
+ } | {
565
+ text: string;
566
+ distance?: number | undefined;
567
+ position?: number | "above" | "below" | "left" | "right" | "above-left" | "above-right" | "below-left" | "below-right" | undefined;
568
+ opacity?: number | undefined;
569
+ font?: {
570
+ family?: string | undefined;
571
+ size?: number | undefined;
572
+ weight?: number | "normal" | "bold" | undefined;
573
+ style?: "normal" | "italic" | "oblique" | undefined;
574
+ } | undefined;
575
+ textColor?: string | undefined;
576
+ }[] | undefined;
577
+ shape?: "diamond" | "circle" | "rectangle" | "ellipse" | undefined;
578
+ stroke?: string | undefined;
579
+ strokeWidth?: number | undefined;
321
580
  opacity?: number | undefined;
581
+ fillOpacity?: number | undefined;
582
+ drawOpacity?: number | undefined;
322
583
  font?: {
323
584
  family?: string | undefined;
324
585
  size?: number | undefined;
325
586
  weight?: number | "normal" | "bold" | undefined;
326
587
  style?: "normal" | "italic" | "oblique" | undefined;
327
588
  } | undefined;
589
+ textColor?: string | undefined;
328
590
  id?: string | undefined;
329
591
  rotate?: number | undefined;
330
- align?: "left" | "center" | "right" | undefined;
592
+ align?: "left" | "right" | "center" | undefined;
331
593
  lineHeight?: number | undefined;
332
- fillOpacity?: number | undefined;
333
- drawOpacity?: number | undefined;
334
594
  dashed?: boolean | undefined;
335
595
  dotted?: boolean | undefined;
336
596
  dashArray?: string | undefined;
@@ -341,7 +601,6 @@ export declare const NodeSchema: z.ZodObject<{
341
601
  scale?: number | undefined;
342
602
  xScale?: number | undefined;
343
603
  yScale?: number | undefined;
344
- textColor?: string | undefined;
345
604
  innerXSep?: number | undefined;
346
605
  innerYSep?: number | undefined;
347
606
  outerSep?: number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/ir/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,mCAAmC;AACnC,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;EAwBpB,CAAC;AAEJ,oCAAoC;AACpC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEhD;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsBxB,CAAC;AAEJ,4BAA4B;AAC5B,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAIxB,CAAC;AAEJ,yCAAyC;AACzC,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,kBAAkB;AAClB,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE7D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyKpB,CAAC;AAEJ,4CAA4C;AAC5C,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/ir/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,mCAAmC;AACnC,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;EAwBpB,CAAC;AAEJ,oCAAoC;AACpC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEhD;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsBxB,CAAC;AAEJ,4BAA4B;AAC5B,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAIxB,CAAC;AAEJ,yCAAyC;AACzC,eAAO,MAAM,gBAAgB;;;;CAInB,CAAC;AAEX,kBAAkB;AAClB,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE7D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCzB,CAAC;AAEJ,sCAAsC;AACtC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE1D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+KpB,CAAC;AAEJ,4CAA4C;AAC5C,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC"}
@@ -16,6 +16,28 @@ var PathSchema = zod.z.object({
16
16
  arrowShape: zod.z.nativeEnum(require_arrow.ARROW_SHAPES).optional().describe("Arrow tip shape; default `normal` (filled triangle). Other values: `open` (hollow triangle), `stealth` (sharp barb), `diamond`, `circle`."),
17
17
  fill: zod.z.string().optional().describe("Fill color of the closed region; any CSS color. Omitted = no fill (stroke only). Pairs with `cycle` step for filled shapes."),
18
18
  fillRule: zod.z.enum(["nonzero", "evenodd"]).optional().describe("How self-intersecting / nested sub-paths are filled. `nonzero` (default, SVG default) winds-by-direction; `evenodd` toggles fill on each crossing — useful for ring / donut shapes."),
19
+ lineCap: zod.z.enum([
20
+ "butt",
21
+ "round",
22
+ "square"
23
+ ]).optional().describe("Stroke endpoint shape (SVG `stroke-linecap`). Default `butt` (sharp end); `round` adds a half-disc cap; `square` extends a half-stroke past the endpoint."),
24
+ lineJoin: zod.z.enum([
25
+ "miter",
26
+ "round",
27
+ "bevel"
28
+ ]).optional().describe("Stroke corner shape (SVG `stroke-linejoin`). Default `miter` (sharp corner); `round` rounds the join; `bevel` cuts the corner flat."),
29
+ thickness: zod.z.enum([
30
+ "ultraThin",
31
+ "veryThin",
32
+ "thin",
33
+ "semithick",
34
+ "thick",
35
+ "veryThick",
36
+ "ultraThick"
37
+ ]).optional().describe("Semantic stroke thickness preset (TikZ `ultra thin` … `ultra thick`). Compiled to a numeric stroke-width if `strokeWidth` is omitted. Explicit `strokeWidth` always wins."),
38
+ opacity: zod.z.number().min(0).max(1).optional().describe("Whole-path opacity 0..1; multiplies onto stroke and fill."),
39
+ fillOpacity: zod.z.number().min(0).max(1).optional().describe("Fill opacity 0..1; affects only the closed-region fill."),
40
+ drawOpacity: zod.z.number().min(0).max(1).optional().describe("Stroke opacity 0..1 (TikZ `draw opacity`); affects only the path stroke."),
19
41
  children: zod.z.array(require_step.StepSchema).min(2).describe("Sequence of step actions defining the path; the first should usually be a `move`")
20
42
  }).describe("A drawn path composed of a sequence of step actions (move / line / ...)");
21
43
  //#endregion