feat (server, web): Implement Archive (#2225)

* feat (server, web): add archive

* chore: generate api

* feat (web): add empty placeholder for archive page

* chore: remove title on favorites page

Duplicates sidebar selection. Two pages (Archive and Favorites)
are consistent now

* refactor (web): create EmptyPlaceholder component for empty pages

* fixed menu close button not close:

* fix (web): remove not necessary store call

* test (web): simplify asset tests code

* test (web): simplify asset tests code

* chore (server): remove isArchived while uploading

* chore (server): remove isArchived from typesense schema

* chore: generate api

* fix (web): delete asset from archive page

* chore: change archive asset count endpoint

old endpoint: /asset/archived-count-by-user-id
new endpoint: /asset/stat/archive

* chore: generate api

---------

Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
This commit is contained in:
Sergey Kondrikov
2023-04-12 18:37:52 +03:00
committed by GitHub
parent eb9481b668
commit d314805caf
39 changed files with 861 additions and 97 deletions

View File

@@ -134,6 +134,7 @@ export const assetEntityStub = {
updatedAt: '2023-02-23T05:06:29.716Z',
mimeType: null,
isFavorite: true,
isArchived: false,
duration: null,
isVisible: true,
livePhotoVideo: null,
@@ -158,6 +159,7 @@ export const assetEntityStub = {
updatedAt: '2023-02-23T05:06:29.716Z',
mimeType: null,
isFavorite: true,
isArchived: false,
duration: null,
isVisible: true,
livePhotoVideo: null,
@@ -184,6 +186,7 @@ export const assetEntityStub = {
updatedAt: '2023-02-23T05:06:29.716Z',
mimeType: null,
isFavorite: true,
isArchived: false,
duration: null,
isVisible: true,
livePhotoVideo: null,
@@ -355,6 +358,7 @@ const assetResponse: AssetResponseDto = {
fileCreatedAt: today.toISOString(),
updatedAt: today.toISOString(),
isFavorite: false,
isArchived: false,
mimeType: 'image/jpeg',
smartInfo: {
tags: [],
@@ -591,6 +595,7 @@ export const sharedLinkStub = {
createdAt: today.toISOString(),
updatedAt: today.toISOString(),
isFavorite: false,
isArchived: false,
mimeType: 'image/jpeg',
smartInfo: {
assetId: 'id_1',