Skip to content

Commit c020606

Browse files
committed
Add cypher labels and label event ordering
1 parent 9c70478 commit c020606

File tree

2 files changed

+46
-19
lines changed

2 files changed

+46
-19
lines changed

src/js/60-docs-roles.js

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ document.addEventListener('DOMContentLoaded', function () {
7070
var labelDetails = {
7171
class: dataLabel,
7272
role: dataLabel,
73+
eventOrder: rolesData[dataLabel].eventOrder || -1,
7374
text: rolesData[dataLabel].displayText || '',
7475
joinText: dataVersion ? rolesData[dataLabel].joinText || 'in' : '',
7576
data: {
@@ -133,7 +134,12 @@ document.addEventListener('DOMContentLoaded', function () {
133134

134135
labelSpan.appendChild(document.createTextNode(labelDetails.text))
135136

136-
labels.push(labelSpan)
137+
labels.push(
138+
{
139+
html: labelSpan,
140+
eventOrder: labelDetails.eventOrder,
141+
}
142+
)
137143
})
138144

139145
// we only generate labels from defined roles
@@ -143,19 +149,17 @@ document.addEventListener('DOMContentLoaded', function () {
143149
let labelsLocation = (roleDiv.firstElementChild && headings.includes(roleDiv.firstElementChild.nodeName)) ? roleDiv.firstElementChild : roleDiv
144150
const labelsDiv = createElement('div', 'labels')
145151

146-
for (const label of labels) {
152+
for (const label of labels.sort((a, b) => a.eventOrder - b.eventOrder)) {
147153
if (roleDiv.nodeName === 'H1' || headings.includes(roleDiv.firstElementChild.nodeName)) {
148-
label.classList.add('header-label')
154+
label.html.classList.add('header-label')
149155
}
150-
labelsDiv.append(label)
156+
labelsDiv.append(label.html)
151157

152-
for (var d in label.dataset) {
153-
roleDiv.dataset[d] = label.dataset[d]
158+
for (var d in label.html.dataset) {
159+
roleDiv.dataset[d] = label.html.dataset[d]
154160
}
155161
}
156162

157-
console.log(roleDiv.classList)
158-
159163
if (roleDiv.classList.contains('admonitionblock')) {
160164
labelsLocation = roleDiv.querySelector('td.content')
161165
}

src/js/data/rolesData.json

Lines changed: 34 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,18 @@
2222
"product": "Graph Academy",
2323
"displayText": "Graph Academy"
2424
},
25+
"cypher-5":{
26+
"description": "Function available in Cypher 5",
27+
"labelCategory": "product",
28+
"product": "Cypher 5",
29+
"displayText": "Cypher 5"
30+
},
31+
"cypher-25":{
32+
"description": "Function available in Cypher 25",
33+
"labelCategory": "product",
34+
"product": "Cypher 25",
35+
"displayText": "Cypher 25"
36+
},
2537
"enterprise":{
2638
"description": "Function available in Enterprise Edition only",
2739
"labelCategory": "product",
@@ -122,18 +134,21 @@
122134
"description": "The feature or function was added in the version stated",
123135
"labelCategory": "version",
124136
"displayText": "Introduced",
125-
"altDisplayText": "Added"
137+
"altDisplayText": "Added",
138+
"eventOrder": 1
126139
},
127140
"added":{
128141
"description": "The feature or function was added in the version stated",
129142
"labelCategory": "version",
130143
"displayText": "Introduced",
131-
"altDisplayText": "Added"
144+
"altDisplayText": "Added",
145+
"eventOrder": 1
132146
},
133147
"changed":{
134148
"description": "The feature or function was changed in the version stated",
135149
"labelCategory": "version",
136-
"displayText": "Changed"
150+
"displayText": "Changed",
151+
"eventOrder": 2
137152
},
138153
"default":{
139154
"description": "The value shown is the default value",
@@ -143,7 +158,8 @@
143158
"discontinued":{
144159
"description": "The feature is no longer available",
145160
"labelCategory": "version",
146-
"displayText": "Discontinued"
161+
"displayText": "Discontinued",
162+
"eventOrder": 4
147163
},
148164
"dynamic":{
149165
"labelCategory": "function",
@@ -152,34 +168,41 @@
152168
},
153169
"alpha":{
154170
"labelCategory": "version",
155-
"displayText": "Alpha"
171+
"displayText": "Alpha",
172+
"eventOrder": 0
156173
},
157174
"beta":{
158175
"labelCategory": "version",
159-
"displayText": "Beta"
176+
"displayText": "Beta",
177+
"eventOrder": 0
160178
},
161179
"beta-until":{
162180
"description": "The feature or function was in beta until the version specified",
163181
"labelCategory": "version",
164182
"displayText": "Beta",
165-
"joinText": "until"
183+
"joinText": "until",
184+
"eventOrder": 0
166185
},
167186
"deprecated":{
168187
"labelCategory": "version",
169-
"displayText": "Deprecated"
188+
"displayText": "Deprecated",
189+
"eventOrder": 3
170190
},
171191
"removed":{
172192
"labelCategory": "version",
173-
"displayText": "Removed"
193+
"displayText": "Removed",
194+
"eventOrder": 4
174195
},
175196
"renamed":{
176197
"labelCategory": "version",
177-
"displayText": "Renamed"
198+
"displayText": "Renamed",
199+
"eventOrder": 2
178200
},
179201
"updated":{
180202
"description": "The feature or function was updated in the version stated",
181203
"labelCategory": "version",
182-
"displayText": "Updated"
204+
"displayText": "Updated",
205+
"eventOrder": 2
183206
},
184207
"fabric":{
185208
"labelCategory": "function",

0 commit comments

Comments
 (0)