diff --git a/client/src/pages/openalex-ror/components/works-list.jsx b/client/src/pages/openalex-ror/components/works-list.jsx
new file mode 100644
index 0000000..f046f77
--- /dev/null
+++ b/client/src/pages/openalex-ror/components/works-list.jsx
@@ -0,0 +1,28 @@
+import { Button, Link, Text } from '@dataesr/dsfr-plus';
+import { useState } from 'react';
+
+export default function WorksList({ works }) {
+ const [showMore, setShowMore] = useState(false);
+
+ const _works = showMore ? works : works.slice(0, 5);
+ return (
+
+
+ openAlex works:
+
+ {_works.map((work) => (
+
+ {work}
+
+ ))}
+ {
+ works.length > 5 && (
+
+ )
+ }
+
+
+ );
+}
diff --git a/client/src/pages/openalex-ror/results/list-view.jsx b/client/src/pages/openalex-ror/results/list-view.jsx
index 8d56204..730cf98 100644
--- a/client/src/pages/openalex-ror/results/list-view.jsx
+++ b/client/src/pages/openalex-ror/results/list-view.jsx
@@ -1,4 +1,5 @@
-import { Badge, Col, Link, Row, Tag, TagGroup, Text } from '@dataesr/dsfr-plus';
+import { Col, Link, Row, Tag, Text } from '@dataesr/dsfr-plus';
+import WorksList from '../components/works-list';
export default function ListView({
onRowEditComplete,
@@ -14,48 +15,40 @@ export default function ListView({
allAffiliations.map((affiliation) => (
-
+
-
+
-
- ror list:
- {affiliation.rors.map((ror) => (
- <>
-
-
- {ror.rorId}
-
-
-
- >
- ))}
-
-
- openAlex works:
- {affiliation.works.slice(0, 5).map((work) => (
-
- {work}
-
- ))}
-
+
+
+
+ {affiliation.rors.map((ror) => (
+ <>
+
+
+ {ror.rorId}
+
+
+
+ >
+ ))}