@@ -5,6 +5,95 @@ namespace Abies.Html;
55
66public static class Elements
77{
8+ // Math-related and scientific content elements
9+ public static Node math ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
10+ => element ( "math" , attributes , children , id ) ;
11+
12+ public static Node var ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
13+ => element ( "var" , attributes , children , id ) ;
14+
15+ // Less common but valid elements
16+ public static Node s ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
17+ => element ( "s" , attributes , children , id ) ;
18+
19+ public static Node rb ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
20+ => element ( "rb" , attributes , children , id ) ;
21+
22+ public static Node rtc ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
23+ => element ( "rtc" , attributes , children , id ) ;
24+
25+ // Additional SVG elements
26+ public static Node desc ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
27+ => element ( "desc" , attributes , children , id ) ;
28+
29+ public static Node ellipse ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
30+ => element ( "ellipse" , attributes , Array . Empty < Node > ( ) , id ) ;
31+
32+ public static Node text ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
33+ => element ( "text" , attributes , children , id ) ;
34+
35+ public static Node tspan ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
36+ => element ( "tspan" , attributes , children , id ) ;
37+
38+ public static Node filter ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
39+ => element ( "filter" , attributes , children , id ) ;
40+
41+ public static Node feBlend ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
42+ => element ( "feBlend" , attributes , Array . Empty < Node > ( ) , id ) ;
43+
44+ public static Node feColorMatrix ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
45+ => element ( "feColorMatrix" , attributes , Array . Empty < Node > ( ) , id ) ;
46+
47+ public static Node feComponentTransfer ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
48+ => element ( "feComponentTransfer" , attributes , children , id ) ;
49+
50+ public static Node feComposite ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
51+ => element ( "feComposite" , attributes , Array . Empty < Node > ( ) , id ) ;
52+
53+ public static Node feConvolveMatrix ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
54+ => element ( "feConvolveMatrix" , attributes , Array . Empty < Node > ( ) , id ) ;
55+
56+ public static Node feDiffuseLighting ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
57+ => element ( "feDiffuseLighting" , attributes , children , id ) ;
58+
59+ public static Node feDisplacementMap ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
60+ => element ( "feDisplacementMap" , attributes , Array . Empty < Node > ( ) , id ) ;
61+
62+ public static Node feFlood ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
63+ => element ( "feFlood" , attributes , Array . Empty < Node > ( ) , id ) ;
64+
65+ public static Node feGaussianBlur ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
66+ => element ( "feGaussianBlur" , attributes , Array . Empty < Node > ( ) , id ) ;
67+
68+ public static Node feImage ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
69+ => element ( "feImage" , attributes , Array . Empty < Node > ( ) , id ) ;
70+
71+ public static Node feMerge ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
72+ => element ( "feMerge" , attributes , children , id ) ;
73+
74+ public static Node feMergeNode ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
75+ => element ( "feMergeNode" , attributes , Array . Empty < Node > ( ) , id ) ;
76+
77+ public static Node feMorphology ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
78+ => element ( "feMorphology" , attributes , Array . Empty < Node > ( ) , id ) ;
79+
80+ public static Node feOffset ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
81+ => element ( "feOffset" , attributes , Array . Empty < Node > ( ) , id ) ;
82+
83+ public static Node feSpecularLighting ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
84+ => element ( "feSpecularLighting" , attributes , children , id ) ;
85+
86+ public static Node feTile ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
87+ => element ( "feTile" , attributes , Array . Empty < Node > ( ) , id ) ;
88+
89+ public static Node feTurbulence ( DOM . Attribute [ ] attributes , [ CallerLineNumber ] int id = 0 )
90+ => element ( "feTurbulence" , attributes , Array . Empty < Node > ( ) , id ) ;
91+
92+ public static Node symbol ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
93+ => element ( "symbol" , attributes , children , id ) ;
94+
95+ public static Node pattern ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
96+ => element ( "pattern" , attributes , children , id ) ;
897
998 public static Element element ( string tag , DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
1099 => new ( id . ToString ( ) , tag , [ Attributes . id ( id . ToString ( ) ) , .. attributes ] , children ) ;
@@ -265,8 +354,6 @@ public static Node kbd(DOM.Attribute[] attributes, Node[] children, [CallerLineN
265354 public static Node samp ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
266355 => element ( "samp" , attributes , children , id ) ;
267356
268- public static Node var ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
269- => element ( "var" , attributes , children , id ) ;
270357
271358 public static Node sup ( DOM . Attribute [ ] attributes , Node [ ] children , [ CallerLineNumber ] int id = 0 )
272359 => element ( "sup" , attributes , children , id ) ;
@@ -808,11 +895,229 @@ public static DOM.Attribute type_(string value, [CallerLineNumber] int id = 0)
808895
809896 public static DOM . Attribute acceptcharset ( string value , [ CallerLineNumber ] int id = 0 )
810897 => attribute ( "accept-charset" , value , id ) ;
898+
899+ // Extremely rare but valid attributes
900+ public static DOM . Attribute allowfullscreen ( string value = "true" , [ CallerLineNumber ] int id = 0 )
901+ => attribute ( "allowfullscreen" , value , id ) ;
902+
903+ public static DOM . Attribute as_ ( string value , [ CallerLineNumber ] int id = 0 )
904+ => attribute ( "as" , value , id ) ;
905+
906+ public static DOM . Attribute challenge ( string value , [ CallerLineNumber ] int id = 0 )
907+ => attribute ( "challenge" , value , id ) ;
908+
909+ public static DOM . Attribute color ( string value , [ CallerLineNumber ] int id = 0 )
910+ => attribute ( "color" , value , id ) ;
911+
912+ public static DOM . Attribute default_ ( string value = "true" , [ CallerLineNumber ] int id = 0 )
913+ => attribute ( "default" , value , id ) ;
914+
915+ public static DOM . Attribute dirname ( string value , [ CallerLineNumber ] int id = 0 )
916+ => attribute ( "dirname" , value , id ) ;
917+
918+ public static DOM . Attribute high ( string value , [ CallerLineNumber ] int id = 0 )
919+ => attribute ( "high" , value , id ) ;
920+
921+ public static DOM . Attribute keytype ( string value , [ CallerLineNumber ] int id = 0 )
922+ => attribute ( "keytype" , value , id ) ;
923+
924+ public static DOM . Attribute kind ( string value , [ CallerLineNumber ] int id = 0 )
925+ => attribute ( "kind" , value , id ) ;
926+
927+ public static DOM . Attribute low ( string value , [ CallerLineNumber ] int id = 0 )
928+ => attribute ( "low" , value , id ) ;
929+
930+ public static DOM . Attribute optimum ( string value , [ CallerLineNumber ] int id = 0 )
931+ => attribute ( "optimum" , value , id ) ;
932+
933+ public static DOM . Attribute playsinline ( string value = "true" , [ CallerLineNumber ] int id = 0 )
934+ => attribute ( "playsinline" , value , id ) ;
935+
936+ public static DOM . Attribute results ( string value , [ CallerLineNumber ] int id = 0 )
937+ => attribute ( "results" , value , id ) ;
938+
939+ public static DOM . Attribute seamless ( string value = "true" , [ CallerLineNumber ] int id = 0 )
940+ => attribute ( "seamless" , value , id ) ;
941+
942+ public static DOM . Attribute shape ( string value , [ CallerLineNumber ] int id = 0 )
943+ => attribute ( "shape" , value , id ) ;
944+
945+ public static DOM . Attribute srcdoc ( string value , [ CallerLineNumber ] int id = 0 )
946+ => attribute ( "srcdoc" , value , id ) ;
947+
948+ public static DOM . Attribute srclang ( string value , [ CallerLineNumber ] int id = 0 )
949+ => attribute ( "srclang" , value , id ) ;
950+
951+ // More SVG attributes
952+ public static DOM . Attribute rx ( string value , [ CallerLineNumber ] int id = 0 )
953+ => attribute ( "rx" , value , id ) ;
954+
955+ public static DOM . Attribute ry ( string value , [ CallerLineNumber ] int id = 0 )
956+ => attribute ( "ry" , value , id ) ;
957+
958+ public static DOM . Attribute dx ( string value , [ CallerLineNumber ] int id = 0 )
959+ => attribute ( "dx" , value , id ) ;
960+
961+ public static DOM . Attribute dy ( string value , [ CallerLineNumber ] int id = 0 )
962+ => attribute ( "dy" , value , id ) ;
963+
964+ public static DOM . Attribute gradientUnits ( string value , [ CallerLineNumber ] int id = 0 )
965+ => attribute ( "gradientUnits" , value , id ) ;
966+
967+ public static DOM . Attribute patternUnits ( string value , [ CallerLineNumber ] int id = 0 )
968+ => attribute ( "patternUnits" , value , id ) ;
969+
970+ public static DOM . Attribute spreadMethod ( string value , [ CallerLineNumber ] int id = 0 )
971+ => attribute ( "spreadMethod" , value , id ) ;
972+
973+ public static DOM . Attribute transform ( string value , [ CallerLineNumber ] int id = 0 )
974+ => attribute ( "transform" , value , id ) ;
975+
976+ public static DOM . Attribute markerWidth ( string value , [ CallerLineNumber ] int id = 0 )
977+ => attribute ( "markerWidth" , value , id ) ;
978+
979+ public static DOM . Attribute markerHeight ( string value , [ CallerLineNumber ] int id = 0 )
980+ => attribute ( "markerHeight" , value , id ) ;
981+
982+ public static DOM . Attribute refX ( string value , [ CallerLineNumber ] int id = 0 )
983+ => attribute ( "refX" , value , id ) ;
984+
985+ public static DOM . Attribute refY ( string value , [ CallerLineNumber ] int id = 0 )
986+ => attribute ( "refY" , value , id ) ;
987+
988+ public static DOM . Attribute markerUnits ( string value , [ CallerLineNumber ] int id = 0 )
989+ => attribute ( "markerUnits" , value , id ) ;
990+
991+ public static DOM . Attribute preserveAspectRatio ( string value , [ CallerLineNumber ] int id = 0 )
992+ => attribute ( "preserveAspectRatio" , value , id ) ;
993+
994+ public static DOM . Attribute vectorEffect ( string value , [ CallerLineNumber ] int id = 0 )
995+ => attribute ( "vector-effect" , value , id ) ;
996+
997+ public static DOM . Attribute opacity ( string value , [ CallerLineNumber ] int id = 0 )
998+ => attribute ( "opacity" , value , id ) ;
999+
1000+ public static DOM . Attribute offset ( string value , [ CallerLineNumber ] int id = 0 )
1001+ => attribute ( "offset" , value , id ) ;
1002+
1003+ // Additional ARIA attributes
1004+ public static DOM . Attribute ariaAtomic ( string value , [ CallerLineNumber ] int id = 0 )
1005+ => attribute ( "aria-atomic" , value , id ) ;
1006+
1007+ public static DOM . Attribute ariaBusy ( string value , [ CallerLineNumber ] int id = 0 )
1008+ => attribute ( "aria-busy" , value , id ) ;
1009+
1010+ public static DOM . Attribute ariaChecked ( string value , [ CallerLineNumber ] int id = 0 )
1011+ => attribute ( "aria-checked" , value , id ) ;
1012+
1013+ public static DOM . Attribute ariaCurrent ( string value , [ CallerLineNumber ] int id = 0 )
1014+ => attribute ( "aria-current" , value , id ) ;
1015+
1016+ public static DOM . Attribute ariaDisabled ( string value , [ CallerLineNumber ] int id = 0 )
1017+ => attribute ( "aria-disabled" , value , id ) ;
1018+
1019+ public static DOM . Attribute ariaErrormessage ( string value , [ CallerLineNumber ] int id = 0 )
1020+ => attribute ( "aria-errormessage" , value , id ) ;
1021+
1022+ public static DOM . Attribute ariaHaspopup ( string value , [ CallerLineNumber ] int id = 0 )
1023+ => attribute ( "aria-haspopup" , value , id ) ;
1024+
1025+ public static DOM . Attribute ariaInvalid ( string value , [ CallerLineNumber ] int id = 0 )
1026+ => attribute ( "aria-invalid" , value , id ) ;
1027+
1028+ public static DOM . Attribute ariaKeyshortcuts ( string value , [ CallerLineNumber ] int id = 0 )
1029+ => attribute ( "aria-keyshortcuts" , value , id ) ;
1030+
1031+ public static DOM . Attribute ariaLive ( string value , [ CallerLineNumber ] int id = 0 )
1032+ => attribute ( "aria-live" , value , id ) ;
1033+
1034+ public static DOM . Attribute ariaModal ( string value , [ CallerLineNumber ] int id = 0 )
1035+ => attribute ( "aria-modal" , value , id ) ;
1036+
1037+ public static DOM . Attribute ariaMultiline ( string value , [ CallerLineNumber ] int id = 0 )
1038+ => attribute ( "aria-multiline" , value , id ) ;
1039+
1040+ public static DOM . Attribute ariaMultiselectable ( string value , [ CallerLineNumber ] int id = 0 )
1041+ => attribute ( "aria-multiselectable" , value , id ) ;
1042+
1043+ public static DOM . Attribute ariaOrientation ( string value , [ CallerLineNumber ] int id = 0 )
1044+ => attribute ( "aria-orientation" , value , id ) ;
1045+
1046+ public static DOM . Attribute ariaPlaceholder ( string value , [ CallerLineNumber ] int id = 0 )
1047+ => attribute ( "aria-placeholder" , value , id ) ;
1048+
1049+ public static DOM . Attribute ariaReadonly ( string value , [ CallerLineNumber ] int id = 0 )
1050+ => attribute ( "aria-readonly" , value , id ) ;
1051+
1052+ public static DOM . Attribute ariaRelevant ( string value , [ CallerLineNumber ] int id = 0 )
1053+ => attribute ( "aria-relevant" , value , id ) ;
1054+
1055+ public static DOM . Attribute ariaRequired ( string value , [ CallerLineNumber ] int id = 0 )
1056+ => attribute ( "aria-required" , value , id ) ;
1057+
1058+ public static DOM . Attribute ariaRoledescription ( string value , [ CallerLineNumber ] int id = 0 )
1059+ => attribute ( "aria-roledescription" , value , id ) ;
1060+
1061+ public static DOM . Attribute ariaSort ( string value , [ CallerLineNumber ] int id = 0 )
1062+ => attribute ( "aria-sort" , value , id ) ;
8111063}
8121064
8131065public static class Events
8141066{
1067+ // Rarely used touch/pointer/mobile events
1068+ public static Handler ongotpointercapture ( Message command , [ CallerLineNumber ] int id = 0 )
1069+ => on ( "gotpointercapture" , command , id ) ;
1070+
1071+ public static Handler onlostpointercapture ( Message command , [ CallerLineNumber ] int id = 0 )
1072+ => on ( "lostpointercapture" , command , id ) ;
1073+
1074+ // Advanced media handling
1075+ public static Handler onencrypted ( Message command , [ CallerLineNumber ] int id = 0 )
1076+ => on ( "encrypted" , command , id ) ;
1077+
1078+ public static Handler onwaiting ( Message command , [ CallerLineNumber ] int id = 0 )
1079+ => on ( "waiting" , command , id ) ;
1080+
1081+ // The newest bleeding-edge events (HTML Living Standard)
1082+ public static Handler onformdata ( Message command , [ CallerLineNumber ] int id = 0 )
1083+ => on ( "formdata" , command , id ) ;
1084+
1085+ public static Handler onbeforexrselect ( Message command , [ CallerLineNumber ] int id = 0 )
1086+ => on ( "beforexrselect" , command , id ) ;
8151087
1088+ public static Handler onafterprint ( Message command , [ CallerLineNumber ] int id = 0 )
1089+ => on ( "afterprint" , command , id ) ;
1090+
1091+ public static Handler onbeforeprint ( Message command , [ CallerLineNumber ] int id = 0 )
1092+ => on ( "beforeprint" , command , id ) ;
1093+
1094+ public static Handler onlanguagechange ( Message command , [ CallerLineNumber ] int id = 0 )
1095+ => on ( "languagechange" , command , id ) ;
1096+
1097+ public static Handler onmessage ( Message command , [ CallerLineNumber ] int id = 0 )
1098+ => on ( "message" , command , id ) ;
1099+
1100+ public static Handler onmessageerror ( Message command , [ CallerLineNumber ] int id = 0 )
1101+ => on ( "messageerror" , command , id ) ;
1102+
1103+ public static Handler onrejectionhandled ( Message command , [ CallerLineNumber ] int id = 0 )
1104+ => on ( "rejectionhandled" , command , id ) ;
1105+
1106+ public static Handler onunhandledrejection ( Message command , [ CallerLineNumber ] int id = 0 )
1107+ => on ( "unhandledrejection" , command , id ) ;
1108+
1109+ public static Handler onsecuritypolicyviolation ( Message command , [ CallerLineNumber ] int id = 0 )
1110+ => on ( "securitypolicyviolation" , command , id ) ;
1111+
1112+ // Experimental sensor/device API events
1113+ public static Handler ondevicemotion ( Message command , [ CallerLineNumber ] int id = 0 )
1114+ => on ( "devicemotion" , command , id ) ;
1115+
1116+ public static Handler ondeviceorientation ( Message command , [ CallerLineNumber ] int id = 0 )
1117+ => on ( "deviceorientation" , command , id ) ;
1118+
1119+ public static Handler ondeviceorientationabsolute ( Message command , [ CallerLineNumber ] int id = 0 )
1120+ => on ( "deviceorientationabsolute" , command , id ) ;
8161121 // Dialog events
8171122 public static Handler onclose ( Message command , [ CallerLineNumber ] int id = 0 )
8181123 => on ( "close" , command , id ) ;
@@ -1066,9 +1371,6 @@ public static Handler onstalled(Message command, [CallerLineNumber] int id = 0)
10661371 public static Handler onsuspend ( Message command , [ CallerLineNumber ] int id = 0 )
10671372 => on ( "suspend" , command , id ) ;
10681373
1069- public static Handler onwaiting ( Message command , [ CallerLineNumber ] int id = 0 )
1070- => on ( "waiting" , command , id ) ;
1071-
10721374 public static Handler onratechange ( Message command , [ CallerLineNumber ] int id = 0 )
10731375 => on ( "ratechange" , command , id ) ;
10741376
0 commit comments