From db3c2262c1dd236575872969c459601d90bfb5b1 Mon Sep 17 00:00:00 2001
From: Antoine <antoine.roy@tetras-libre.fr>
Date: Mon, 29 Jan 2024 09:16:57 +0100
Subject: [PATCH] =?UTF-8?q?cr=C3=A9ation=20d'un=20container=20au=20plugin?=
 =?UTF-8?q?=20avec=20redux?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/containers/miradorAnnotationPlugin.js | 28 +++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 src/containers/miradorAnnotationPlugin.js

diff --git a/src/containers/miradorAnnotationPlugin.js b/src/containers/miradorAnnotationPlugin.js
new file mode 100644
index 0000000..cdd8a6f
--- /dev/null
+++ b/src/containers/miradorAnnotationPlugin.js
@@ -0,0 +1,28 @@
+import { compose } from 'redux';
+import { connect } from 'react-redux';
+import { getWindowViewType } from 'mirador/dist/es/src/state/selectors';
+import { getVisibleCanvases } from 'mirador/dist/es/src/state/selectors/canvases';
+import MiradorAnnotation from '../plugins/miradorAnnotationPlugin';
+import { getCompanionWindowsForContent } from 'mirador/dist/es/src/state/selectors/companionWindows';
+
+
+function mapStateToProps(state, { targetProps: { windowId } }) {
+    const annotationCreationCompanionWindows = getCompanionWindowsForContent(state, { content: 'annotationCreation', windowId });
+    let annotationEdit = true;
+    if (Object.keys(annotationCreationCompanionWindows).length !== 0) {
+        annotationEdit = false;
+    }
+
+    return {
+        canvases: getVisibleCanvases(state, { windowId }),
+        config: state.config,
+        createAnnotation: annotationEdit,
+        windowViewType: getWindowViewType(state, { windowId }),
+    }
+};
+
+const enhance = compose(
+    connect(mapStateToProps),
+);
+
+export default enhance(MiradorAnnotation);
-- 
GitLab