Skip to content

Commit 5edb615

Browse files
committed
wip: Provide ready-made configuration snippets to help set up the app's configuration file #1140
1 parent 7a82be5 commit 5edb615

File tree

3 files changed

+73
-45
lines changed

3 files changed

+73
-45
lines changed

extras/configs/helpers.js

+33-2
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,39 @@ module.exports = {
1919
content: [{ component }]
2020
}
2121
},
22+
toggleWidget: (options) => {
23+
const params = Object.assign({ renderer: 'item' }, options)
24+
return {
25+
id: `toggle-${params.widgetId}`,
26+
icon: params.icon,
27+
label: params.renderer === 'item' ? params.showMessage : null,
28+
tooltip: params.renderer === 'button' ? params.showMessage : null,
29+
toggle: {
30+
label: params.renderer === 'item' ? params.hideMessage : null,
31+
tooltip: params.renderer === 'button' ? params.hideMessage : null,
32+
},
33+
renderer: params.renderer,
34+
widgetId: params.widgetId,
35+
component: 'action/KToggleWidgetVisibility'
36+
}
37+
},
38+
toggleSticky: (options) => {
39+
const params = Object.assign({ renderer: 'item' }, options)
40+
return {
41+
id: `toggle-${params.stickyId}`,
42+
icon: params.icon,
43+
label: params.renderer === 'item' ? params.showMessage : null,
44+
tooltip: params.renderer === 'button' ? params.showMessage : null,
45+
toggle: {
46+
label: params.renderer === 'item' ? params.hideMessage : null,
47+
tooltip: params.renderer === 'button' ? params.hideMessage : null,
48+
},
49+
renderer: params.renderer,
50+
stickyId: params.stickyId,
51+
component: 'action/KToggleStickyVisibility'
52+
}
53+
},
2254
visible: (element, rule) => {
2355
return Object.assign(element, { visible: rule })
24-
},
25-
56+
}
2657
}

extras/configs/panes.top.js

+39-42
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
const helpers = require('./helpers.js')
2+
13
module.exports = {
24
locateUser: (renderer = 'button') => {
35
return {
@@ -33,49 +35,40 @@ module.exports = {
3335
}
3436
},
3537
toggleLegend: (renderer = 'item') => {
36-
return {
37-
id: 'toggle-legend',
38-
icon: 'las la-list',
39-
label: renderer === 'item' ? 'layout.SHOW_LEGEND' : null,
40-
tooltip: renderer === 'button' ? 'layout.SHOW_LEGEND': null,
41-
toggle: {
42-
label: renderer === 'item' ? 'layout.HIDE_LEGEND' : null,
43-
tooltip: renderer === 'button' ? 'layout.HIDE_LEGEND': null,
44-
},
45-
renderer,
46-
component: 'action/KToggleWidgetVisibility',
47-
widgetId: 'legend-widget'
48-
}
38+
return helpers.toggleWidget({
39+
widgetId: 'legend-widget',
40+
icon: 'las la-atlas',
41+
showMessage: 'layout.SHOW_LEGEND',
42+
hideMessage: 'layout.HIDE_LEGEND',
43+
renderer
44+
})
45+
},
46+
toggleTimeSeries: (renderer = 'item') => {
47+
return helpers.toggleWidget({
48+
widgetId: 'time-series-widget',
49+
icon: 'las la-chart-line',
50+
showMessage: 'layout.SHOW_TIME_SERIES',
51+
hideMessage: 'layout.HIDE_TIME_SERIES',
52+
renderer
53+
})
4954
},
5055
togglePosition: (renderer = 'item') => {
51-
return {
52-
id: 'toggle-position-sticky',
53-
icon: 'las la-plus',
54-
label: renderer === 'item' ? 'layout.SHOW_POSITION' : null,
55-
tooltip: renderer === 'button' ? 'layout.SHOW_POSITION': null,
56-
toggle: {
57-
label: renderer === 'item' ? 'layout.HIDE_POSITION' : null,
58-
tooltip: renderer === 'button' ? 'layout.HIDE_POSITION': null,
59-
},
60-
renderer,
61-
component: 'action/KToggleStickyVisibility',
62-
stickyId: 'position-sticky'
63-
}
56+
return helpers.toggleSticky({
57+
stickyId: 'position-sticky',
58+
icon: 'las la-plus',
59+
showMessage: 'layout.SHOW_POSITION',
60+
hideMessage: 'layout.HIDE_POSITION',
61+
renderer
62+
})
6463
},
6564
toggleNorthArrow: (renderer = 'item') => {
66-
return {
67-
id: 'toggle-north-arrow-sticky',
65+
return helpers.toggleSticky({
66+
stickyId: 'north-arrow-sticky',
6867
icon: 'las la-location-arrow',
69-
label: renderer === 'item' ? 'layout.SHOW_NORTH_ARROW' : null,
70-
tooltip: renderer === 'button' ? 'layout.SHOW_NORTH_ARROW': null,
71-
toggle: {
72-
label: renderer === 'item' ? 'layout.HIDE_NORTH_ARROW' : null,
73-
tooltip: renderer === 'button' ? 'layout.HIDE_NORTH_ARROW': null,
74-
},
75-
renderer,
76-
component: 'action/KToggleStickyVisibility',
77-
stickyId: 'north-arrow-sticky'
78-
}
68+
showMessage: 'layout.SHOW_NORTH_ARROW',
69+
hideMessage: 'layout.HIDE_NORTH_ARROW',
70+
renderer
71+
})
7972
},
8073
toggleFullscreen: (renderer = 'item') => {
8174
return {
@@ -92,11 +85,15 @@ module.exports = {
9285
renderer
9386
}
9487
},
95-
restoreMode: (mode, tooltip, icon = 'las la-times') => {
88+
restoreMode: (options) => {
89+
// mode: mode to be restored
90+
// icon: icon to be displayed, default is `las la-times`
91+
// tooltip: tooltip to be displayed
92+
const params = Object.assign({ icon: "las-la-times" }, options)
9693
return {
97-
id: `restore-${mode}`,
98-
icon,
99-
tooltip,
94+
id: `restore-${params.mode}`,
95+
icon: params.icon,
96+
tooltip: params.tooltip,
10097
handler: { name: 'setTopPaneMode', params: [mode] }
10198
}
10299
}

extras/configs/widgets.left.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ module.exports = {
22
LEGEND: {
33
id: 'legend-widget',
44
label: 'KLegend.LABEL',
5-
icon: 'las la-list',
5+
icon: 'las la-atlas',
66
scrollable: true,
77
content: { component: 'legend/KLegend' }
88
},

0 commit comments

Comments
 (0)