diff --git a/.eslintrc.json b/.eslintrc.json
index 38d6e68..197e394 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -39,6 +39,7 @@
"no-var": 2,
"one-var": [2, "never"],
"quotes": [2, "single"],
+ "react/react-in-jsx-scope": 0,
"semi": 2,
"space-before-function-paren": 2,
"spaced-comment": 2,
diff --git a/rollup.config.js b/rollup.config.js
index f95bfa4..0491619 100644
--- a/rollup.config.js
+++ b/rollup.config.js
@@ -20,6 +20,7 @@ const serverBundle = {
'node:http',
'prop-types',
'react',
+ 'react/jsx-runtime',
'react-bootstrap-typeahead',
'react-dom/server',
'react-helmet',
@@ -34,6 +35,7 @@ const serverBundle = {
},
plugins: [
esbuild({
+ jsx: 'automatic',
jsxFactory: 'React.createElement',
jsxFragment: 'React.Fragment'
}),
@@ -61,7 +63,12 @@ const clientScriptsBundle = {
}),
babel({
babelHelpers: 'bundled',
- presets: ['@babel/preset-react'],
+ presets: [
+ [
+ '@babel/preset-react',
+ { runtime: 'automatic' }
+ ]
+ ],
extensions: ['.js', '.jsx']
}),
commonjs(),
diff --git a/src/react/AppRoutes.jsx b/src/react/AppRoutes.jsx
index 8dfd808..a671dd8 100644
--- a/src/react/AppRoutes.jsx
+++ b/src/react/AppRoutes.jsx
@@ -1,4 +1,3 @@
-import React from 'react';
import { Route, Routes, useLocation } from 'react-router-dom';
import Layout from './Layout.jsx';
diff --git a/src/react/Layout.jsx b/src/react/Layout.jsx
index 70cdaa8..66020d4 100644
--- a/src/react/Layout.jsx
+++ b/src/react/Layout.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React, { useEffect } from 'react';
+import { useEffect } from 'react';
import { connect } from 'react-redux';
import { Helmet } from 'react-helmet';
import { useMatch } from 'react-router-dom';
diff --git a/src/react/client-mount.jsx b/src/react/client-mount.jsx
index acd2730..886b9c7 100644
--- a/src/react/client-mount.jsx
+++ b/src/react/client-mount.jsx
@@ -1,4 +1,3 @@
-import React from 'react';
import { hydrateRoot } from 'react-dom/client';
import { Provider } from 'react-redux';
import { BrowserRouter } from 'react-router-dom';
diff --git a/src/react/components/AppendedCoEntities.jsx b/src/react/components/AppendedCoEntities.jsx
index 0a3e5a2..70b69ef 100644
--- a/src/react/components/AppendedCoEntities.jsx
+++ b/src/react/components/AppendedCoEntities.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { Entities } from './index.js';
diff --git a/src/react/components/AppendedDate.jsx b/src/react/components/AppendedDate.jsx
index 667f012..7e3e5c8 100644
--- a/src/react/components/AppendedDate.jsx
+++ b/src/react/components/AppendedDate.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { formatDate } from '../../lib/format-date.js';
diff --git a/src/react/components/AppendedDepictions.jsx b/src/react/components/AppendedDepictions.jsx
index e52500b..59b8837 100644
--- a/src/react/components/AppendedDepictions.jsx
+++ b/src/react/components/AppendedDepictions.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
const AppendedDepictions = props => {
@@ -11,7 +11,7 @@ const AppendedDepictions = props => {
{
depictions
.map((depiction, index) =>
-
+
{
depiction.displayName && (
@@ -33,7 +33,7 @@ const AppendedDepictions = props => {
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ' /', currentValue])
}
diff --git a/src/react/components/AppendedEmployerCompany.jsx b/src/react/components/AppendedEmployerCompany.jsx
index ebbb890..44850a4 100644
--- a/src/react/components/AppendedEmployerCompany.jsx
+++ b/src/react/components/AppendedEmployerCompany.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { CommaSeparatedInstanceLinks, InstanceLink } from './index.js';
diff --git a/src/react/components/AppendedEntities.jsx b/src/react/components/AppendedEntities.jsx
index f49d2af..622cd4a 100644
--- a/src/react/components/AppendedEntities.jsx
+++ b/src/react/components/AppendedEntities.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { Entities } from './index.js';
diff --git a/src/react/components/AppendedFormatAndYear.jsx b/src/react/components/AppendedFormatAndYear.jsx
index 40cf412..20cc1b5 100644
--- a/src/react/components/AppendedFormatAndYear.jsx
+++ b/src/react/components/AppendedFormatAndYear.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
const AppendedFormatAndYear = props => {
diff --git a/src/react/components/AppendedMembers.jsx b/src/react/components/AppendedMembers.jsx
index aa4ea62..8e2d778 100644
--- a/src/react/components/AppendedMembers.jsx
+++ b/src/react/components/AppendedMembers.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { CommaSeparatedInstanceLinks } from './index.js';
diff --git a/src/react/components/AppendedPerformers.jsx b/src/react/components/AppendedPerformers.jsx
index d4fd2d3..f3cc1fd 100644
--- a/src/react/components/AppendedPerformers.jsx
+++ b/src/react/components/AppendedPerformers.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { InstanceLink, JoinedRoles } from './index.js';
@@ -15,7 +15,7 @@ const AppendedPerformers = props => {
{
performers
.map((performer, index) =>
-
+
@@ -53,7 +53,7 @@ const AppendedPerformers = props => {
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ' / ', currentValue])
}
diff --git a/src/react/components/AppendedProductionDates.jsx b/src/react/components/AppendedProductionDates.jsx
index 5c328ab..10fb9e2 100644
--- a/src/react/components/AppendedProductionDates.jsx
+++ b/src/react/components/AppendedProductionDates.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { formatDate } from '../../lib/format-date.js';
diff --git a/src/react/components/AppendedProductionTeamCredits.jsx b/src/react/components/AppendedProductionTeamCredits.jsx
index f3b15df..a9908bc 100644
--- a/src/react/components/AppendedProductionTeamCredits.jsx
+++ b/src/react/components/AppendedProductionTeamCredits.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { AppendedCoEntities, AppendedEmployerCompany, AppendedMembers } from './index.js';
@@ -15,7 +15,7 @@ const AppendedProductionTeamCredits = props => {
{
credits
.map((credit, index) =>
-
+
<>{ credit.name }>
@@ -37,7 +37,7 @@ const AppendedProductionTeamCredits = props => {
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
diff --git a/src/react/components/AppendedQualifier.jsx b/src/react/components/AppendedQualifier.jsx
index 238ec42..8ebd934 100644
--- a/src/react/components/AppendedQualifier.jsx
+++ b/src/react/components/AppendedQualifier.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
const AppendedQualifier = props => {
diff --git a/src/react/components/AppendedRoles.jsx b/src/react/components/AppendedRoles.jsx
index f278b0f..d4321ed 100644
--- a/src/react/components/AppendedRoles.jsx
+++ b/src/react/components/AppendedRoles.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { JoinedRoles } from './index.js';
diff --git a/src/react/components/AppendedVenue.jsx b/src/react/components/AppendedVenue.jsx
index f6513c7..01c5b7e 100644
--- a/src/react/components/AppendedVenue.jsx
+++ b/src/react/components/AppendedVenue.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { VenueLinkWithContext } from './index.js';
diff --git a/src/react/components/CharactersList.jsx b/src/react/components/CharactersList.jsx
index 7160463..029cf3a 100644
--- a/src/react/components/CharactersList.jsx
+++ b/src/react/components/CharactersList.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { AppendedQualifier, InstanceLink, ListWrapper } from './index.js';
diff --git a/src/react/components/CommaSeparatedInstanceLinks.jsx b/src/react/components/CommaSeparatedInstanceLinks.jsx
index d47ae1f..55dc353 100644
--- a/src/react/components/CommaSeparatedInstanceLinks.jsx
+++ b/src/react/components/CommaSeparatedInstanceLinks.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { InstanceLink } from './index.js';
@@ -13,11 +13,11 @@ const CommaSeparatedInstanceLinks = props => {
{
instances
.map((instance, index) =>
-
+
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
diff --git a/src/react/components/CommaSeparatedMaterials.jsx b/src/react/components/CommaSeparatedMaterials.jsx
index cd5ed75..d61d4eb 100644
--- a/src/react/components/CommaSeparatedMaterials.jsx
+++ b/src/react/components/CommaSeparatedMaterials.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { MaterialLinkWithContext } from './index.js';
@@ -13,11 +13,11 @@ const CommaSeparatedMaterials = props => {
{
materials
.map((material, index) =>
-
+
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
diff --git a/src/react/components/CommaSeparatedProductions.jsx b/src/react/components/CommaSeparatedProductions.jsx
index e00ea19..1a2b4bf 100644
--- a/src/react/components/CommaSeparatedProductions.jsx
+++ b/src/react/components/CommaSeparatedProductions.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { ProductionLinkWithContext } from './index.js';
@@ -13,11 +13,11 @@ const CommaSeparatedProductions = props => {
{
productions
.map((production, index) =>
-
+
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
diff --git a/src/react/components/CreativeProductionsList.jsx b/src/react/components/CreativeProductionsList.jsx
index 993428a..4fe9cd8 100644
--- a/src/react/components/CreativeProductionsList.jsx
+++ b/src/react/components/CreativeProductionsList.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { AppendedProductionTeamCredits, ProductionLinkWithContext, ListWrapper } from './index.js';
diff --git a/src/react/components/CrewProductionsList.jsx b/src/react/components/CrewProductionsList.jsx
index 9bdec8c..e3fac53 100644
--- a/src/react/components/CrewProductionsList.jsx
+++ b/src/react/components/CrewProductionsList.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { AppendedProductionTeamCredits, ProductionLinkWithContext, ListWrapper } from './index.js';
diff --git a/src/react/components/Entities.jsx b/src/react/components/Entities.jsx
index 4f72786..f998a13 100644
--- a/src/react/components/Entities.jsx
+++ b/src/react/components/Entities.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { AppendedMembers, InstanceLink } from './index.js';
@@ -13,7 +13,7 @@ const Entities = props => {
{
entities
.map((entity, index) =>
-
+
@@ -23,7 +23,7 @@ const Entities = props => {
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
diff --git a/src/react/components/ErrorMessage.jsx b/src/react/components/ErrorMessage.jsx
index b2419d7..39ff295 100644
--- a/src/react/components/ErrorMessage.jsx
+++ b/src/react/components/ErrorMessage.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { Helmet } from 'react-helmet';
import { PageTitle } from './index.js';
diff --git a/src/react/components/FestivalLinkWithContext.jsx b/src/react/components/FestivalLinkWithContext.jsx
index 1440da0..6801960 100644
--- a/src/react/components/FestivalLinkWithContext.jsx
+++ b/src/react/components/FestivalLinkWithContext.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { InstanceLink, PrependedSurInstance } from './index.js';
diff --git a/src/react/components/Footer.jsx b/src/react/components/Footer.jsx
index 27313f7..0ea6811 100644
--- a/src/react/components/Footer.jsx
+++ b/src/react/components/Footer.jsx
@@ -1,5 +1,3 @@
-import React from 'react';
-
const Footer = () => {
return (
diff --git a/src/react/components/Header.jsx b/src/react/components/Header.jsx
index bf7d1fe..a2ab04e 100644
--- a/src/react/components/Header.jsx
+++ b/src/react/components/Header.jsx
@@ -1,4 +1,3 @@
-import React from 'react';
import { Link } from 'react-router-dom';
import { SearchBar } from './index.js';
diff --git a/src/react/components/InstanceDocumentTitle.jsx b/src/react/components/InstanceDocumentTitle.jsx
index 093e0b6..5204784 100644
--- a/src/react/components/InstanceDocumentTitle.jsx
+++ b/src/react/components/InstanceDocumentTitle.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { Helmet } from 'react-helmet';
import { MODEL_TO_DISPLAY_NAME_MAP } from '../../utils/constants.js';
diff --git a/src/react/components/InstanceFacet.jsx b/src/react/components/InstanceFacet.jsx
index 4083176..7a33c15 100644
--- a/src/react/components/InstanceFacet.jsx
+++ b/src/react/components/InstanceFacet.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
const InstanceFacet = props => {
diff --git a/src/react/components/InstanceLabel.jsx b/src/react/components/InstanceLabel.jsx
index 5338362..57fe61a 100644
--- a/src/react/components/InstanceLabel.jsx
+++ b/src/react/components/InstanceLabel.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { MODEL_TO_DISPLAY_NAME_MAP } from '../../utils/constants.js';
diff --git a/src/react/components/InstanceLink.jsx b/src/react/components/InstanceLink.jsx
index 4d32be4..8ab5d52 100644
--- a/src/react/components/InstanceLink.jsx
+++ b/src/react/components/InstanceLink.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { NavLink } from 'react-router-dom';
import { MODEL_TO_ROUTE_MAP } from '../../utils/constants.js';
diff --git a/src/react/components/InstanceLinksList.jsx b/src/react/components/InstanceLinksList.jsx
index 8c3f45e..3fc3ae4 100644
--- a/src/react/components/InstanceLinksList.jsx
+++ b/src/react/components/InstanceLinksList.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { InstanceLink, ListWrapper } from './index.js';
diff --git a/src/react/components/JoinedRoles.jsx b/src/react/components/JoinedRoles.jsx
index c6ee48a..ee34cc9 100644
--- a/src/react/components/JoinedRoles.jsx
+++ b/src/react/components/JoinedRoles.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { AppendedQualifier, InstanceLink } from './index.js';
@@ -13,7 +13,7 @@ const JoinedRoles = props => {
{
instances
.map((instance, index) =>
-
+
@@ -37,7 +37,7 @@ const JoinedRoles = props => {
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ' / ', currentValue])
}
diff --git a/src/react/components/ListWrapper.jsx b/src/react/components/ListWrapper.jsx
index f67410e..b506923 100644
--- a/src/react/components/ListWrapper.jsx
+++ b/src/react/components/ListWrapper.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
const ListWrapper = props => {
diff --git a/src/react/components/MaterialLinkWithContext.jsx b/src/react/components/MaterialLinkWithContext.jsx
index f843341..dd0c6b9 100644
--- a/src/react/components/MaterialLinkWithContext.jsx
+++ b/src/react/components/MaterialLinkWithContext.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { AppendedFormatAndYear, InstanceLink, PrependedSurInstance, WritingCredits } from './index.js';
diff --git a/src/react/components/MaterialsList.jsx b/src/react/components/MaterialsList.jsx
index feb2d6f..c6c7c83 100644
--- a/src/react/components/MaterialsList.jsx
+++ b/src/react/components/MaterialsList.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { ListWrapper, MaterialLinkWithContext } from './index.js';
diff --git a/src/react/components/Navigation.jsx b/src/react/components/Navigation.jsx
index 2c7c697..1d22573 100644
--- a/src/react/components/Navigation.jsx
+++ b/src/react/components/Navigation.jsx
@@ -1,4 +1,3 @@
-import React from 'react';
import { Link } from 'react-router-dom';
const Navigation = () => {
diff --git a/src/react/components/PageSubtitle.jsx b/src/react/components/PageSubtitle.jsx
index b4998ba..47c88f1 100644
--- a/src/react/components/PageSubtitle.jsx
+++ b/src/react/components/PageSubtitle.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
const PageSubtitle = props => {
diff --git a/src/react/components/PageTitle.jsx b/src/react/components/PageTitle.jsx
index d1e4d8e..4831559 100644
--- a/src/react/components/PageTitle.jsx
+++ b/src/react/components/PageTitle.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
const PageTitle = props => {
diff --git a/src/react/components/PrependedSurInstance.jsx b/src/react/components/PrependedSurInstance.jsx
index c152483..d2959d1 100644
--- a/src/react/components/PrependedSurInstance.jsx
+++ b/src/react/components/PrependedSurInstance.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { InstanceLink } from './index.js';
diff --git a/src/react/components/ProducerCredits.jsx b/src/react/components/ProducerCredits.jsx
index 1ddbecd..ae4abc2 100644
--- a/src/react/components/ProducerCredits.jsx
+++ b/src/react/components/ProducerCredits.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { ProducerEntities } from './index.js';
import { capitalise } from '../../lib/strings.js';
@@ -20,13 +20,13 @@ const ProducerCredits = props => {
: credit.name;
return (
-
+
<>{`${creditName} `}>
-
+
);
})
diff --git a/src/react/components/ProducerEntities.jsx b/src/react/components/ProducerEntities.jsx
index 792b0e4..e17c508 100644
--- a/src/react/components/ProducerEntities.jsx
+++ b/src/react/components/ProducerEntities.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { CommaSeparatedInstanceLinks, InstanceLink } from './index.js';
@@ -13,7 +13,7 @@ const ProducerEntities = props => {
{
entities
.map((entity, index) =>
-
+
{
entity.members?.length > 0 && (
@@ -29,7 +29,7 @@ const ProducerEntities = props => {
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
diff --git a/src/react/components/ProducerProductionsList.jsx b/src/react/components/ProducerProductionsList.jsx
index 17bee80..0d36642 100644
--- a/src/react/components/ProducerProductionsList.jsx
+++ b/src/react/components/ProducerProductionsList.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { ProducerCredits, ProductionLinkWithContext, ListWrapper } from './index.js';
diff --git a/src/react/components/ProductionLinkWithContext.jsx b/src/react/components/ProductionLinkWithContext.jsx
index dc91cb2..723ef30 100644
--- a/src/react/components/ProductionLinkWithContext.jsx
+++ b/src/react/components/ProductionLinkWithContext.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { AppendedProductionDates, AppendedVenue, InstanceLink, PrependedSurInstance } from './index.js';
diff --git a/src/react/components/ProductionTeamCreditsList.jsx b/src/react/components/ProductionTeamCreditsList.jsx
index 478d611..7170e68 100644
--- a/src/react/components/ProductionTeamCreditsList.jsx
+++ b/src/react/components/ProductionTeamCreditsList.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { AppendedEntities, ListWrapper } from './index.js';
diff --git a/src/react/components/ProductionsList.jsx b/src/react/components/ProductionsList.jsx
index e00dda0..c034d5d 100644
--- a/src/react/components/ProductionsList.jsx
+++ b/src/react/components/ProductionsList.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { ListWrapper, ProductionLinkWithContext } from './index.js';
diff --git a/src/react/components/SearchBar.jsx b/src/react/components/SearchBar.jsx
index 93c48f8..6d00818 100644
--- a/src/react/components/SearchBar.jsx
+++ b/src/react/components/SearchBar.jsx
@@ -1,6 +1,6 @@
/* eslint no-unused-vars: ["error", { "argsIgnorePattern": "(newSelectionPrefix|paginationText|renderMenuItemChildren)" }] */
-import React, { useState } from 'react';
+import { useState } from 'react';
import { AsyncTypeahead, Highlighter } from 'react-bootstrap-typeahead';
import { useNavigate } from 'react-router-dom';
diff --git a/src/react/components/VenueLinkWithContext.jsx b/src/react/components/VenueLinkWithContext.jsx
index 50c19ee..22c71ab 100644
--- a/src/react/components/VenueLinkWithContext.jsx
+++ b/src/react/components/VenueLinkWithContext.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { InstanceLink, PrependedSurInstance } from './index.js';
diff --git a/src/react/components/WritingCredits.jsx b/src/react/components/WritingCredits.jsx
index b6cba04..0292324 100644
--- a/src/react/components/WritingCredits.jsx
+++ b/src/react/components/WritingCredits.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { WritingEntities } from './index.js';
import { capitalise } from '../../lib/strings.js';
@@ -20,13 +20,13 @@ const WritingCredits = props => {
: credit.name;
return (
-
+
<>{`${creditName} `}>
-
+
);
})
diff --git a/src/react/components/WritingEntities.jsx b/src/react/components/WritingEntities.jsx
index 016b151..e4f6e5d 100644
--- a/src/react/components/WritingEntities.jsx
+++ b/src/react/components/WritingEntities.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { AppendedFormatAndYear, InstanceLink, PrependedSurInstance, WritingCredits } from './index.js';
@@ -13,7 +13,7 @@ const WritingEntities = props => {
{
entities
.map((entity, index) =>
-
+
{
entity.surMaterial?.surMaterial && (
@@ -47,7 +47,7 @@ const WritingEntities = props => {
)
}
-
+
)
.reduce((accumulator, currentValue, currentIndex) => {
diff --git a/src/react/page-wrappers/InstancePageWrapper.jsx b/src/react/page-wrappers/InstancePageWrapper.jsx
index a5f1740..6c01b3c 100644
--- a/src/react/page-wrappers/InstancePageWrapper.jsx
+++ b/src/react/page-wrappers/InstancePageWrapper.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import getDifferentiatorSuffix from '../../lib/get-differentiator-suffix.js';
import getInstanceTitle from '../../lib/get-instance-title.js';
diff --git a/src/react/page-wrappers/ListPageWrapper.jsx b/src/react/page-wrappers/ListPageWrapper.jsx
index 7bdee64..6dc0b9b 100644
--- a/src/react/page-wrappers/ListPageWrapper.jsx
+++ b/src/react/page-wrappers/ListPageWrapper.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { PageTitle } from '../components/index.js';
diff --git a/src/react/pages/Home.jsx b/src/react/pages/Home.jsx
index b337ee9..b314fa9 100644
--- a/src/react/pages/Home.jsx
+++ b/src/react/pages/Home.jsx
@@ -1,5 +1,3 @@
-import React from 'react';
-
import { PageTitle } from '../components/index.js';
const Home = () => {
diff --git a/src/react/pages/NotFound.jsx b/src/react/pages/NotFound.jsx
index 85363ce..569d3f2 100644
--- a/src/react/pages/NotFound.jsx
+++ b/src/react/pages/NotFound.jsx
@@ -1,5 +1,3 @@
-import React from 'react';
-
import { ErrorMessage } from '../components/index.js';
const NotFound = () => {
diff --git a/src/react/pages/instances/Award.jsx b/src/react/pages/instances/Award.jsx
index 884e3eb..68a9f95 100644
--- a/src/react/pages/instances/Award.jsx
+++ b/src/react/pages/instances/Award.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceFacet, InstanceLinksList } from '../../components/index.js';
diff --git a/src/react/pages/instances/AwardCeremony.jsx b/src/react/pages/instances/AwardCeremony.jsx
index a0e2cf3..f688a82 100644
--- a/src/react/pages/instances/AwardCeremony.jsx
+++ b/src/react/pages/instances/AwardCeremony.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { connect } from 'react-redux';
import {
@@ -37,7 +37,7 @@ const AwardCeremony = props => {
{
categories.map((category, index) =>
-
+
{ category.name }
@@ -92,7 +92,7 @@ const AwardCeremony = props => {
}
-
+
)
}
diff --git a/src/react/pages/instances/Character.jsx b/src/react/pages/instances/Character.jsx
index 30c1665..b49e1dc 100644
--- a/src/react/pages/instances/Character.jsx
+++ b/src/react/pages/instances/Character.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import {
diff --git a/src/react/pages/instances/Company.jsx b/src/react/pages/instances/Company.jsx
index e7d1b02..80b3795 100644
--- a/src/react/pages/instances/Company.jsx
+++ b/src/react/pages/instances/Company.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { connect } from 'react-redux';
import {
@@ -203,7 +203,7 @@ const Company = props => {
{
awards.map((award, index) =>
-
+
@@ -216,13 +216,13 @@ const Company = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -271,11 +271,11 @@ const Company = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -284,7 +284,7 @@ const Company = props => {
}
-
+
)
}
@@ -298,7 +298,7 @@ const Company = props => {
{
subsequentVersionMaterialAwards.map((subsequentVersionMaterialAward, index) =>
-
+
@@ -311,13 +311,13 @@ const Company = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -369,11 +369,11 @@ const Company = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -382,7 +382,7 @@ const Company = props => {
}
-
+
)
}
@@ -396,7 +396,7 @@ const Company = props => {
{
sourcingMaterialAwards.map((sourcingMaterialAward, index) =>
-
+
@@ -409,13 +409,13 @@ const Company = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -467,11 +467,11 @@ const Company = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -480,7 +480,7 @@ const Company = props => {
}
-
+
)
}
@@ -494,7 +494,7 @@ const Company = props => {
{
rightsGrantorMaterialAwards.map((rightsGrantorMaterialAward, index) =>
-
+
@@ -507,13 +507,13 @@ const Company = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -565,11 +565,11 @@ const Company = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -578,7 +578,7 @@ const Company = props => {
}
-
+
)
}
diff --git a/src/react/pages/instances/Festival.jsx b/src/react/pages/instances/Festival.jsx
index 0d19c97..8f211ce 100644
--- a/src/react/pages/instances/Festival.jsx
+++ b/src/react/pages/instances/Festival.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceFacet, InstanceLink, ProductionsList } from '../../components/index.js';
diff --git a/src/react/pages/instances/FestivalSeries.jsx b/src/react/pages/instances/FestivalSeries.jsx
index 0fa64c3..528c69f 100644
--- a/src/react/pages/instances/FestivalSeries.jsx
+++ b/src/react/pages/instances/FestivalSeries.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceFacet, InstanceLinksList } from '../../components/index.js';
diff --git a/src/react/pages/instances/Material.jsx b/src/react/pages/instances/Material.jsx
index c5f4c32..a616a11 100644
--- a/src/react/pages/instances/Material.jsx
+++ b/src/react/pages/instances/Material.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { connect } from 'react-redux';
import { capitalise } from '../../../lib/strings.js';
@@ -256,7 +256,7 @@ const Material = props => {
{
awards.map((award, index) =>
-
+
@@ -269,13 +269,13 @@ const Material = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -339,11 +339,11 @@ const Material = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -352,7 +352,7 @@ const Material = props => {
}
-
+
)
}
@@ -366,7 +366,7 @@ const Material = props => {
{
subsequentVersionMaterialAwards.map((subsequentVersionMaterialAward, index) =>
-
+
@@ -379,13 +379,13 @@ const Material = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -441,11 +441,11 @@ const Material = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -454,7 +454,7 @@ const Material = props => {
}
-
+
)
}
@@ -468,7 +468,7 @@ const Material = props => {
{
sourcingMaterialAwards.map((sourcingMaterialAward, index) =>
-
+
@@ -481,13 +481,13 @@ const Material = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -543,11 +543,11 @@ const Material = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -556,7 +556,7 @@ const Material = props => {
}
-
+
)
}
diff --git a/src/react/pages/instances/Person.jsx b/src/react/pages/instances/Person.jsx
index 321b20b..99ed522 100644
--- a/src/react/pages/instances/Person.jsx
+++ b/src/react/pages/instances/Person.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { connect } from 'react-redux';
import {
@@ -233,7 +233,7 @@ const Person = props => {
{
awards.map((award, index) =>
-
+
@@ -246,13 +246,13 @@ const Person = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -301,11 +301,11 @@ const Person = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -314,7 +314,7 @@ const Person = props => {
}
-
+
)
}
@@ -328,7 +328,7 @@ const Person = props => {
{
subsequentVersionMaterialAwards.map((subsequentVersionMaterialAward, index) =>
-
+
@@ -341,13 +341,13 @@ const Person = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -399,11 +399,11 @@ const Person = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -412,7 +412,7 @@ const Person = props => {
}
-
+
)
}
@@ -426,7 +426,7 @@ const Person = props => {
{
sourcingMaterialAwards.map((sourcingMaterialAward, index) =>
-
+
@@ -439,13 +439,13 @@ const Person = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -497,11 +497,11 @@ const Person = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -510,7 +510,7 @@ const Person = props => {
}
-
+
)
}
@@ -524,7 +524,7 @@ const Person = props => {
{
rightsGrantorMaterialAwards.map((rightsGrantorMaterialAward, index) =>
-
+
@@ -537,13 +537,13 @@ const Person = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -595,11 +595,11 @@ const Person = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -608,7 +608,7 @@ const Person = props => {
}
-
+
)
}
diff --git a/src/react/pages/instances/Production.jsx b/src/react/pages/instances/Production.jsx
index 1585d12..aee425d 100644
--- a/src/react/pages/instances/Production.jsx
+++ b/src/react/pages/instances/Production.jsx
@@ -1,5 +1,5 @@
import PropTypes from 'prop-types';
-import React from 'react';
+import { Fragment } from 'react';
import { connect } from 'react-redux';
import { formatDate } from '../../../lib/format-date.js';
@@ -286,7 +286,7 @@ const Production = props => {
{
awards.map((award, index) =>
-
+
@@ -299,13 +299,13 @@ const Production = props => {
{
ceremony.categories
.map((category, index) =>
-
+
{ category.name }{': '}
{
category.nominations
.map((nomination, index) =>
-
+
{nomination.type}
@@ -376,11 +376,11 @@ const Production = props => {
>
)
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, ', ', currentValue])
}
-
+
)
.reduce((accumulator, currentValue) => [accumulator, '; ', currentValue])
}
@@ -389,7 +389,7 @@ const Production = props => {
}
-
+
)
}
diff --git a/src/react/pages/instances/Season.jsx b/src/react/pages/instances/Season.jsx
index d09eaf9..b0b6c7e 100644
--- a/src/react/pages/instances/Season.jsx
+++ b/src/react/pages/instances/Season.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceFacet, ProductionsList } from '../../components/index.js';
diff --git a/src/react/pages/instances/Venue.jsx b/src/react/pages/instances/Venue.jsx
index 622576c..d3473b6 100644
--- a/src/react/pages/instances/Venue.jsx
+++ b/src/react/pages/instances/Venue.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceFacet, InstanceLink, InstanceLinksList, ProductionsList } from '../../components/index.js';
diff --git a/src/react/pages/lists/AwardCeremonies.jsx b/src/react/pages/lists/AwardCeremonies.jsx
index 34cfa14..68932dd 100644
--- a/src/react/pages/lists/AwardCeremonies.jsx
+++ b/src/react/pages/lists/AwardCeremonies.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLink, ListWrapper } from '../../components/index.js';
diff --git a/src/react/pages/lists/Awards.jsx b/src/react/pages/lists/Awards.jsx
index 881cad5..2a92f17 100644
--- a/src/react/pages/lists/Awards.jsx
+++ b/src/react/pages/lists/Awards.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLinksList } from '../../components/index.js';
diff --git a/src/react/pages/lists/Characters.jsx b/src/react/pages/lists/Characters.jsx
index 2e26689..0dfd9da 100644
--- a/src/react/pages/lists/Characters.jsx
+++ b/src/react/pages/lists/Characters.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLinksList } from '../../components/index.js';
diff --git a/src/react/pages/lists/Companies.jsx b/src/react/pages/lists/Companies.jsx
index 9c9d2e1..390f9fe 100644
--- a/src/react/pages/lists/Companies.jsx
+++ b/src/react/pages/lists/Companies.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLinksList } from '../../components/index.js';
diff --git a/src/react/pages/lists/FestivalSerieses.jsx b/src/react/pages/lists/FestivalSerieses.jsx
index 4f7f8b0..0f49f4b 100644
--- a/src/react/pages/lists/FestivalSerieses.jsx
+++ b/src/react/pages/lists/FestivalSerieses.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLinksList } from '../../components/index.js';
diff --git a/src/react/pages/lists/Festivals.jsx b/src/react/pages/lists/Festivals.jsx
index 37e707e..779b4e3 100644
--- a/src/react/pages/lists/Festivals.jsx
+++ b/src/react/pages/lists/Festivals.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLink, ListWrapper } from '../../components/index.js';
diff --git a/src/react/pages/lists/Materials.jsx b/src/react/pages/lists/Materials.jsx
index 36d54c2..d28fe23 100644
--- a/src/react/pages/lists/Materials.jsx
+++ b/src/react/pages/lists/Materials.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { MaterialsList } from '../../components/index.js';
diff --git a/src/react/pages/lists/People.jsx b/src/react/pages/lists/People.jsx
index ff2707b..533838e 100644
--- a/src/react/pages/lists/People.jsx
+++ b/src/react/pages/lists/People.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLinksList } from '../../components/index.js';
diff --git a/src/react/pages/lists/Productions.jsx b/src/react/pages/lists/Productions.jsx
index e4d7cbb..630c22f 100644
--- a/src/react/pages/lists/Productions.jsx
+++ b/src/react/pages/lists/Productions.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { ProductionsList } from '../../components/index.js';
diff --git a/src/react/pages/lists/Seasons.jsx b/src/react/pages/lists/Seasons.jsx
index 42e1bb8..42b0bf2 100644
--- a/src/react/pages/lists/Seasons.jsx
+++ b/src/react/pages/lists/Seasons.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLinksList } from '../../components/index.js';
diff --git a/src/react/pages/lists/Venues.jsx b/src/react/pages/lists/Venues.jsx
index b2f09c3..1771c97 100644
--- a/src/react/pages/lists/Venues.jsx
+++ b/src/react/pages/lists/Venues.jsx
@@ -1,5 +1,4 @@
import PropTypes from 'prop-types';
-import React from 'react';
import { connect } from 'react-redux';
import { InstanceLink, ListWrapper } from '../../components/index.js';
diff --git a/src/react/react-html.jsx b/src/react/react-html.jsx
index 05199bb..70b8751 100644
--- a/src/react/react-html.jsx
+++ b/src/react/react-html.jsx
@@ -1,4 +1,3 @@
-import React from 'react';
import { renderToString } from 'react-dom/server';
import { Provider } from 'react-redux';
import { StaticRouter } from 'react-router-dom/server.js';