* separate all queries into one file each
* fix merge error
* fix lint
---------
Co-authored-by: mahula <lenzmath@posteo.de>
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
* lint @typescript-eslint/recommended
* lint @typescript-eslint/recommended-requiring-type-checking
fix type not detected locally due to wierd uuid typings
missing save
error not reported locally
* lint @typescript-eslint/strict
---------
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
* lint @typescript-eslint/recommended
* lint @typescript-eslint/recommended-requiring-type-checking
fix type not detected locally due to wierd uuid typings
missing save
error not reported locally
---------
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
* no notification when blocked
* no notifications for muted users
* move tests from emssage to notification middleware
* fix test
* also dont update unreadRoomCount when user is muted
---------
Co-authored-by: mahula <lenzmath@posteo.de>
* backend: active SMTP pooling in Nodemailer configuration
* backend: add max SMTPconnections and messages to Nodemailer configuration
* move transport outside function to ensure pooling can work
---------
Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>
* refactor user graphql
- remove isLoggedIn query
- currentUser query only for authenticated, currenUser always returns a
User
- currentUser query implementation uses neo4jgraphql with id parameter
- remove custom email field from user
- fix bug in frontend when there is no categories
* remove comment
* remove unused filter
* fix currentuser test
* fixedswitchUserRole mutation
* fix categories
* basics to notify a user when a followed user posted
* do not notify following user on posts in groups
* followig user wrote post notification
* notify regular group members when a new post is posted in the group
* mute and unmute groups
* clean database at end
* locale for post in group notification
* post in group notification triggers correctly
* email settings for post in group
* Add mute/unumute group to menu (WIP)
* Add mute group functionality (WIP)
* Add locales; use mute/unmute mutations, cleanup tests
* Overhaul group content menu test
* Rename isMuted to isMutedByMe and add it to group query
* Add German and English locales
* Add spanish translations
* Add missing translation keys (with null values)
* Remove console statement
* Add snapshot
* Replace mount by render
* Mock Math.random(), add tests for mute/unmute
* Use container instead of baseElement for snapshots
* fix group slug tests
* undo wrong variable naming
* rename parameter to groupId of mute/unmute group mutation
* rename parameter to groupId of mute/unmute group mutation
* only non pending members have access to the comtext menu
---------
Co-authored-by: Moriz Wahl <moriz.wahl@gmx.de>
Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>
* fix error when there is an abandoned email
We check beforehand if an email has an user attached, but we never
delete an email without user. This will violate a unique constraint
blocking that particular email from ever being used again.
* fix tests
* clean migrate scripts
- refactor migrate:init
- separate admin seed
- separate categories seed
- rework backend README regarding the database
- remove `db:clean` command as its a duplicate of `db:reset`
- remove `__migrate` helper alias
* renamed clean.ts to reset.ts
* set indices & constrains in init function
* fix comment
* disable migrations touching indices
* remove obsolete comment
* always run init on kubernetes
* reset db with or without migrations
* lint fixes
* Refine 'README.md'
* Refine more 'README.md'
* fix lint
---------
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
- Update plugin n to fix a deprecation warning
- Order n rules according to docu
- use n:recommended
- comment out all rules from recommened
- enable some rules
* all users that observe a post are notified when the post is commented, except of the author of the comment, or users that blocked the commenter
* test to illustrate the behavior of notifications for observed posts
* After creating the post, the author of it automatically observes it to get notifications when there are interactions
* a user that comments a post, automatically observes that post to get notifications when there are more interactions on that post
* mutation that switches the state of the observation of a post on and off
* feat(other): major improvement of deployment
Motivation
----------
Kubernetes:
* backend becomes a statefulset (exclusive volume mount)
See: https://spacelift.io/blog/statefulset-vs-deployment
* implement neo4j backup with job
Docker:
* consistent targets across all dockerfiles
* remove redundant labels
* remove unnecessary build args
* remove obsolete networks
* remove development dependencies for production
Rebranding:
* add image tags for local tagging and pulling
* use Github's docker build workflows
* use Github container registry
* ONBUILD to simplify caller Dockerfiles
* docker compose for branding
Tooling:
* same node --version as in dockerfile
Docs:
* missing step in README.md
* refactor: remove submodules
It's better to keep them all in a separate repository
* improve kubernetes chart
* better image tag defaults
* split neo4j into its own chart (for re-use)
* use application defaults where possible
* optional resources for all pods
* remove obsolete key/value pair from secrets
* remove obsolete build argsand
and add labels for neo4j enterprise
* env vars for webapp
* allow to define redirect domains
Define a list of Domains that redirect to the domain of the project. The
idea is to provide the ability to redirect eg. www.domain.tld to
domain.tld
* remove maintenance part regarding database
* move backup job outside template folder
* name the ingress
* updated ingress
* handle empty case of middlewares
* try to default the ingress
* use quote
* restore todo-next-update
* fix docu check
* fix naming
* try using prod:migrate
* try using override config
* copy src folder
* try using base as image instead of build
* fix test build
* force build
* comment for the problem
* fix webapp tests (potentially)
---------
Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>