diff --git a/app/assets/stylesheets/pageflow/editor/file_settings_dialog.scss b/app/assets/stylesheets/pageflow/editor/file_settings_dialog.scss
index 33ce33e43e..c7cc5b6edb 100644
--- a/app/assets/stylesheets/pageflow/editor/file_settings_dialog.scss
+++ b/app/assets/stylesheets/pageflow/editor/file_settings_dialog.scss
@@ -3,7 +3,7 @@
min-width: 500px;
min-height: 400px;
max-width: 800px;
- max-height: 600px;
+ max-height: 790px;
}
.edit_file {
diff --git a/config/locales/de.yml b/config/locales/de.yml
index 34402866e4..2fd4e4f49b 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -1217,6 +1217,22 @@ de:
video_settings_tab: Video-Details
files:
common_attributes:
+ ai_indicator:
+ blank: "(Nicht angegeben)"
+ inline_help: |-
+ Kennzeichne, dass die Datei mit künstlicher Intelligenz
+ erzeugt oder verändert wurde. Wird als EU-KI-Label an
+ der Stelle im Beitrag angezeigt, wo die Datei verwendet
+ wird.
+ label: KI-Kennzeichnung
+ values:
+ ai_generated: Vollständig KI-generiert
+ ai_modified: Teilweise KI-modifiziert
+ ai_indicator_text:
+ inline_help: |-
+ Erläutert, welche Teile der Datei mit künstlicher
+ Intelligenz erzeugt oder verändert wurden.
+ label: Text der KI-Kennzeichnung
alt:
inline_help: Ein Hinweis darauf, was in dem dargestellten Element zum Ausdruck kommt. Der Text ist im Beitrag nicht sichtbar, kann aber von Screen-Readern verarbeitet werden und trägt somit zur barrierearmen Gestaltung der Inhalte bei.
label: Alt-Text
diff --git a/config/locales/en.yml b/config/locales/en.yml
index c2e30093d5..0cc741b2a9 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -1210,6 +1210,21 @@ en:
video_settings_tab: Video Details
files:
common_attributes:
+ ai_indicator:
+ blank: "(Not specified)"
+ inline_help: |-
+ Indicate that the file has been generated or modified
+ using artificial intelligence. Displayed as EU AI label
+ at the element where the file is used.
+ label: AI label
+ values:
+ ai_generated: Fully AI generated
+ ai_modified: Partially AI modified
+ ai_indicator_text:
+ inline_help: |-
+ Explains which parts of the file have been generated or
+ modified using artificial intelligence.
+ label: AI label text
alt:
inline_help: A hint describing the contents of the displayed element. Not displayed in the story, but can be used by screen reader software. Improves accessibility of the content.
label: Alt-Text
diff --git a/entry_types/scrolled/config/locales/new/public.de.yml b/entry_types/scrolled/config/locales/new/public.de.yml
index 35d38e0748..605cae9da9 100644
--- a/entry_types/scrolled/config/locales/new/public.de.yml
+++ b/entry_types/scrolled/config/locales/new/public.de.yml
@@ -1,6 +1,10 @@
de:
pageflow_scrolled:
public:
+ ai_indicators:
+ ai: KI
+ ai_generated: KI-generiert
+ ai_modified: KI-modifiziert
enter_fullscreen: Vollbildmodus öffnen
exit_fullscreen: Vollbildmodus verlassen
flip_card: Karte wenden
diff --git a/entry_types/scrolled/config/locales/new/public.en.yml b/entry_types/scrolled/config/locales/new/public.en.yml
index 05e105e3de..19051f85a2 100644
--- a/entry_types/scrolled/config/locales/new/public.en.yml
+++ b/entry_types/scrolled/config/locales/new/public.en.yml
@@ -1,6 +1,10 @@
en:
pageflow_scrolled:
public:
+ ai_indicators:
+ ai: AI
+ ai_generated: AI generated
+ ai_modified: AI modified
enter_fullscreen: Enter fullscreen
exit_fullscreen: Exit fullscreen
flip_card: Flip card
diff --git a/entry_types/scrolled/package/documentation.yml b/entry_types/scrolled/package/documentation.yml
index 606f662b21..d4df087bb7 100644
--- a/entry_types/scrolled/package/documentation.yml
+++ b/entry_types/scrolled/package/documentation.yml
@@ -15,6 +15,7 @@ toc:
description: |
React components for building content elements.
children:
+ - AiIndicatorIcon
- AudioPlayer
- ContentElementBox
- ContentElementFigure
diff --git a/entry_types/scrolled/package/spec/frontend/AiIndicatorIcon-spec.js b/entry_types/scrolled/package/spec/frontend/AiIndicatorIcon-spec.js
new file mode 100644
index 0000000000..a6068cd79f
--- /dev/null
+++ b/entry_types/scrolled/package/spec/frontend/AiIndicatorIcon-spec.js
@@ -0,0 +1,57 @@
+import React from 'react';
+import '@testing-library/jest-dom/extend-expect';
+
+import {AiIndicatorIcon, useAiIndicatorLabel} from 'frontend/AiIndicatorIcon';
+
+import {renderInEntry} from 'support';
+import {useFakeTranslations} from 'pageflow/testHelpers';
+
+describe('AiIndicatorIcon', () => {
+ useFakeTranslations({
+ 'pageflow_scrolled.public.ai_indicators.ai_generated': 'AI generated'
+ });
+
+ it('renders icon for kind', () => {
+ const {container} = renderInEntry(