Commit Graph

117 Commits

Author SHA1 Message Date
Rijk van Zanten
971a18c219 Database Error Abstraction (#4465)
* Start on database-error abstraction layer

* Add SQLite error abstraction

* Enable SQLite foreign key support

* Cleanup sqlite dialect slightly

Does it matter? Not really!

* Add MySQL error abstraction

* WIP Almost done with MSSQL

* Add correct error handling for MS SQL

* Fix mysql errors by not relying on value order

* Don't rely on sql in postgres exception translation

* Fix sqlite error parsing

* Remove foreign key constraint from activity to collections

A collection can be DB-only, but we still want to track activity for non-meta collections

* Translate error on update as well
2021-03-10 17:16:15 -05:00
rijkvanzanten
f088074d48 Only return full 500 stack trace to authenticated admin users 2021-02-25 19:12:18 -05:00
Rijk van Zanten
0beaf56dc3 Add on-error hook (#4233)
* Add on-error hook

Closes #2906

* Ignore unspecified listeners

* Document error hook
2021-02-22 19:00:53 -05:00
rijkvanzanten
510cbe4ed4 Fix missing type info 2021-02-11 18:14:55 -05:00
Rijk van Zanten
b7d87e581a System permissions for app access (#4004)
* Pass relations through schema, instead of individual reads

* Fetch field transforms upfront

* Fix length check

* List if user has app access or not in accountability

* Load permissions up front, merge app access minimal permissions

* Show app access required permissions in permissions overview

* Show system minimal permissions in permissions detail

* Fix app access check in authenticate for jwt use

* Fix minimal permissions for presets

* Remove /permissions/me in favor of root use w/ permissions

* Fix logical nested OR in an AND

* Use root permissions endpoint with filter instead of /me

* Allow filter query on /permissions

* Add system minimal app access permissions into result of /permissions

* Remove stray console log

* Remove stray console.dir

* Set current role as role for minimal permissions

* Fix no-permissions state for user detail

* Add filter items function that allows altering existing result set
2021-02-11 12:50:56 -05:00
rijkvanzanten
55951a6f68 Don't crash on empty CSV export
Fixes #3820
2021-01-27 15:36:30 -05:00
rijkvanzanten
d98300d528 Fix graphql response type 2021-01-14 12:52:57 -05:00
rijkvanzanten
178e91106b Remove unused imports 2021-01-12 16:15:44 -05:00
rijkvanzanten
6b029b416b iRemove imported types that aren't needed 2021-01-12 16:11:08 -05:00
Rijk van Zanten
a41559b32f Merge branch 'main' into fix/async-handlers 2021-01-12 12:27:27 -07:00
rijkvanzanten
c54f9f70d6 Don't send cache header when no-cache has been requested 2020-12-31 15:17:43 -05:00
rijkvanzanten
2b64449f6c Check for capitalized cache control header 2020-12-22 17:53:33 -05:00
WoLfulus
c5f3802da3 Replace express-async-handler for a local function. 2020-12-22 17:11:08 -03:00
rijkvanzanten
9974cb6050 Add health endpoint 2020-12-21 15:22:39 -05:00
rijkvanzanten
d08c91389a Remove quotes from max-age in cache-control 2020-12-17 18:57:33 -05:00
rijkvanzanten
766911cba0 Allow for no-cache Cache-Control request header 2020-12-16 18:09:41 -05:00
rijkvanzanten
578b761ded Add auto-purge option
And add cache-control header when auto purge is disabled

Fixes #3425
2020-12-16 14:26:38 -05:00
Igor Savin
7cddb458cb Run prettier across app and api 2020-12-08 02:22:00 +02:00
rijkvanzanten
5bedda945c Warn, don't error, on missing PKs in schema
Fixes #3251
2020-12-07 18:24:33 -05:00
rijkvanzanten
33c3f69d9e Fix naming in schema middleware 2020-11-10 09:29:41 -05:00
rijkvanzanten
4d09f4a07e Add oracle/mssql 2020-11-09 18:50:08 -05:00
rijkvanzanten
64d34933d1 Add overview method for SQLite3 2020-11-09 18:37:00 -05:00
rijkvanzanten
8cbdfb409b Use prefetched schema info 2020-11-09 17:13:48 -05:00
rijkvanzanten
0697f4b4be Add new overview method, attach it every request 2020-11-09 15:19:23 -05:00
rijkvanzanten
79cdd62f18 Fix redis rate limiter
Fixes #835
2020-11-03 18:19:29 -05:00
rijkvanzanten
23fd029687 Move system collection rows out of DB 2020-10-28 16:26:46 -04:00
WoLfulus
a74e0b72a8 Remove response hook 2020-10-17 13:26:00 -03:00
rijkvanzanten
592ab925db Add toArray util 2020-10-15 18:00:27 -04:00
rijkvanzanten
1e628d8915 Validate the used query before running it 2020-10-14 15:31:47 -04:00
rijkvanzanten
c50eb29e39 Fix ip check for public role 2020-10-13 16:48:32 -04:00
rijkvanzanten
292f2206ed Add ip allow list check 2020-10-13 15:50:23 -04:00
rijkvanzanten
9df6bd95a5 Convert ipv4 addresses to ipv4 2020-10-13 15:50:19 -04:00
rijkvanzanten
d6e5a45be3 Add response hook 2020-10-06 16:21:36 -04:00
rijkvanzanten
537fe8f8dd Allow deep query 2020-10-02 10:34:48 -04:00
rijkvanzanten
959491c4a4 Rename last_login to last_access, track on api use
Fixes #192
2020-09-23 18:50:00 -04:00
rijkvanzanten
b8ec2934ca Add deep query support 2020-09-23 17:48:41 -04:00
rijkvanzanten
85ca7b5d17 Run prettier 2020-09-22 16:11:28 -04:00
rijkvanzanten
ba85e4e6a2 Add dynamic export file name
Closes #387
2020-09-21 17:56:35 -04:00
rijkvanzanten
aa014542a4 Rename roles.admin to roles.admin_access
Closes #142
2020-09-18 12:16:09 -04:00
rijkvanzanten
b8eff4c788 Use CSV for special, add on create / on update for fields 2020-09-15 17:31:37 -04:00
rijkvanzanten
09518f7816 Allow auto-generating o2m collection/field 2020-09-11 15:02:59 -04:00
rijkvanzanten
29cee06685 Show validation errors in app
Closes #206
2020-09-09 15:49:18 -04:00
rijkvanzanten
be3c414b05 Return validation errors 2020-09-09 15:17:28 -04:00
rijkvanzanten
d781c2b0e5 Merge responsemanager with respond middleware 2020-09-09 09:17:37 -04:00
rijkvanzanten
8fd31c7353 Merge branch 'main' into feature-export 2020-09-09 08:43:58 -04:00
rijkvanzanten
e148583ed8 Support redis/memcached in cache 2020-09-08 19:08:46 -04:00
rijkvanzanten
a8552abc23 Treat sanitizedquery as frozen 2020-09-08 18:54:18 -04:00
rijkvanzanten
b19ffd960b Add response middleware and cache 2020-09-08 18:28:23 -04:00
rijkvanzanten
266c07fde7 Temporarily disable caching 2020-09-08 17:22:34 -04:00
rijkvanzanten
8b97c6d818 Clear middleware/service (temp) 2020-09-08 17:09:15 -04:00