D. Berge
835384b730
Apply path conversion to QC definition files
2023-09-23 22:50:09 +02:00
D. Berge
c5b93794f4
Move path conversion to general utilities
2023-09-23 13:44:53 +02:00
D. Berge
056cd32f0e
Merge branch '271-qc-results-not-being-refreshed' into 'devel'
...
Resolve "QC results not being refreshed"
Closes #271
See merge request wgp/dougal/software!41
2023-09-18 10:08:35 +00:00
D. Berge
ceccc42050
Don't cache response ETags for QC endpoints
2023-09-18 12:06:38 +02:00
D. Berge
aa3379e1c6
Adapt RTI save function to refactored project configuration in DB
2023-09-18 11:58:55 +02:00
D. Berge
85d8fc8cc0
Update required database version
2023-09-15 14:22:22 +02:00
D. Berge
0fe40b1839
Add missing require
2023-09-15 14:22:02 +02:00
D. Berge
a1779ef488
Do not cache /navdata endpoint responses
2023-09-14 13:20:16 +02:00
D. Berge
5239dece1e
Do not cache GIS endpoint responses
2023-09-14 13:19:57 +02:00
D. Berge
a7d7837816
Allow only admins to patch project configurations
2023-09-14 13:19:16 +02:00
D. Berge
ebcfc7df47
Allow everyone to access project configuration.
...
This is necessary as it is requested by various parts of the
frontend.
Consider more granular access control.
2023-09-14 13:17:28 +02:00
D. Berge
dc4b9002fe
Adapt QC endpoints to new configuration APIs
2023-09-14 13:15:59 +02:00
D. Berge
33618b6b82
Do not cache Set-Cookie headers
2023-09-14 13:13:47 +02:00
D. Berge
5a2af5c49e
Add CSV output option for events log
2023-09-13 21:58:06 +02:00
D. Berge
24658f4017
Allow patching project name if no name is already set
2023-09-13 16:13:43 +02:00
D. Berge
6707cda75e
Ignore case when patching configuration ID
2023-09-13 16:13:12 +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
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
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
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
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
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
70cf59bb4c
Add API files endpoint.
...
Used to download files. It relies on `imports.paths` being set
appropriately in `etc/config.yaml` to indicate which parts of
the filesystem are accessible to users via Dougal.
2023-08-30 13:51:31 +02:00
D. Berge
ec03627119
Remove logging statements
2023-08-30 13:48:26 +02:00
D. Berge
675c19f060
Fix whitespace
2023-08-30 13:47:51 +02:00
D. Berge
6721b1b96b
Add API endpoint for patching a project
2023-08-30 13:47:02 +02:00
D. Berge
b4f23822c4
Fix db.configuration.get()
2023-08-30 13:43:36 +02:00
D. Berge
3dd1aaeddb
Fix indentation
2023-08-30 13:42:25 +02:00
D. Berge
1e593e6d75
Clean up if project creation fails
2023-08-30 13:41:28 +02:00
D. Berge
ddbcb90c1f
Add deepMerge() utility function
2023-08-30 13:37:01 +02:00
D. Berge
fe9d3563a0
Add API endpoint to delete a project
2023-08-23 19:26:27 +02:00
D. Berge
38a07dffc6
Add API endpoint to retrieve project configuration.
...
Only available to users with at least `write` access.
2023-08-23 19:26:27 +02:00
D. Berge
1a6500308f
Add API endpoint for creating a project
2023-08-23 19:26:27 +02:00
D. Berge
6033b45ed3
Refactor API middleware.
...
The middleware naming is kept consistent with the HTTP verb that
they handle.
2023-08-23 19:17:20 +02:00
D. Berge
33edef6647
Use modified body-parser accepting YAML
2023-08-23 19:12:44 +02:00
D. Berge
8f8e8b7492
Implement db.project.delete().
...
Removes a project from the database, but only if the project is
empty, i.e., it has no preplots, no lines and no events in its
log (except deleted).
2023-08-21 14:50:20 +02:00
D. Berge
ab5e3198aa
Add DB function to return project configuration.
...
NOTE: mostly redundant with db.configuration.get(),
see previous commit.
2023-08-21 14:49:22 +02:00
D. Berge
60ed850d2d
Change db.configuration.get() to use database.
...
NOTE: this endpoint is redundant with db.project.configuration.get()
except for its ability to return a partial tree.
TODO: merge this with db.project.configuration.get().
2023-08-21 14:46:51 +02:00