diff --git a/.github/actions/check-pr-status/package.json b/.github/actions/check-pr-status/package.json
index 25efd9810e..72206208c5 100644
--- a/.github/actions/check-pr-status/package.json
+++ b/.github/actions/check-pr-status/package.json
@@ -1,6 +1,6 @@
{
"name": "check-pr-status",
- "version": "4.4.1",
+ "version": "4.4.3",
"main": "dist/index.js",
"license": "MIT",
"private": true,
diff --git a/examples/getstarted/package.json b/examples/getstarted/package.json
index abd51b9094..d7703713f9 100644
--- a/examples/getstarted/package.json
+++ b/examples/getstarted/package.json
@@ -1,7 +1,7 @@
{
"name": "getstarted",
"private": true,
- "version": "4.4.1",
+ "version": "4.4.3",
"description": "A Strapi application.",
"scripts": {
"develop": "strapi develop",
@@ -12,16 +12,16 @@
"strapi": "strapi"
},
"dependencies": {
- "@strapi/plugin-color-picker": "4.4.1",
- "@strapi/plugin-documentation": "4.4.1",
- "@strapi/plugin-graphql": "4.4.1",
- "@strapi/plugin-i18n": "4.4.1",
- "@strapi/plugin-sentry": "4.4.1",
- "@strapi/plugin-users-permissions": "4.4.1",
- "@strapi/provider-email-mailgun": "4.4.1",
- "@strapi/provider-upload-aws-s3": "4.4.1",
- "@strapi/provider-upload-cloudinary": "4.4.1",
- "@strapi/strapi": "4.4.1",
+ "@strapi/plugin-color-picker": "4.4.3",
+ "@strapi/plugin-documentation": "4.4.3",
+ "@strapi/plugin-graphql": "4.4.3",
+ "@strapi/plugin-i18n": "4.4.3",
+ "@strapi/plugin-sentry": "4.4.3",
+ "@strapi/plugin-users-permissions": "4.4.3",
+ "@strapi/provider-email-mailgun": "4.4.3",
+ "@strapi/provider-upload-aws-s3": "4.4.3",
+ "@strapi/provider-upload-cloudinary": "4.4.3",
+ "@strapi/strapi": "4.4.3",
"@vscode/sqlite3": "5.0.8",
"better-sqlite3": "7.4.6",
"lodash": "4.17.21",
diff --git a/examples/kitchensink-ts/package.json b/examples/kitchensink-ts/package.json
index 39b7a9c5d1..345945d565 100644
--- a/examples/kitchensink-ts/package.json
+++ b/examples/kitchensink-ts/package.json
@@ -1,7 +1,7 @@
{
"name": "kitchensink-ts",
"private": true,
- "version": "4.4.1",
+ "version": "4.4.3",
"description": "A Strapi application",
"scripts": {
"develop": "strapi develop",
@@ -10,9 +10,9 @@
"strapi": "strapi"
},
"dependencies": {
- "@strapi/plugin-i18n": "4.4.1",
- "@strapi/plugin-users-permissions": "4.4.1",
- "@strapi/strapi": "4.4.1",
+ "@strapi/plugin-i18n": "4.4.3",
+ "@strapi/plugin-users-permissions": "4.4.3",
+ "@strapi/strapi": "4.4.3",
"better-sqlite3": "7.4.6"
},
"author": {
diff --git a/examples/kitchensink/package.json b/examples/kitchensink/package.json
index 870de577ea..f38ee3cf86 100644
--- a/examples/kitchensink/package.json
+++ b/examples/kitchensink/package.json
@@ -1,7 +1,7 @@
{
"name": "kitchensink",
"private": true,
- "version": "4.4.1",
+ "version": "4.4.3",
"description": "A Strapi application.",
"scripts": {
"develop": "strapi develop",
@@ -12,10 +12,10 @@
"strapi": "strapi"
},
"dependencies": {
- "@strapi/provider-email-mailgun": "4.4.1",
- "@strapi/provider-upload-aws-s3": "4.4.1",
- "@strapi/provider-upload-cloudinary": "4.4.1",
- "@strapi/strapi": "4.4.1",
+ "@strapi/provider-email-mailgun": "4.4.3",
+ "@strapi/provider-upload-aws-s3": "4.4.3",
+ "@strapi/provider-upload-cloudinary": "4.4.3",
+ "@strapi/strapi": "4.4.3",
"lodash": "4.17.21",
"mysql": "2.18.1",
"passport-google-oauth2": "0.2.0",
diff --git a/lerna.json b/lerna.json
index 098f68e995..29f9fc22d2 100644
--- a/lerna.json
+++ b/lerna.json
@@ -1,5 +1,5 @@
{
- "version": "4.4.1",
+ "version": "4.4.3",
"packages": [
"packages/*",
"examples/*"
diff --git a/packages/admin-test-utils/package.json b/packages/admin-test-utils/package.json
index 93ce0919f7..eb8b29c74a 100644
--- a/packages/admin-test-utils/package.json
+++ b/packages/admin-test-utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/admin-test-utils",
- "version": "4.4.1",
+ "version": "4.4.3",
"private": true,
"description": "Test utilities for the Strapi administration panel",
"license": "MIT",
diff --git a/packages/cli/create-strapi-app/package.json b/packages/cli/create-strapi-app/package.json
index 3bb4b382e3..de75f61af2 100644
--- a/packages/cli/create-strapi-app/package.json
+++ b/packages/cli/create-strapi-app/package.json
@@ -1,7 +1,12 @@
{
"name": "create-strapi-app",
- "version": "4.4.1",
+ "version": "4.4.3",
"description": "Generate a new Strapi application.",
+ "dependencies": {
+ "@strapi/generate-new": "4.4.3",
+ "commander": "6.1.0",
+ "inquirer": "8.2.4"
+ },
"keywords": [
"create-strapi-app",
"create",
@@ -37,11 +42,6 @@
"scripts": {
"test": "echo \"no tests yet\""
},
- "dependencies": {
- "@strapi/generate-new": "4.4.1",
- "commander": "6.1.0",
- "inquirer": "8.2.4"
- },
"engines": {
"node": ">=14.19.1 <=18.x.x",
"npm": ">=6.0.0"
diff --git a/packages/cli/create-strapi-starter/package.json b/packages/cli/create-strapi-starter/package.json
index db40ace82f..1ec9fafdc0 100644
--- a/packages/cli/create-strapi-starter/package.json
+++ b/packages/cli/create-strapi-starter/package.json
@@ -1,6 +1,6 @@
{
"name": "create-strapi-starter",
- "version": "4.4.1",
+ "version": "4.4.3",
"description": "Generate a new Strapi application.",
"keywords": [
"create-strapi-starter",
@@ -38,7 +38,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
- "@strapi/generate-new": "4.4.1",
+ "@strapi/generate-new": "4.4.3",
"chalk": "4.1.1",
"ci-info": "3.3.2",
"commander": "7.1.0",
diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicTable/TableRows/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicTable/TableRows/index.js
index 5d45eb2abc..bb563b62b7 100644
--- a/packages/core/admin/admin/src/content-manager/components/DynamicTable/TableRows/index.js
+++ b/packages/core/admin/admin/src/content-manager/components/DynamicTable/TableRows/index.js
@@ -1,20 +1,26 @@
import React from 'react';
import PropTypes from 'prop-types';
+import { Link, useHistory } from 'react-router-dom';
+import { useIntl } from 'react-intl';
+
import { BaseCheckbox } from '@strapi/design-system/BaseCheckbox';
import { Box } from '@strapi/design-system/Box';
import { IconButton } from '@strapi/design-system/IconButton';
import { Tbody, Td, Tr } from '@strapi/design-system/Table';
import { Flex } from '@strapi/design-system/Flex';
+
import Trash from '@strapi/icons/Trash';
import Duplicate from '@strapi/icons/Duplicate';
import Pencil from '@strapi/icons/Pencil';
+
import { useTracking, stopPropagation, onRowClick } from '@strapi/helper-plugin';
-import { useHistory } from 'react-router-dom';
-import { useIntl } from 'react-intl';
+
import { usePluginsQueryParams } from '../../../hooks';
-import CellContent from '../CellContent';
+
import { getFullName } from '../../../../utils';
+import CellContent from '../CellContent';
+
const TableRows = ({
canCreate,
canDelete,
@@ -100,13 +106,14 @@ const TableRows = ({
{
trackUsage('willEditEntryFromButton');
- push({
- pathname: `${pathname}/${data.id}`,
- state: { from: pathname },
- search: pluginsQueryParams,
- });
+ }}
+ to={{
+ pathname: `${pathname}/${data.id}`,
+ state: { from: pathname },
+ search: pluginsQueryParams,
}}
label={formatMessage(
{ id: 'app.component.table.edit', defaultMessage: 'Edit {target}' },
@@ -119,12 +126,11 @@ const TableRows = ({
{canCreate && (
{
- push({
- pathname: `${pathname}/create/clone/${data.id}`,
- state: { from: pathname },
- search: pluginsQueryParams,
- });
+ forwardedAs={Link}
+ to={{
+ pathname: `${pathname}/create/clone/${data.id}`,
+ state: { from: pathname },
+ search: pluginsQueryParams,
}}
label={formatMessage(
{
@@ -144,7 +150,6 @@ const TableRows = ({
{
trackUsage('willDeleteEntryFromList');
-
onClickDelete(data.id);
}}
label={formatMessage(
diff --git a/packages/core/admin/admin/src/content-manager/components/SelectWrapper/index.js b/packages/core/admin/admin/src/content-manager/components/SelectWrapper/index.js
index f72152feb1..ad02d66ab4 100644
--- a/packages/core/admin/admin/src/content-manager/components/SelectWrapper/index.js
+++ b/packages/core/admin/admin/src/content-manager/components/SelectWrapper/index.js
@@ -129,7 +129,7 @@ function SelectWrapper({
const params = { limit: state.limit, ...defaultParams, start: state.start };
if (state.contains) {
- params[`filters[${containsKey}][$contains]`] = state.contains;
+ params[`filters[${containsKey}][$containsi]`] = state.contains;
}
try {
diff --git a/packages/core/admin/admin/src/content-manager/pages/ListView/index.js b/packages/core/admin/admin/src/content-manager/pages/ListView/index.js
index 42797db35b..bb65f3c76e 100644
--- a/packages/core/admin/admin/src/content-manager/pages/ListView/index.js
+++ b/packages/core/admin/admin/src/content-manager/pages/ListView/index.js
@@ -5,9 +5,11 @@ import { connect } from 'react-redux';
import isEqual from 'react-fast-compare';
import { bindActionCreators, compose } from 'redux';
import { useIntl } from 'react-intl';
-import { useHistory, useLocation } from 'react-router-dom';
+import { useHistory, useLocation, Link as ReactRouterLink } from 'react-router-dom';
import get from 'lodash/get';
import { stringify } from 'qs';
+import axios from 'axios';
+
import {
NoPermissions,
CheckPermissions,
@@ -19,31 +21,37 @@ import {
useTracking,
Link,
} from '@strapi/helper-plugin';
+
import { IconButton } from '@strapi/design-system/IconButton';
import { Main } from '@strapi/design-system/Main';
import { Box } from '@strapi/design-system/Box';
import { ActionLayout, ContentLayout, HeaderLayout } from '@strapi/design-system/Layout';
import { useNotifyAT } from '@strapi/design-system/LiveRegions';
import { Button } from '@strapi/design-system/Button';
+
import ArrowLeft from '@strapi/icons/ArrowLeft';
import Plus from '@strapi/icons/Plus';
import Cog from '@strapi/icons/Cog';
-import axios from 'axios';
+
import { axiosInstance } from '../../../core/utils';
-import { InjectionZone } from '../../../shared/components';
+
import DynamicTable from '../../components/DynamicTable';
+import AttributeFilter from '../../components/AttributeFilter';
+import { InjectionZone } from '../../../shared/components';
+
import permissions from '../../../permissions';
+
import { getRequestUrl, getTrad } from '../../utils';
+
import FieldPicker from './FieldPicker';
import PaginationFooter from './PaginationFooter';
import { getData, getDataSucceeded, onChangeListHeaders, onResetListHeaders } from './actions';
import makeSelectListView from './selectors';
import { buildQueryString } from './utils';
-import AttributeFilter from '../../components/AttributeFilter';
const cmPermissions = permissions.contentManager;
-const IconButtonCustom = styled(IconButton)`
+const ConfigureLayoutBox = styled(Box)`
svg {
path {
fill: ${({ theme }) => theme.colors.neutral900};
@@ -51,7 +59,6 @@ const IconButtonCustom = styled(IconButton)`
}
`;
-/* eslint-disable react/no-array-index-key */
function ListView({
canCreate,
canDelete,
@@ -240,16 +247,18 @@ function ListView({
canCreate ? (
|