diff options
Diffstat (limited to 'viewer/src')
89 files changed, 3018 insertions, 2919 deletions
diff --git a/viewer/src/@types/gallery.d.ts b/viewer/src/@types/gallery.ts index 0b4cfc4..8c0f177 100644 --- a/viewer/src/@types/gallery.d.ts +++ b/viewer/src/@types/gallery.ts | |||
@@ -1,7 +1,7 @@ | |||
1 | /* ldgallery - A static generator which turns a collection of tagged | 1 | /* ldgallery - A static generator which turns a collection of tagged |
2 | -- pictures into a searchable web gallery. | 2 | -- pictures into a searchable web gallery. |
3 | -- | 3 | -- |
4 | -- Copyright (C) 2019-2020 Guillaume FOUET | 4 | -- Copyright (C) 2019-2022 Guillaume FOUET |
5 | -- | 5 | -- |
6 | -- This program is free software: you can redistribute it and/or modify | 6 | -- This program is free software: you can redistribute it and/or modify |
7 | -- it under the terms of the GNU Affero General Public License as | 7 | -- it under the terms of the GNU Affero General Public License as |
@@ -17,10 +17,10 @@ | |||
17 | -- along with this program. If not, see <https://www.gnu.org/licenses/>. | 17 | -- along with this program. If not, see <https://www.gnu.org/licenses/>. |
18 | */ | 18 | */ |
19 | 19 | ||
20 | import { ItemType } from "./ItemType"; | 20 | import { ItemType } from './itemType'; |
21 | import { SplashScreenConfig } from "./splashscreen"; | 21 | import { SplashScreenConfig } from './splashscreen'; |
22 | 22 | ||
23 | export type ItemSortStr = "title_asc" | "date_asc" | "date_desc"; | 23 | export type ItemSortStr = 'title_asc' | 'date_asc' | 'date_desc'; |
24 | 24 | ||
25 | export interface Config { | 25 | export interface Config { |
26 | galleryRoot: string; | 26 | galleryRoot: string; |
@@ -30,39 +30,54 @@ export interface Config { | |||
30 | splashScreen?: SplashScreenConfig; | 30 | splashScreen?: SplashScreenConfig; |
31 | } | 31 | } |
32 | 32 | ||
33 | export interface Properties { | 33 | // --- |
34 | galleryTitle: string; | 34 | |
35 | tagCategories: RawTag[]; | 35 | export interface Resolution { |
36 | width: number; | ||
37 | height: number; | ||
36 | } | 38 | } |
37 | export interface Index { | 39 | export interface Thumbnail { |
38 | properties: Properties; | 40 | resource: string; |
39 | tree: DirectoryItem; | 41 | resolution: Resolution; |
40 | } | 42 | } |
43 | export type RawTag = string; | ||
41 | 44 | ||
42 | export interface OtherItem extends Item { | 45 | // --- |
43 | properties: OtherProperties; | 46 | |
47 | export interface Downloadable { | ||
48 | resource: string; | ||
49 | type: ItemType; // unknown | ||
44 | } | 50 | } |
45 | export interface PictureItem extends Item { | 51 | export interface OtherProperties extends Downloadable { |
46 | properties: PictureProperties; | 52 | type: ItemType.OTHER; |
47 | } | 53 | } |
48 | export interface PlainTextItem extends Item { | 54 | export interface PictureProperties extends Downloadable { |
49 | properties: PlainTextProperties; | 55 | type: ItemType.PICTURE; |
56 | resolution: Resolution; | ||
50 | } | 57 | } |
51 | export interface MarkdownItem extends Item { | 58 | export interface PlainTextProperties extends Downloadable { |
52 | properties: MarkdownProperties; | 59 | type: ItemType.PLAINTEXT; |
53 | } | 60 | } |
54 | export interface PDFItem extends Item { | 61 | export interface MarkdownProperties extends Downloadable { |
55 | properties: PDFProper |