@@ -369,8 +369,12 @@ abstract class MathNode extends ContentNode {
369
369
}
370
370
}
371
371
372
- class KatexNode extends ContentNode {
373
- const KatexNode ({
372
+ sealed class KatexNode extends ContentNode {
373
+ const KatexNode ({super .debugHtmlNode});
374
+ }
375
+
376
+ class KatexSpanNode extends KatexNode {
377
+ const KatexSpanNode ({
374
378
required this .styles,
375
379
required this .text,
376
380
required this .nodes,
@@ -402,6 +406,55 @@ class KatexNode extends ContentNode {
402
406
}
403
407
}
404
408
409
+ class KatexStrutNode extends KatexNode {
410
+ const KatexStrutNode ({
411
+ required this .heightEm,
412
+ required this .verticalAlignEm,
413
+ super .debugHtmlNode,
414
+ });
415
+
416
+ final double heightEm;
417
+ final double ? verticalAlignEm;
418
+
419
+ @override
420
+ void debugFillProperties (DiagnosticPropertiesBuilder properties) {
421
+ super .debugFillProperties (properties);
422
+ properties.add (DoubleProperty ('heightEm' , heightEm));
423
+ properties.add (DoubleProperty ('verticalAlignEm' , verticalAlignEm));
424
+ }
425
+ }
426
+
427
+ class KatexVlistNode extends KatexNode {
428
+ const KatexVlistNode ({
429
+ required this .rows,
430
+ super .debugHtmlNode,
431
+ });
432
+
433
+ final List <KatexVlistRowNode > rows;
434
+
435
+ @override
436
+ List <DiagnosticsNode > debugDescribeChildren () {
437
+ return rows.map ((row) => row.toDiagnosticsNode ()).toList ();
438
+ }
439
+ }
440
+
441
+ class KatexVlistRowNode extends ContentNode {
442
+ const KatexVlistRowNode ({
443
+ required this .verticalOffsetEm,
444
+ required this .node,
445
+ super .debugHtmlNode,
446
+ });
447
+
448
+ final double verticalOffsetEm;
449
+ final KatexSpanNode node;
450
+
451
+ @override
452
+ void debugFillProperties (DiagnosticPropertiesBuilder properties) {
453
+ super .debugFillProperties (properties);
454
+ properties.add (DoubleProperty ('verticalOffsetEm' , verticalOffsetEm));
455
+ }
456
+ }
457
+
405
458
class MathBlockNode extends MathNode implements BlockContentNode {
406
459
const MathBlockNode ({
407
460
super .debugHtmlNode,
0 commit comments