@@ -350,7 +350,7 @@ class MathBlockNode extends BlockContentNode {
350
350
});
351
351
352
352
final String texSource;
353
- final List <KatexSpanNode >? nodes;
353
+ final List <KatexNode >? nodes;
354
354
355
355
@override
356
356
void debugFillProperties (DiagnosticPropertiesBuilder properties) {
@@ -364,7 +364,11 @@ class MathBlockNode extends BlockContentNode {
364
364
}
365
365
}
366
366
367
- class KatexSpanNode extends ContentNode {
367
+ sealed class KatexNode extends ContentNode {
368
+ const KatexNode ({super .debugHtmlNode});
369
+ }
370
+
371
+ class KatexSpanNode extends KatexNode {
368
372
const KatexSpanNode ({
369
373
required this .styles,
370
374
required this .text,
@@ -374,7 +378,7 @@ class KatexSpanNode extends ContentNode {
374
378
375
379
final KatexSpanStyles styles;
376
380
final String ? text;
377
- final List <KatexSpanNode > nodes;
381
+ final List <KatexNode > nodes;
378
382
379
383
@override
380
384
void debugFillProperties (DiagnosticPropertiesBuilder properties) {
@@ -389,6 +393,28 @@ class KatexSpanNode extends ContentNode {
389
393
}
390
394
}
391
395
396
+ class KatexNegativeMarginNode extends KatexNode {
397
+ const KatexNegativeMarginNode ({
398
+ this .marginRightEm,
399
+ this .nodes = const [],
400
+ super .debugHtmlNode,
401
+ });
402
+
403
+ final double ? marginRightEm;
404
+ final List <KatexNode > nodes;
405
+
406
+ @override
407
+ void debugFillProperties (DiagnosticPropertiesBuilder properties) {
408
+ super .debugFillProperties (properties);
409
+ properties.add (StringProperty ('marginRightEm' , '$marginRightEm ' ));
410
+ }
411
+
412
+ @override
413
+ List <DiagnosticsNode > debugDescribeChildren () {
414
+ return nodes.map ((node) => node.toDiagnosticsNode ()).toList ();
415
+ }
416
+ }
417
+
392
418
class ImageNodeList extends BlockContentNode {
393
419
const ImageNodeList (this .images, {super .debugHtmlNode});
394
420
@@ -858,7 +884,7 @@ class MathInlineNode extends InlineContentNode {
858
884
});
859
885
860
886
final String texSource;
861
- final List <KatexSpanNode >? nodes;
887
+ final List <KatexNode >? nodes;
862
888
863
889
@override
864
890
void debugFillProperties (DiagnosticPropertiesBuilder properties) {
@@ -895,7 +921,7 @@ class GlobalTimeNode extends InlineContentNode {
895
921
896
922
////////////////////////////////////////////////////////////////
897
923
898
- ({List <KatexSpanNode >? spans, String texSource})? _parseMath (
924
+ ({List <KatexNode >? spans, String texSource})? _parseMath (
899
925
dom.Element element, {
900
926
required bool block,
901
927
}) {
@@ -945,7 +971,7 @@ class GlobalTimeNode extends InlineContentNode {
945
971
return null ;
946
972
}
947
973
948
- List <KatexSpanNode >? spans;
974
+ List <KatexNode >? spans;
949
975
try {
950
976
spans = KatexParser ().parseKatexHTML (katexHtmlElement);
951
977
} on KatexHtmlParseError catch (e, st) {
0 commit comments