- Refactor user business logic from `user.service` into `user.domain`
Make user business logic reusable by using `user.domain` from other services than `user.service`
- Add `jest-when` lib to make testing easier and use it in `userService`
Using when helps from coupling tests to order of mock implementations execution
- Move all user business logic from user-repository to user.service
- Fix user.service tests not awaiting promises leaking state between tests
- Presentation logic for `getUserProfileImage` moved from UserService to UserController
- Fix `user.e2e` test logic. Pending fixing the configuration of the test itself
* refactor(server): device info service
* use upsertDeviceInfo in mobile app
* fix: return types and dedupe code
Co-authored-by: Fynn Petersen-Frey <zoodyy@users.noreply.github.com>
* Add generated openapi docs to website
* Uppercase API link in navbar
* fix(docs): open api empty summary (#1069)
* feat(docs): Use /docs/api path for swagger docs
* Sync api version to be the same as the server
* Update version
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
* Limit asset access to owner
* Check public albums for asset
* Clean up
* Fix test
* Rename repository method
* Simplify control flow
* Revert "Simplify control flow"
This reverts commit 7bc3cbf687.
* Revert Makefile change
* feat(mobile): use cached asset info if unchanged instead of downloading all assets
This adds an HTTP ETag to the getAllAssets endpoint and client-side support in the app.
If locally cache content is identical to the content on the server, the potentially large list of all assets does not need to be downloaded.
* use ts import instead of require
* Added return type for oauth/callback
* Remove console.log
* Redirect app
* Wording
* Added loading state change
* Added OAuth login on mobile
* Return correct status for correct redirection
* Auto discovery OAuth Login
* feat: add admin config module for user configured config, uses it for ffmpeg
* feat: add api endpoint to retrieve admin config settings and values
* feat: add settings panel to admin page on web (wip)
* feat: add api endpoint to update the admin config
* chore: re-generate openapi spec after rebase
* refactor: move from admin config to system config naming
* chore: move away from UseGuards to new @Authenticated decorator
* style: dark mode styling for lists and fix conflicting colors
* wip: 2 column design, no edit button
* refactor: system config
* chore: generate open api
* chore: rm broken test
* chore: cleanup types
* refactor: config module names
Co-authored-by: Zack Pollard <zackpollard@ymail.com>
Co-authored-by: Zack Pollard <zack.pollard@moonpig.com>