44 Commits

Author SHA1 Message Date
mgabor
2943f93098
feat: readonly album sharing (#8720)
* rename albums_shared_users_users to album_permissions and add readonly column

* disable synchronize on the original join table

* remove unnecessary FK names

* set readonly=true as default for new album shares

* separate and implement album READ and WRITE permission

* expose albumPermissions on the API, deprecate sharedUsers

* generate openapi

* create readonly view on frontend

* ??? move slideshow button out from ellipsis menu so that non-owners can have access too

* correct sharedUsers joins

* add album permission repository

* remove a log

* fix assetCount getting reset when adding users

* fix lint

* add set permission endpoint and UI

* sort users

* remove log

* Revert "??? move slideshow button out from ellipsis menu so that non-owners can have access too"

This reverts commit 1343bfa31125f7136f81db28f7aa4c5ef0204847.

* rename stuff

* fix db schema annotations

* sql generate

* change readonly default to follow migration

* fix deprecation notice

* change readonly boolean to role enum

* fix joincolumn as primary key

* rename albumUserRepository in album service

* clean up userId and albumId

* add write access to shared link

* fix existing tests

* switch to vitest

* format and fix tests on web

* add new test

* fix one e2e test

* rename new API field to albumUsers

* capitalize serverside enum

* remove unused ReadWrite type

* missed rename from previous commit

* rename to albumUsers in album entity as well

* remove outdated Equals calls

* unnecessary relation

* rename to updateUser in album service

* minor renamery

* move sorting to backend

* rename and separate ALBUM_WRITE as ADD_ASSET and REMOVE_ASSET

* fix tests

* fix "should migrate single moving picture" test failing on European system timezone

* generated changes after merge

* lint fix

* fix correct page to open after removing user from album

* fix e2e tests and some bugs

* rename updateAlbumUser rest endpoint

* add new e2e tests for updateAlbumUser endpoint

* small optimizations

* refactor album e2e test, add new album shared with viewer

* add new test to check if viewer can see the album

* add new e2e tests for readonly share

* failing test: User delete doesn't cascade to UserAlbum entity

* fix: handle deleted users

* use lodash for sort

* add role to addUsersToAlbum endpoint

* add UI for adding editors

* lint fixes

* change role back to editor as DB default

* fix server tests

* redesign user selection modal editor selector

* style tweaks

* fix type error

* Revert "style tweaks"

This reverts commit ab604f4c8f3a6f12ab0b5fe2dd2ede723aa68775.

* Revert "redesign user selection modal editor selector"

This reverts commit e6f344856c6c05e4eb5c78f0dffb9f52498795f4.

* chore: cleanup and improve add user modal

* chore: open api

* small styling

---------

Co-authored-by: mgabor <>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-04-25 04:19:49 +00:00
Mert
c30cd3b378
chore: test more formats in e2e (#9001) 2024-04-22 01:35:27 -04:00
Jason Rasmussen
171b6bb0a6
refactor: system metadata (#8923)
refactor(server): system metadata
2024-04-19 20:36:15 -04:00
Jason Rasmussen
74c921148b
refactor(server): cookies (#8920) 2024-04-19 11:19:23 -04:00
Jason Rasmussen
4478e524f8
refactor(server): sessions (#8915)
* refactor: auth device => sessions

* chore: open api
2024-04-19 06:47:29 -04:00
renovate[bot]
6d4d0f86cf
chore(deps): update base-image to v20240416 (major) (#8660)
* chore(deps): update base-image to v20240416

* fix e2e

* rename variable

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-04-16 22:55:05 -04:00
Jason Rasmussen
dba365634a
chore(server): cleanup library watching (#8835)
chore: clean up library watching
2024-04-15 23:05:08 -04:00
Jason Rasmussen
14b798fcc4
refactor: library e2e (#8693)
* refactor: library e2e

* migrate and refactor library e2e

---------

Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2024-04-12 21:15:41 +02:00
Daniel Dietzler
ad5d115abe
fix(server): require asset permission when creating an album with them (#8686)
require asset permission when creating an album with them
2024-04-10 13:41:22 -04:00
renovate[bot]
fff12e3d78
chore(deps): update dependency eslint-plugin-unicorn to v52 (#8629)
* chore(deps): update dependency eslint-plugin-unicorn to v52

* chore: linting

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-04-08 12:45:46 -04:00
Alex
7f854432ae
fix(web): show download button correctly based on shared link permission (#8288)
* fix(web): show download button correctly based on shared link permission

* remove console log

* Define initial value

* simpler implementation

* refactor: show download in asset viewer for shared link

* chore: hook timeout

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-04-03 09:37:03 -05:00
Jason Rasmussen
cd0e537e3e
feat: persistent memories (#8330)
* feat: persistent memories

* refactor: use new add/remove asset utility
2024-04-02 10:23:17 -04:00
Mert
395c28f5fa
fix(server): parameter for all places query (#8346)
* fix parameter

* add e2e
2024-03-31 02:29:02 +00:00
Daniel Dietzler
b8c5363a15
refactor(server): move timeline operations to their own controller/service (#8325)
* move timeline operations to their own controller/service

* chore: open api

* move e2e tests
2024-03-28 23:20:40 -04:00
Daniel Dietzler
b8b3c487d4
fix(server): map style not being available for shared assets (#8341)
* fix map style not being available for shared assets

* add e2e test
2024-03-28 23:19:05 -04:00
Daniel Dietzler
d6823b128c
fix(server): validation events actually throwing an error (#8172)
* fix validation events

* add e2e test
2024-03-21 17:59:21 -05:00
Zack Pollard
dd9d90d21e
test: temporarily disable flaky audit e2e test until #7436 is fixed (#8089) 2024-03-20 07:31:52 -05:00
Jason Rasmussen
40262c30cb
refactor(server): library service (#8050)
* refactor: library service

* chore: open api

* fix: checks
2024-03-18 16:59:53 -04:00
Jason Rasmussen
07e8f79563
refactor: library e2e (#7969) 2024-03-15 09:16:08 -04:00
martin
31f7e1aca3
feat(server, web): album orders (#7819)
* feat: album orders

* fix: tests

* pr feedback

* pr feedback

* pr feedback

* fix: tests

* add comment

* pr feedback

* fix: rendering issue

* wording

* fix: order value doesn't change

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-03-14 11:45:03 -05:00
Daniel Dietzler
60c521101a
chore(server): type checks for e2e (#7800)
type checks for e2e
2024-03-09 23:18:25 +00:00
Daniel Dietzler
11e7533a4d
chore(server): user e2e: wait for user delete event (#7799)
* wait for user delete event

* fix update event names

* add test for hard deletion of user
2024-03-10 00:10:24 +01:00
Jason Rasmussen
30b0b2474e
refactor: asset e2e (#7769) 2024-03-09 12:51:58 -05:00
Jason Rasmussen
89f6190fb0
refactor: search e2e (#7732) 2024-03-08 11:20:54 -05:00
Jason Rasmussen
a50f125dd1
refactor: api validators (boolean and date) (#7709)
* refactor: api validators (boolean and date)

* chore: open api

* revert: time bucket change
2024-03-07 22:59:02 -05:00
Jason Rasmussen
661409bac7
feat(server): create a person with optional values (#7706)
* feat: create person dto

* chore: open api

* fix: e2e

* fix: web usage
2024-03-07 15:34:57 -05:00
Jason Rasmussen
b733a29430
refactor: e2e (#7703)
* refactor: e2e

* fix: submodule check

* chore: extend startup timeout
2024-03-07 10:14:36 -05:00
Alex
3da2b05428
chore(server): save original file name with extension (#7679)
* chore(server): save original file name with extension

* extract extension

* update e2e test

* update e2e test

* download archive

* fix download archive appending name

* pr feedback

* remove unused code

* test

* unit test

* remove unused code

* migration

* noops

* pr feedback

* Update server/src/domain/download/download.service.ts

Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com>

---------

Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com>
2024-03-07 02:34:55 +00:00
Sam Holton
9125999d1a
feat(server,web): make user deletion delay configurable (#7663)
* feat(server,web): make user deletion delay configurable

* alphabetical order

* add min for user.deleteDelay in SettingInputField

* make config.user.deleteDelay SettingInputField min consistent format

* fix e2e test

* update description on user delete delay
2024-03-05 23:45:40 -06:00
Jason Rasmussen
8988d3f886
chore: download e2e (#7651) 2024-03-05 12:07:46 -05:00
martin
6ab404597c
fix(server): incorrect number of assets for a person (#7602)
* fix: incorrect number of assets

* fix: tests

* pr feedback

* fix: e2e test

* fix: e2e test

* fix: e2e test

* feat: more tests
2024-03-04 18:11:54 -05:00
martin
ebe7a14c14
fix(server): prevent leaking isFavorite and isArchived info (#7580)
* fix: prevent leaking favorites info

* add e2e test

* fix: e2e test

* fix: isArchived

* fix: keep old version
2024-03-02 18:01:24 -05:00
Jason Rasmussen
3d25d91e77
refactor: library e2e (#7538)
* refactor: library e2e

* refactor: remove before each usages
2024-02-29 15:10:08 -05:00
Jason Rasmussen
100363c7be
refactor(e2e): use better dummy assets (#7536) 2024-02-29 12:07:01 -05:00
Jason Rasmussen
af0de1a768
chore: linting (#7532)
* chore: linting

* fix: broken tests

* fix: formatting
2024-02-29 11:26:55 -05:00
Jason Rasmussen
74d431f881
refactor(server): format and metadata e2e (#7477)
* refactor(server): format and metadata e2e

* refactor: on upload success waiting
2024-02-28 10:21:31 +01:00
Jason Rasmussen
807cd245f4
refactor(server): e2e (#7462)
* refactor: trash e2e

* refactor: asset e2e
2024-02-27 14:04:38 -05:00
Michel Heusschen
07ef008b40
fix(server): exclude archived assets from orphaned files (#7334)
* fix(server): exclude archived assets from orphaned files

* add e2e test
2024-02-22 11:16:10 -05:00
martin
5c0c98473d
fix(server, web): people page (#7319)
* fix: people page

* fix: use locale

* fix: e2e

* fix: remove useless w-full

* fix: don't count people without thumbnail

* fix: es6 template string

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-02-21 17:03:45 -05:00
Jason Rasmussen
546edc2e91
refactor: album e2e (#7320)
* refactor: album e2e

* refactor: user e2e
2024-02-21 16:52:13 -05:00
Jason Rasmussen
f798e037d5
refactor(server): e2e (#7265)
* refactor: activity e2e

* refactor: person e2e

* refactor: shared link e2e
2024-02-21 08:28:03 -05:00
Jason Rasmussen
9b20604a70
refactor(server): e2e (#7223)
* refactor: download e2e

* refactor: oauth e2e

* refactor: system config e2e

* refactor: partner e2e

* refactor: server-info e2e

* refactor: user e2e

* chore: uncomment test
2024-02-19 22:34:18 -05:00
Jason Rasmussen
947bcf2d68
refactor: cli e2e (#7211) 2024-02-19 17:25:57 -05:00
Jason Rasmussen
a03b37ca86
refactor: server auth e2e (#7203) 2024-02-19 12:03:51 -05:00