File : data/Config.js

1
/*
2
Copyright - 2017 2023 - wwwouaiebe - Contact: https://www.ouaie.be/
3
4
This  program is free software;
5
you can redistribute it and/or modify it under the terms of the
6
GNU General Public License as published by the Free Software Foundation;
7
either version 3 of the License, or any later version.
8
9
This program is distributed in the hope that it will be useful,
10
but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
GNU General Public License for more details.
13
14
You should have received a copy of the GNU General Public License
15
along with this program; if not, write to the Free Software
16
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
17
*/
18
/*
19
Changes:
20
    - v4.0.0:
21
        - created from v3.6.0
22
Doc reviewed 202208
23
 */
24
25
/* ------------------------------------------------------------------------------------------------------------------------- */
26
/**
27
Class used to store the configuration of the code
28
*/
29
/* ------------------------------------------------------------------------------------------------------------------------- */
30
/* eslint-disable no-magic-numbers */
31
32
const theConfig = {
33
    ApiKeys : {
34
        saveToSessionStorage : true
35
    },
36
    ApiKeysDialog : {
37
        haveUnsecureButtons : true,
38
        showApiKeys : false,
39
        showButton : true
40
    },
41
    baseDialog : {
42
        cancelTouchX : 100,
43
        cancelTouchY : 150,
44
        deltaZoomDistance : 75,
45
        touchTopScreen : true
46
    },
47
    contextMenu : {
48
        timeout : 1500
49
    },
50
    dockableBaseDialog : {
51
        timeout : 1500,
52
        hideOnMouseLeave : false
53
    },
54
    errorsUI :
55
    {
56
        helpTimeOut : 30000,
57
        showError : true,
58
        showHelp : false,
59
        showInfo : true,
60
        showWarning : true,
61
        timeOut : 10000
62
    },
63
    files :
64
    {
65
        openGpx : [ 'gpx' ],
66
        openTaN : [ 'json', 'trv' ],
67
        writeTouch : 'trv',
68
        writeOthers : 'trv'
69
    },
70
    fontSize :
71
    {
72
        initialValue : 3.5,
73
        incrementValue : 0.5
74
    },
75
    FullScreenUI :
76
    {
77
        timeOut : 5000,
78
        screenMaxWidth : 1200
79
    },
80
    geoCoder : {
81
        distances : {
82
            city : 1200,
83
            hamlet : 200,
84
            town : 1500,
85
            village : 400
86
        },
87
        osmCityAdminLevel : {
88
            DEFAULT : '8',
89
            GB : '10'
90
        }
91
    },
92
    geoLocation : {
93
        marker : {
94
            color : '\u0023ff0000',
95
            radius : 0
96
        },
97
        options : {
98
            enableHighAccuracy : true,
99
            maximumAge : 0,
100
            timeout : 3600000
101
        },
102
        watch : true,
103
        zoomFactor : 17,
104
        zoomToPosition : true
105
    },
106
    itineraryPoint : {
107
        marker : {
108
            color : '\u0023ff0000',
109
            fill : false,
110
            radius : 7,
111
            weight : 2
112
        },
113
        zoomFactor : 17
114
    },
115
    mapContextMenu : {
116
        mouseMaxRouteDistance : 10,
117
        touchMaxRouteDistance : 10
118
    },
119
    mapLayersToolbar : {
120
        theDevil : {
121
            addButton : true
122
        }
123
    },
124
    map :
125
    {
126
        center : {
127
            lat : 50.50923,
128
            lng : 5.49542
129
        },
130
        zoom : 12
131
    },
132
    nominatim :
133
    {
134
        url : 'https://nominatim.openstreetmap.org/',
135
        language : '*'
136
    },
137
    note : {
138
        grip : {
139
            size : 10,
140
            opacity : 0,
141
            moveOpacity : 1
142
        },
143
        haveBackground : false,
144
        maxManeuversNotes : 100,
145
        polyline : {
146
            color : '\u0023808080',
147
            weight : 1
148
        },
149
        svgIcon : {
150
            angleDistance : 10,
151
            angleDirection :
152
            {
153
                right : 35,
154
                slightRight : 80,
155
                continue : 100,
156
                slightLeft : 145,
157
                left : 200,
158
                sharpLeft : 270,
159
                sharpRight : 340
160
            },
161
            rcnRefDistance : 20,
162
            roadbookFactor : 6,
163
            zoom : 17
164
        }
165
    },
166
    noteDialog : {
167
        areaHeight : {
168
            icon : 2,
169
            popupContent : 8
170
        },
171
        theDevil : {
172
            addButton : true,
173
            zoomFactor : 17
174
        }
175
    },
176
    osmSearchDialog :
177
    {
178
        dialogX : 50,
179
        dialogY : 0
180
    },
181
    osmSearch : {
182
        nextSearchLimit : {
183
            color : '\u0023ff0000',
184
            fill : false,
185
            weight : 1
186
        },
187
        previousSearchLimit : {
188
            color : '\u0023006400',
189
            fill : false,
190
            weight : 1
191
        },
192
        searchPointMarker : {
193
            color : '\u0023006400',
194
            fill : false,
195
            radius : 20,
196
            weight : 4
197
        },
198
        searchPointPolyline : {
199
            color : '\u0023006400',
200
            fill : false,
201
            weight : 4
202
        },
203
        showSearchNoteDialog : false
204
    },
205
    overpassApi : {
206
        useNwr : true,
207
        timeOut : 40,
208
        url : 'https://lz4.overpass-api.de/api/interpreter'
209
210
        // url : 'https://overpass.openstreetmap.fr/api/interpreter'
211
        // url : 'https://overpass.kumi.systems/api/interpreter'
212
    },
213
    printRouteMap :
214
    {
215
        firefoxBrowser : true,
216
        isEnabled : true,
217
        maxTiles : 240,
218
        paperWidth : 287,
219
        paperHeight : 200,
220
        printNotes : true,
221
        borderWidth : 10,
222
        zoomFactor : 15,
223
        entryPointMarker : {
224
            color : '\u002300ff00',
225
            weight : 4,
226
            radius : 10,
227
            fill : true,
228
            fillOpacity : 1
229
        },
230
        exitPointMarker : {
231
            color : '\u0023ff0000',
232
            weight : 4,
233
            radius : 10,
234
            fill : true,
235
            fillOpacity : 1
236
        }
237
    },
238
    route : {
239
        color : '\u0023ff0000',
240
        dashIndex : 0,
241
        dashChoices : [
242
            {
243
                text : '——————',
244
                iDashArray : [ 0 ]
245
            },
246
            {
247
                text : '— — — — —',
248
                iDashArray : [ 4, 2 ]
249
            },
250
            {
251
                text : '—‧—‧—‧—‧—',
252
                iDashArray : [ 4, 2, 0, 2 ]
253
            },
254
            {
255
                text : '················',
256
                iDashArray : [ 0, 2 ]
257
            }
258
        ],
259
        elev : {
260
            smooth : true,
261
            smoothCoefficient : 2.5,
262
            smoothPoints : 3
263
        },
264
        showDragTooltip : 0,
265
        width : 5
266
    },
267
    routeEditor : {
268
        showEditedRouteInRoadbook : true
269
    },
270
    toolbars : {
271
        timeOut : 1500
272
    },
273
    travelNotes : {
274
        haveBeforeUnloadWarning : true,
275
        language : 'fr',
276
        startupRouteEdition : true,
277
        resizeDelay : 200
278
    },
279
    travelNotesToolbar :
280
    {
281
        contactMail : {
282
            url : 'https://github.com/wwwouaiebe/TravelNotes/issues'
283
        }
284
    },
285
    travelNotesDialog :
286
    {
287
        dialogX : 250,
288
        dialogY : 0
289
    },
290
    travelPropertiesDialog :
291
    {
292
        dialogX : 50,
293
        dialogY : 0
294
    },
295
    wayPoint : {
296
        reverseGeocoding : true,
297
        geocodingIncludeName : true
298
    }
299
};
300
/* eslint-enable no-magic-numbers */
301
302
export default theConfig;
303
304
/* --- End of file --------------------------------------------------------------------------------------------------------- */
305