Commit graph

5036 commits

Author SHA1 Message Date
David Mehren
f0e6f6150d test: allow running e2e tests with different DBs
This commits adds infrastructure for running the E2E tests
with databases other than sqlite.

Initially, support for Postgres is added.

Signed-off-by: David Mehren <git@herrmehren.de>
2022-03-06 22:24:21 +01:00
Philip Molares
35075bdb0b test: add unit test for noteConfig
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2022-03-06 21:42:19 +01:00
Philip Molares
96747b6d68 fix: use joi positive and integer validators on HD_MAX_DOCUMENT_LENGTH
validate HD_MAX_DOCUMENT_LENGTH with the positive and integer validators of Joi.

See also:
- https://joi.dev/api/#numberpositive
- https://joi.dev/api/#numberinteger

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2022-03-06 21:42:19 +01:00
Philip Molares
de8bad13cf test: add unit test for appConfig
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2022-03-06 21:35:58 +01:00
Philip Molares
029881f380 chore: add mocked-env dev dependency
This will be used to create unit test for the different config objects.

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2022-03-06 21:35:58 +01:00
Philip Molares
45df0e6edb fix: rename parseOptionalInt to parseOptionalNumber
This allows us to handle the possible errors due to non-integer numbers with joi and return more precise error messages.

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2022-03-06 21:35:58 +01:00
Philip Molares
151e12a8a7 fix: use joi positive, integer and max validators on PORT
validate PORT with the positive, integer and max validators of Joi.

See also:
- https://joi.dev/api/#numberpositive
- https://joi.dev/api/#numberinteger
- https://joi.dev/api/#numbermax

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2022-03-06 21:35:58 +01:00
Philip Molares
0a778d8a64 fix: use joi uri validator in appConfig
validate HD_DOMAIN and HD_RENDERER_ORIGIN with the uri validator of Joi. This should prevent the problem described in #2150.

Fixes #2150

See also: https://joi.dev/api/#stringurioptions

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2022-03-06 21:35:58 +01:00
David Mehren
7e8716ec95 fix: ensure dates are properly transformed
To correctly transform Date objects from ISO-strings in JSON
to instances, class-transformer requires the `@Type` annotation.

References:
https://github.com/typestack/class-transformer#%D1%81onverting-date-strings-into-date-objects
Signed-off-by: David Mehren <git@herrmehren.de>
2022-03-06 20:54:46 +01:00
David Mehren
59a235ebc4 fix: ensure nested objects are properly validated & transformed
To validate nested objects, class-transformer requires
the `@ValidateNested` annotation.
For arrays, class-transfomer requires
setting `each: true`.

To correctly transform nested objects from JSON to instances,
class-transformer requires the `@Type` annotation.

References:
https://github.com/typestack/class-validator#validating-nested-objects
https://github.com/typestack/class-validator#validating-arrays
https://github.com/typestack/class-transformer#working-with-nested-objects
Signed-off-by: David Mehren <git@herrmehren.de>
2022-03-06 20:54:46 +01:00
David Mehren
324536bc2d feat(validation): send error message to client
Signed-off-by: David Mehren <git@herrmehren.de>
2022-03-06 20:52:52 +01:00
Renovate Bot
a31e4f4dfc chore(deps): update dependency ts-node to v10.7.0
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-06 17:37:40 +01:00
Renovate Bot
d5c70b0302 chore(deps): update dependency mkdocs-material to v8.2.5
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-06 17:30:01 +01:00
Renovate Bot
aa3d7c0c97 Update dependency sharp to v0.30.2
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-06 10:02:57 +01:00
Renovate Bot
66bde48f94 Update bobheadxi/deployments action to v1.1.0
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 23:11:41 +01:00
Renovate Bot
ec843083b4 Update definitely typed
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 20:55:55 +01:00
renovate[bot]
df2e82024e
Update dependency ts-node to v10.6.0 (#1895)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 20:46:38 +01:00
renovate[bot]
e9df9b6672
Update linters (#1897)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-03-05 20:40:00 +01:00
renovate[bot]
6b84cf6b59
Update dependency reveal.js to v4.3.0 [SECURITY] (#1887)
* Update dependency reveal.js to v4.3.0 [SECURITY]

Signed-off-by: Renovate Bot <bot@renovateapp.com>

* Extend types

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-03-05 17:31:03 +00:00
Renovate Bot
aa6a594513 Update actions/checkout action to v3
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 18:00:19 +01:00
Renovate Bot
25ff196f65 Update dependency i18next to v21.6.13
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 17:47:39 +01:00
Renovate Bot
dd0dc292bf Update dependency cypress to v9.5.1
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 17:47:15 +01:00
Renovate Bot
042ac1bbaf Update dependency netlify-cli to v9.12.3
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 17:46:28 +01:00
Renovate Bot
080bf6239b Update dependency ts-loader to v9.2.7
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 16:19:36 +01:00
Renovate Bot
7d8f047389 Update dependency typescript to v4.6.2
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 16:18:24 +01:00
Renovate Bot
4817431166 chore(deps): update linters
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 10:47:14 +01:00
Renovate Bot
8aee78c78e chore(deps): update actions/checkout action to v3
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 10:40:33 +01:00
Renovate Bot
a850939acb fix(deps): update nestjs packages to v8.4.0
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 10:39:31 +01:00
Renovate Bot
bc59085ce4 chore(deps): update dependency typescript to v4.6.2
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 10:36:44 +01:00
Renovate Bot
7aee869610 chore(deps): update dependency ts-node to v10.6.0
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 10:29:20 +01:00
Renovate Bot
4030d11840 fix(deps): update dependency typeorm to v0.2.45
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 10:28:55 +01:00
Renovate Bot
47e99816af chore(deps): update dependency tsconfig-paths to v3.13.0
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 10:23:21 +01:00
Renovate Bot
1514ea1646 fix(deps): update dependency raw-body to v2.5.1
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 09:24:01 +01:00
Renovate Bot
ddca4eaec7 chore(deps): update dependency mkdocs-material to v8.2.4
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 05:00:47 +00:00
Renovate Bot
1827b7c615 chore(deps): update dependency @nestjs/cli to v8.2.2
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-03-05 02:56:36 +00:00
David Mehren
0be8e4ea55 feat(api/private): add GroupsController
The GroupsController can be used to fetch information about groups.

Signed-off-by: David Mehren <git@herrmehren.de>
2022-03-01 20:20:18 +01:00
David Mehren
0394679134 feat(user-info-dto): split email into separate DTO
The email address should only be available
in /me routes.
This commit splits the email address into a new FullUserInfoDto.

Signed-off-by: David Mehren <git@herrmehren.de>
2022-03-01 20:20:18 +01:00
David Mehren
a7edf00ebc feat(api/private): add UsersController
The UsersController can be used to fetch information about users.

Signed-off-by: David Mehren <git@herrmehren.de>
2022-03-01 20:20:18 +01:00
Renovate Bot
908f418620 chore(deps): lock file maintenance
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-02-28 02:23:45 +00:00
Renovate Bot
807bd5a59a Update dependency @uiw/react-codemirror to v4.5.1
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-02-27 21:39:41 +01:00
David Mehren
931a168e5d fix(session-middleware): don't hardcode database ttl
The cookie expiration is taken from the config,
but the expiration of session data in the database was hardcoded.

This removes the hardcoded value, so TypeormStore defaults
to cookie.maxAge.

References:
https://github.com/nykula/connect-typeorm#options
https://github.com/expressjs/session#cookiemaxage
Signed-off-by: David Mehren <git@herrmehren.de>
2022-02-27 20:55:13 +01:00
Renovate Bot
b470ccdc97 Update dependency sass to v1.49.9
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-02-27 20:04:04 +01:00
Tilman Vatteroth
376cb08461 Regenerate yarn.lock
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-02-27 19:46:15 +01:00
Renovate Bot
5f320f74d9 Update Yarn to v3.2.0
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-02-27 19:46:15 +01:00
Tilman Vatteroth
6e7afbac9b Add missing parameter for deployment action
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-02-27 19:28:16 +01:00
Renovate Bot
8ccb615651 Update actions/setup-node action to v3
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-02-27 19:08:15 +01:00
Philip Molares
cf5c398933 fix: openapi decorator
This now correctly returns the dto if it is provided. Previously it would return () => undefined, when the dto was not defined, which crashed some internal logic in nestjs.

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2022-02-27 18:40:53 +01:00
renovate[bot]
b2fc852e09
Update bobheadxi/deployments action to v1 (#1884)
* Update bobheadxi/deployments action to v1

Signed-off-by: Renovate Bot <bot@renovateapp.com>

* Migrate deploy action

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-02-27 17:26:59 +00:00
Renovate Bot
bb2c248147 chore(deps): update dependency mkdocs-material to v8.2.3
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-02-27 18:22:31 +01:00
Renovate Bot
c95346330d Update i18next
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2022-02-27 18:19:30 +01:00