D. Berge
6707cda75e
Ignore case when patching configuration ID
2023-09-13 16:13:12 +02:00
D. Berge
1302a31b3d
Improve formatting of layer alert
2023-09-13 13:00:19 +02:00
D. Berge
871a1e8f3a
Don't show alert if layer is empty (but log to console)
2023-09-13 12:59:47 +02:00
D. Berge
04e1144bab
Simplify expression
2023-09-13 12:59:24 +02:00
D. Berge
6312d94f3e
Add support for user layer tooltips and popups
2023-09-13 12:58:44 +02:00
D. Berge
ed91026319
Add tolltip and popup options to map layer configuration.
...
- `tooltip` takes the name of a GeoJSON property that will be
shown in a tooltip when hovering the mouse over a feature.
- `popup` can take either the name of a property as above, or
the boolean value `true`. In the latter case, a table of all
the feature's properties will be shown when clicking on the
feature. In the former case, only the value of the designated
property will be shown.
2023-09-13 12:55:37 +02:00
D. Berge
441a4e296d
Import map layers from the runner
2023-09-13 11:24:04 +02:00
D. Berge
c33c3f61df
Alert the user if a map layer is too big
2023-09-13 11:22:49 +02:00
D. Berge
2cc293b724
Do not fail trying to restore state for non-existing layers
2023-09-13 11:22:05 +02:00
D. Berge
ee129b2faa
Merge branch '114-allow-users-to-show-arbitrary-geojson-on-the-map' into 'devel'
...
Resolve "Allow users to show arbitrary GeoJSON on the map."
Closes #114
See merge request wgp/dougal/software!37
2023-09-12 17:34:51 +00:00
D. Berge
98d9b3b093
Adapt Map view to new label payload from API
2023-09-12 19:31:58 +02:00
D. Berge
57b9b420f8
Show an error if a layer is too large.
...
The map view limits the size of layers (both user and regular) in
order to keep the system responsive, as Leaflet is not great at
handling large layers.
2023-09-12 19:29:02 +02:00
D. Berge
9e73f2603a
Implement user layers on map view.
...
The user layers are defined in the project configuration under
`imports.map.layers`.
Multiple layers may be defined and each layer may consist of one
or more GeoJSON files. Files are retrieved via the /files/ API
endpoint.
2023-09-12 19:29:02 +02:00
D. Berge
707889be42
Refactor layer API endpoint and database functions.
...
- A single get() function is used both to list all available
layers, if no layer name is given, or a single layer.
- The database no longer holds the actual layer contents,
only the path to the layer file(s), so the list() function
is now redundant as we return the full payload in every case.
- The /gis/layer and /gis/layer/:name endpoints now have the same
payload structure.
2023-09-12 19:29:02 +02:00
D. Berge
f9a70e0145
Refactor map layer importer.
...
- Now a layer may consist of a path pointing to a directory plus a
glob, or a path pointing directly to a single file.
- If a file already exists in the database, check if the layer
name has changed and if so, update it.
- Do not import the actual file contents, as the path is enough
(it can be retrieved via the /file/:path API endpoint).
2023-09-12 11:05:10 +02:00
D. Berge
b71489cee1
Add get_file_data() function to datastore
2023-09-12 11:04:37 +02:00
D. Berge
0a9bde5f10
Add Background layer to map.
...
This is a limited implementation of layer backgrounds. The API
supports an arbitrary number of arbitrarily named background
layers, but for the time being we only recognise one background
layer named `Background` and of GeoJSON type.
Certain properties, such a colour/color, opacity, etc., are
recognised and applied as feature styles. If not, a default
style is used.
2023-09-11 10:17:10 +02:00
D. Berge
36d5862375
Add map layer middleware and API endpoints
2023-09-11 10:15:19 +02:00
D. Berge
398c702004
Add map layer functions to database interface
2023-09-11 10:12:46 +02:00
D. Berge
b2d1798338
Add map layer importer
2023-09-11 10:00:59 +02:00
D. Berge
4f165b0c83
Revert behaviour of new jwt-express version.
...
Fixes breakage introduced in commit
cd00f8b995 .
2023-09-10 14:09:01 +02:00
D. Berge
2c86944a51
Merge branch '262-preset-remarks-and-labels-no-longer-working-with-api-0-4-0' into 'devel'
...
Resolve "Preset remarks and labels no longer working with API 0.4.0"
Closes #262
See merge request wgp/dougal/software!36
2023-09-10 10:10:22 +00:00
D. Berge
5fc51de7d8
Adapt Log view to new configuration endpoint in the API
2023-09-10 12:01:59 +02:00
D. Berge
158e0fb788
Adapt Log view to new label payload from API
2023-09-10 12:01:30 +02:00
D. Berge
941d15c1bc
Return labels directly from project configuration.
...
NOTE: This is a breaking API change. Before this it returned an
array of labels, now it returns an object.
2023-09-10 11:59:38 +02:00
D. Berge
cd00f8b995
Breaking-change Node package udpates (server)
2023-09-10 11:49:56 +02:00
D. Berge
44515f8e78
Non-breaking Node package updates (server)
2023-09-09 20:54:04 +02:00
D. Berge
54fbc76da5
Merge branch '261-wrong-missing-shots-value-in-sequence-summary' into 'devel'
...
Resolve "Wrong missing shots value in sequence summary"
Closes #261
See merge request wgp/dougal/software!35
2023-09-09 18:46:33 +00:00
D. Berge
c1b5196134
Update database templates to v0.3.12.
...
Incorporates fix for bug #261 .
2023-09-09 20:45:11 +02:00
D. Berge
fb3d3be546
Trailing slash in API call results in "unauthorised" error.
...
No idea why.
2023-09-09 20:39:49 +02:00
D. Berge
8e11e242ed
Remove NODE_OPTIONS from scripts.
...
Node version 18 does not seem to like it.
2023-09-09 20:37:08 +02:00
D. Berge
8a815ce3ef
Add database upgrade file 26.
2023-09-09 20:23:20 +02:00
D. Berge
91076a50ad
Show API error messages if available
2023-09-09 17:00:32 +02:00
D. Berge
e624dcdde0
Support async API callbacks in Vuex action
2023-09-09 16:59:43 +02:00
D. Berge
a25676122c
Update material design icons dependency
2023-09-09 16:58:44 +02:00
D. Berge
e4dfbe2c9a
Update minimum node version to 18
2023-09-09 16:57:20 +02:00
D. Berge
78fb34d049
Update the API version number
2023-09-09 16:56:52 +02:00
D. Berge
38c4125f4f
Support patching values out of the configuration.
...
A configuration patch having keys with null values will result
in those keys being removed from the configuration.
2023-09-09 16:53:42 +02:00
D. Berge
04d6cbafe3
Use refactored database API in QC executable
2023-09-09 16:42:30 +02:00
D. Berge
e6319172d8
Fix typo in QC executable
2023-09-09 16:42:00 +02:00
D. Berge
5230ff63e3
Use new database API calls for configuration
2023-09-09 16:39:53 +02:00
D. Berge
2b364bbff7
Make bin script compatible with Python 3.6
2023-09-09 16:38:51 +02:00
D. Berge
c4b330b2bb
Don't cache ETags for /files/ endpoint.
...
As we have no practical way of invalidating those.
2023-09-02 16:06:31 +02:00
D. Berge
308eda6342
Use ETag middleware
2023-09-02 15:29:39 +02:00
D. Berge
e8b1cb27f1
Add ETag middleware
2023-09-02 15:29:24 +02:00
D. Berge
ed14fd0ced
Add notifier to DB library
2023-09-02 15:28:17 +02:00
D. Berge
fb10e56487
Add pg-listen dependency
2023-09-02 15:26:53 +02:00
D. Berge
56ed0cbc79
Merge branch '246-add-endpoint-for-creating-a-new-survey' into 'devel'
...
Resolve "Add endpoint for creating a new survey"
Closes #179 , #174 , and #246
See merge request wgp/dougal/software!29
2023-09-02 13:10:56 +00:00
D. Berge
227e588782
Merge branch '248-dougal-event-log-takes-a-long-time-to-register-new-events' into 'devel'
...
Resolve "Dougal event log takes a long time to register new events"
Closes #248
See merge request wgp/dougal/software!30
2023-09-02 13:09:56 +00:00
D. Berge
53f2108e37
Adapt import functions to use logical paths
2023-08-30 14:56:09 +02:00