Files
immich/web/src/lib/stores/assets.ts
Alex 9a6dfacf9b Refactor web to use OpenAPI SDK (#326)
* Refactor main index page

* Refactor admin page

* Refactor Auth endpoint

* Refactor directory to prep for monorepo

* Fixed refactoring path

* Resolved file path in vite

* Refactor photo index page

* Refactor thumbnail

* Fixed test

* Refactor Video Viewer component

* Refactor download file

* Refactor navigation bar

* Refactor upload file check

* Simplify Upload Asset signature

* PR feedback
2022-07-10 21:41:45 -05:00

28 lines
778 B
TypeScript

import { writable, derived } from 'svelte/store';
import lodash from 'lodash-es';
import _ from 'lodash';
import moment from 'moment';
import { api, AssetResponseDto } from '@api';
export const assets = writable<AssetResponseDto[]>([]);
export const assetsGroupByDate = derived(assets, ($assets) => {
try {
return lodash
.chain($assets)
.groupBy((a) => moment(a.createdAt).format('ddd, MMM DD YYYY'))
.sortBy((group) => $assets.indexOf(group[0]))
.value();
} catch (e) {
return [];
}
});
export const flattenAssetGroupByDate = derived(assetsGroupByDate, ($assetsGroupByDate) => {
return $assetsGroupByDate.flat();
});
export const getAssetsInfo = async (accessToken: string) => {
const { data } = await api.assetApi.getAllAssets();
assets.set(data);
};