@@ -64,31 +64,9 @@ function makeSyntaxPopoverContent(data) {
64
64
const title = document . createElement ( "div" ) ;
65
65
title . classList . add ( "title" ) ;
66
66
title . innerText = `${ data . text } Syntax` ;
67
- container . appendChild ( title ) ;
67
+ title . appendChild ( makeSyntaxTypeBadge ( data . type ) ) ;
68
68
69
- const label = document . createElement ( "span" ) ;
70
- label . classList . add ( "badge" , "text-bg-light" ) ;
71
- switch ( data . type ) {
72
- case "decl" : {
73
- label . innerText = "DeclSyntax" ;
74
- break ;
75
- }
76
- case "expr" : {
77
- label . innerText = "ExprSyntax" ;
78
- break ;
79
- }
80
- case "pattern" : {
81
- label . innerText = "PatternSyntax" ;
82
- break ;
83
- }
84
- case "type" : {
85
- label . innerText = "TypeSyntax" ;
86
- break ;
87
- }
88
- default :
89
- break ;
90
- }
91
- title . appendChild ( label ) ;
69
+ container . appendChild ( title ) ;
92
70
93
71
const dl = document . createElement ( "dl" ) ;
94
72
@@ -165,6 +143,32 @@ function makeDescriptionList(term, details, list) {
165
143
list . appendChild ( dd ) ;
166
144
}
167
145
146
+ function makeSyntaxTypeBadge ( type ) {
147
+ const badge = document . createElement ( "span" ) ;
148
+ badge . classList . add ( "badge" , "text-bg-light" ) ;
149
+ switch ( type ) {
150
+ case "decl" : {
151
+ badge . innerText = "DeclSyntax" ;
152
+ break ;
153
+ }
154
+ case "expr" : {
155
+ badge . innerText = "ExprSyntax" ;
156
+ break ;
157
+ }
158
+ case "pattern" : {
159
+ badge . innerText = "PatternSyntax" ;
160
+ break ;
161
+ }
162
+ case "type" : {
163
+ badge . innerText = "TypeSyntax" ;
164
+ break ;
165
+ }
166
+ default :
167
+ break ;
168
+ }
169
+ return badge ;
170
+ }
171
+
168
172
function stripHTMLTag ( text ) {
169
173
const div = document . createElement ( "div" ) ;
170
174
div . innerHTML = text
0 commit comments