From 8cbf0db14f148ac2a936eed192b66722f3facf93 Mon Sep 17 00:00:00 2001 From: Sebastian Frank Date: Sun, 17 May 2026 18:54:44 +0000 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20feat:=20add=20image=20filter=20conf?= =?UTF-8?q?iguration=20and=20update=20related=20collections?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .yarn/install-state.gz | Bin 406615 -> 406614 bytes api/collections/content.yml | 2 ++ api/collections/lib/imageFilter.yml | 26 ++++++++++++++++++++++ api/collections/medialib.yml | 32 +++------------------------- api/collections/tag.yml | 2 +- api/config.yml.env | 2 +- 6 files changed, 33 insertions(+), 31 deletions(-) create mode 100644 api/collections/lib/imageFilter.yml diff --git a/.yarn/install-state.gz b/.yarn/install-state.gz index c0bbb105a83fc41e662d53b1ef71803e67e3f931..0ac16c7577a074301c21c0c9822bb89094d60ab3 100644 GIT binary patch delta 5613 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 ISbu2}0AA$(ivR!s diff --git a/api/collections/content.yml b/api/collections/content.yml index 9f07f46..9475635 100644 --- a/api/collections/content.yml +++ b/api/collections/content.yml @@ -52,6 +52,8 @@ permissions: put: true delete: true +imageFilter: !include lib/imageFilter.yml + fields: - name: active type: boolean diff --git a/api/collections/lib/imageFilter.yml b/api/collections/lib/imageFilter.yml new file mode 100644 index 0000000..dd1518f --- /dev/null +++ b/api/collections/lib/imageFilter.yml @@ -0,0 +1,26 @@ +xs-webp: + - width: 100 + height: 100 + fit: true + quality: 60 + outputType: webp +s-webp: + - width: 300 + quality: 70 + outputType: webp +m-webp: + - width: 600 + quality: 76 + outputType: webp +l-webp: + - width: 1200 + quality: 80 + outputType: webp +xl-webp: + - width: 2000 + quality: 84 + outputType: webp +xxl-webp: + - width: 2800 + quality: 88 + outputType: webp diff --git a/api/collections/medialib.yml b/api/collections/medialib.yml index c0b3f29..30974a8 100644 --- a/api/collections/medialib.yml +++ b/api/collections/medialib.yml @@ -23,7 +23,7 @@ meta: file: file preview: label: title - secondary: tag + secondary: tags tertiary: description image: file mediaFile: file @@ -56,33 +56,7 @@ permissions: put: true delete: true -imageFilter: - xs-webp: - - width: 100 - height: 100 - fit: true - quality: 60 - outputType: webp - s-webp: - - width: 300 - quality: 70 - outputType: webp - m-webp: - - width: 600 - quality: 76 - outputType: webp - l-webp: - - width: 1200 - quality: 80 - outputType: webp - xl-webp: - - width: 2000 - quality: 84 - outputType: webp - xxl-webp: - - width: 2800 - quality: 88 - outputType: webp +imageFilter: !include lib/imageFilter.yml fields: - name: file @@ -129,7 +103,7 @@ fields: inputProps: multiline: true rows: 4 - - name: tag + - name: tags type: string[] meta: label: { de: "Schlagwörter", en: "Tags" } diff --git a/api/collections/tag.yml b/api/collections/tag.yml index 2d89416..7cbe552 100644 --- a/api/collections/tag.yml +++ b/api/collections/tag.yml @@ -7,7 +7,7 @@ meta: label: { de: "Schlagwörter", en: "Tags" } muiIcon: label group: content - imageUrl: "https://images.unsplash.com/photo-1555421689-491a97ff2040?auto=format&fit=crop&w=800&q=80" + imageUrl: "https://images.unsplash.com/photo-1571907483086-3c0ea40cc16d?auto=format&fit=crop&q=80&w=800" preview: select: [name, color] label: name diff --git a/api/config.yml.env b/api/config.yml.env index f427019..3087732 100644 --- a/api/config.yml.env +++ b/api/config.yml.env @@ -1,2 +1,2 @@ ADMIN_TOKEN=5bdfjc78hdxn338cuhSJ -ADMIN_ASSET_VERSION=d74964d-dirty-1779040944093 +ADMIN_ASSET_VERSION=f407946-dirty-1779042833381