Merge branch 'features/data-transfer' into data-transfer/fix-transfer-transaction-close

This commit is contained in:
Ben Irvin 2023-02-24 14:56:53 +01:00 committed by GitHub
commit d79d962006
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
70 changed files with 3221 additions and 3024 deletions

View File

@ -1,6 +1,6 @@
{
"name": "check-pr-status",
"version": "4.6.1",
"version": "4.6.2",
"main": "dist/index.js",
"license": "MIT",
"private": true,

View File

@ -1,7 +1,7 @@
{
"name": "getstarted",
"private": true,
"version": "4.6.1",
"version": "4.6.2",
"description": "A Strapi application.",
"scripts": {
"develop": "strapi develop",
@ -12,16 +12,16 @@
"strapi": "strapi"
},
"dependencies": {
"@strapi/plugin-color-picker": "4.6.1",
"@strapi/plugin-documentation": "4.6.1",
"@strapi/plugin-graphql": "4.6.1",
"@strapi/plugin-i18n": "4.6.1",
"@strapi/plugin-sentry": "4.6.1",
"@strapi/plugin-users-permissions": "4.6.1",
"@strapi/provider-email-mailgun": "4.6.1",
"@strapi/provider-upload-aws-s3": "4.6.1",
"@strapi/provider-upload-cloudinary": "4.6.1",
"@strapi/strapi": "4.6.1",
"@strapi/plugin-color-picker": "4.6.2",
"@strapi/plugin-documentation": "4.6.2",
"@strapi/plugin-graphql": "4.6.2",
"@strapi/plugin-i18n": "4.6.2",
"@strapi/plugin-sentry": "4.6.2",
"@strapi/plugin-users-permissions": "4.6.2",
"@strapi/provider-email-mailgun": "4.6.2",
"@strapi/provider-upload-aws-s3": "4.6.2",
"@strapi/provider-upload-cloudinary": "4.6.2",
"@strapi/strapi": "4.6.2",
"@vscode/sqlite3": "5.0.8",
"better-sqlite3": "8.0.1",
"lodash": "4.17.21",

View File

@ -1,7 +1,7 @@
{
"name": "kitchensink-ts",
"private": true,
"version": "4.6.1",
"version": "4.6.2",
"description": "A Strapi application",
"scripts": {
"develop": "strapi develop",
@ -10,9 +10,9 @@
"strapi": "strapi"
},
"dependencies": {
"@strapi/plugin-i18n": "4.6.1",
"@strapi/plugin-users-permissions": "4.6.1",
"@strapi/strapi": "4.6.1",
"@strapi/plugin-i18n": "4.6.2",
"@strapi/plugin-users-permissions": "4.6.2",
"@strapi/strapi": "4.6.2",
"better-sqlite3": "8.0.1"
},
"author": {

View File

@ -1,7 +1,7 @@
{
"name": "kitchensink",
"private": true,
"version": "4.6.1",
"version": "4.6.2",
"description": "A Strapi application.",
"scripts": {
"develop": "strapi develop",
@ -12,10 +12,10 @@
"strapi": "strapi"
},
"dependencies": {
"@strapi/provider-email-mailgun": "4.6.1",
"@strapi/provider-upload-aws-s3": "4.6.1",
"@strapi/provider-upload-cloudinary": "4.6.1",
"@strapi/strapi": "4.6.1",
"@strapi/provider-email-mailgun": "4.6.2",
"@strapi/provider-upload-aws-s3": "4.6.2",
"@strapi/provider-upload-cloudinary": "4.6.2",
"@strapi/strapi": "4.6.2",
"lodash": "4.17.21",
"mysql": "2.18.1",
"passport-google-oauth2": "0.2.0",

View File

@ -1,5 +1,5 @@
{
"version": "4.6.1",
"version": "4.6.2",
"packages": [
"packages/*",
"examples/*"

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/admin-test-utils",
"version": "4.6.1",
"version": "4.6.2",
"private": true,
"description": "Test utilities for the Strapi administration panel",
"license": "MIT",

View File

@ -1,9 +1,9 @@
{
"name": "create-strapi-app",
"version": "4.6.1",
"version": "4.6.2",
"description": "Generate a new Strapi application.",
"dependencies": {
"@strapi/generate-new": "4.6.1",
"@strapi/generate-new": "4.6.2",
"commander": "8.3.0",
"inquirer": "8.2.5"
},

View File

@ -1,6 +1,6 @@
{
"name": "create-strapi-starter",
"version": "4.6.1",
"version": "4.6.2",
"description": "Generate a new Strapi application.",
"keywords": [
"create-strapi-starter",
@ -38,7 +38,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
"@strapi/generate-new": "4.6.1",
"@strapi/generate-new": "4.6.2",
"chalk": "4.1.1",
"ci-info": "3.5.0",
"commander": "8.3.0",

View File

@ -0,0 +1,83 @@
import React from 'react';
import styled from 'styled-components';
import { useIntl } from 'react-intl';
import { useTracking, pxToRem } from '@strapi/helper-plugin';
import { Box, Flex, Typography } from '@strapi/design-system';
import cloudIconBackgroundImage from './assets/strapi-cloud-background.png';
import cloudIcon from './assets/strapi-cloud-icon.svg';
import cloudFlagsImage from './assets/strapi-cloud-flags.svg';
const BlockLink = styled.a`
text-decoration: none;
`;
const CloudCustomWrapper = styled(Box)`
background-image: url(${({ backgroundImage }) => backgroundImage});
`;
const CloudIconWrapper = styled(Flex)`
background: rgba(255, 255, 255, 0.3);
`;
const CloudBox = () => {
const { formatMessage } = useIntl();
const { trackUsage } = useTracking();
return (
<BlockLink
href="https://cloud.strapi.io"
target="_blank"
rel="noopener noreferrer nofollow"
onClick={() => {
trackUsage('didClickOnTryStrapiCloudSection');
}}
>
<Flex
shadow="tableShadow"
hasRadius
padding={6}
background="neutral0"
position="relative"
gap={6}
>
<CloudCustomWrapper backgroundImage={cloudIconBackgroundImage} hasRadius padding={3}>
<CloudIconWrapper
width={pxToRem(32)}
height={pxToRem(32)}
justifyContent="center"
hasRadius
alignItems="center"
>
<img
src={cloudIcon}
alt={formatMessage({
id: 'app.components.BlockLink.cloud',
defaultMessage: 'Strapi Cloud',
})}
/>
</CloudIconWrapper>
</CloudCustomWrapper>
<Flex gap={1} direction="column" alignItems="start">
<Flex>
<Typography fontWeight="semiBold" variant="pi">
{formatMessage({
id: 'app.components.BlockLink.cloud',
defaultMessage: 'Strapi Cloud',
})}
</Typography>
</Flex>
<Typography textColor="neutral600">
{formatMessage({
id: 'app.components.BlockLink.cloud.content',
defaultMessage:
'A fully composable, and collaborative platform to boost your team velocity.',
})}
</Typography>
<Box src={cloudFlagsImage} position="absolute" top={0} right={0} as="img" />
</Flex>
</Flex>
</BlockLink>
);
};
export default CloudBox;

View File

@ -4,6 +4,7 @@ import { useIntl } from 'react-intl';
import { ContentBox, useTracking } from '@strapi/helper-plugin';
import { Stack } from '@strapi/design-system';
import { InformationSquare, CodeSquare, PlaySquare, FeatherSquare } from '@strapi/icons';
import CloudBox from './CloudBox';
const BlockLink = styled.a`
text-decoration: none;
@ -19,6 +20,7 @@ const ContentBlocks = () => {
return (
<Stack spacing={5}>
<CloudBox />
<BlockLink
href="https://strapi.io/resource-center"
target="_blank"

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.6 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="15" fill="none"><path fill="#fff" fill-rule="evenodd" d="M4.39453 13.8298C1.93859 13.6455 0 11.468 0 8.80884 0 6.0289 2.11876 3.7753 4.73238 3.7753c.46775 0 .91964.07218 1.34638.20664C7.21234 1.62909 9.66469 0 12.5073 0c2.5102 0 4.7161 1.27036 5.9782 3.18766a4.54297 4.54297 0 0 1 .6132-.04144C21.8056 3.14622 24 5.54066 24 8.49436c0 2.89194-2.1036 5.24784-4.7323 5.34504v.0031l-1.8948.278a38.18054 38.18054 0 0 1-11.08354 0l-1.89483-.278v-.0127Z" clip-rule="evenodd"/></svg>

After

Width:  |  Height:  |  Size: 534 B

View File

@ -60,6 +60,7 @@ describe('Homepage', () => {
});
test.each([
'strapi cloud a fully composable, and collaborative platform to boost your team velocity.',
'documentation discover the essential concepts, guides and instructions.',
'code example learn by using ready-made starters for your projects.',
'tutorials follow step-by-step instructions to use and customize strapi.',

View File

@ -2,8 +2,7 @@ import React from 'react';
import PropTypes from 'prop-types';
import { useIntl } from 'react-intl';
import { usePersistentState } from '@strapi/helper-plugin';
import { Select, Option } from '@strapi/design-system/Select';
import { Typography } from '@strapi/design-system/Typography';
import { Select, Option, Typography } from '@strapi/design-system';
import { getDateOfExpiration } from '../../../pages/ApiTokens/EditView/utils';
const LifeSpanInput = ({ token, errors, values, onChange, disabled }) => {

View File

@ -1,8 +1,7 @@
import React from 'react';
import PropTypes from 'prop-types';
import { useIntl } from 'react-intl';
import { Select, Option } from '@strapi/design-system/Select';
import { Typography } from '@strapi/design-system/Typography';
import { Select, Option, Typography } from '@strapi/design-system';
import { getDateOfExpiration } from '../../../pages/ApiTokens/EditView/utils';
const LifeSpanInput = ({ token, errors, values, onChange, isCreating }) => {

View File

@ -1,8 +1,8 @@
import React, { useState } from 'react';
import PropTypes from 'prop-types';
import { useIntl } from 'react-intl';
import { Button } from '@strapi/design-system/Button';
import Refresh from '@strapi/icons/Refresh';
import { Button } from '@strapi/design-system';
import { Refresh } from '@strapi/icons';
import { ConfirmDialog } from '@strapi/helper-plugin';
import { useRegenerate } from '../../../../../hooks';

View File

@ -1,20 +1,25 @@
import React from 'react';
import React, { useState } from 'react';
import { Trash } from '@strapi/icons';
import { IconButton, Box } from '@strapi/design-system';
import { stopPropagation, useTracking } from '@strapi/helper-plugin';
import { useTracking, ConfirmDialog } from '@strapi/helper-plugin';
import { useIntl } from 'react-intl';
import PropTypes from 'prop-types';
const DeleteButton = ({ tokenName, onClickDelete }) => {
const { formatMessage } = useIntl();
const { trackUsage } = useTracking(); // TODO: Track different types of tokens
const [showConfirmDialog, setShowConfirmDialog] = useState(false);
const handleClickDelete = () => {
setShowConfirmDialog(false);
trackUsage('willDeleteToken');
onClickDelete();
};
return (
<Box paddingLeft={1} {...stopPropagation}>
<Box paddingLeft={1} onClick={(e) => e.stopPropagation()}>
<IconButton
onClick={() => {
trackUsage('willDeleteToken');
onClickDelete();
setShowConfirmDialog(true);
}}
label={formatMessage(
{
@ -27,6 +32,11 @@ const DeleteButton = ({ tokenName, onClickDelete }) => {
noBorder
icon={<Trash />}
/>
<ConfirmDialog
onToggleDialog={() => setShowConfirmDialog(false)}
onConfirm={handleClickDelete}
isOpen={showConfirmDialog}
/>
</Box>
);
};

View File

@ -0,0 +1,61 @@
import React from 'react';
import { ThemeProvider, lightTheme } from '@strapi/design-system';
import { act, fireEvent, render } from '@testing-library/react';
import { IntlProvider } from 'react-intl';
import { NotificationsProvider } from '@strapi/helper-plugin';
import DeleteButton from '../index';
jest.mock('@strapi/helper-plugin', () => ({
...jest.requireActual('@strapi/helper-plugin'),
useTracking: jest.fn(() => ({ trackUsage: jest.fn() })),
}));
function ComponentToTest(props) {
return (
<IntlProvider locale="en" messages={{}}>
<ThemeProvider theme={lightTheme}>
<NotificationsProvider toggleNotification={() => {}}>
<DeleteButton tokenName="test" onClickDelete={() => {}} {...props} />
</NotificationsProvider>
</ThemeProvider>
</IntlProvider>
);
}
const setup = (props = { onClickDelete: jest.fn() }) => {
return render(<ComponentToTest {...props} />);
};
describe('DeleteButton', () => {
afterEach(() => {
jest.clearAllMocks();
});
it('show confirmation delete dialog when the delete button is clicked', () => {
const { queryByText, getByRole } = setup();
fireEvent.click(getByRole('button', { name: 'Delete test' }));
expect(queryByText('Are you sure you want to delete this?')).toBeInTheDocument();
});
it('closes the modal when you click on Cancel button', () => {
const { queryByText, getByText, getByRole } = setup();
fireEvent.click(getByRole('button', { name: 'Delete test' }));
act(() => {
fireEvent.click(getByText('Cancel'));
});
expect(queryByText('Are you sure you want to delete this?')).not.toBeInTheDocument();
});
it('trigger the onClickDelete function when you click on the Confirm button', () => {
const spy = jest.fn();
const { getByRole, getByText } = setup({ onClickDelete: spy });
fireEvent.click(getByRole('button', { name: 'Delete test' }));
fireEvent.click(getByText('Confirm'));
expect(spy).toBeCalledTimes(1);
});
});

View File

@ -1,9 +1,7 @@
import React from 'react';
import { useHistory } from 'react-router-dom';
import PropTypes from 'prop-types';
import { Typography } from '@strapi/design-system/Typography';
import { Tbody, Tr, Td } from '@strapi/design-system/Table';
import { Flex } from '@strapi/design-system/Flex';
import { Typography, Flex, Tbody, Tr, Td } from '@strapi/design-system';
import {
RelativeTime,
onRowClick,

View File

@ -1,7 +1,7 @@
import React from 'react';
import PropTypes from 'prop-types';
import { useIntl } from 'react-intl';
import { Textarea } from '@strapi/design-system/Textarea';
import { Textarea } from '@strapi/design-system';
const TokenDescription = ({ errors, values, onChange, canEditInputs }) => {
const { formatMessage } = useIntl();

View File

@ -1,7 +1,7 @@
import React from 'react';
import PropTypes from 'prop-types';
import { useIntl } from 'react-intl';
import { TextInput } from '@strapi/design-system/TextInput';
import { TextInput } from '@strapi/design-system';
const TokenName = ({ errors, values, onChange, canEditInputs }) => {
const { formatMessage } = useIntl();

View File

@ -2,7 +2,7 @@ import React from 'react';
import PropTypes from 'prop-types';
import { useIntl } from 'react-intl';
import { Select, Option } from '@strapi/design-system/Select';
import { Select, Option } from '@strapi/design-system';
const TokenTypeSelect = ({ errors, values, onChange, canEditInputs, options, label }) => {
const { formatMessage } = useIntl();

View File

@ -137,6 +137,29 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
color: #666687;
}
.c32 {
font-size: 0.875rem;
line-height: 1.43;
font-weight: 600;
color: #32324d;
}
.c34 {
font-size: 0.875rem;
line-height: 1.43;
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
color: #32324d;
}
.c35 {
font-size: 0.875rem;
line-height: 1.43;
color: #32324d;
}
.c2 {
background: #f6f6f9;
padding-top: 40px;
@ -165,7 +188,11 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
padding-left: 24px;
}
.c42 {
.c33 {
max-width: 15.625rem;
}
.c40 {
padding-left: 4px;
}
@ -201,6 +228,24 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
flex-direction: row;
}
.c36 {
-webkit-align-items: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-pack: end;
-webkit-justify-content: end;
-ms-flex-pack: end;
justify-content: end;
}
.c27 {
display: -webkit-box;
display: -webkit-flex;
@ -271,7 +316,7 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
width: 1px;
}
.c43 .c1 {
.c41 .c1 {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@ -282,23 +327,23 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
align-items: center;
}
.c43 .c5 {
.c41 .c5 {
color: #ffffff;
}
.c43[aria-disabled='true'] .c5 {
.c41[aria-disabled='true'] .c5 {
color: #666687;
}
.c43[aria-disabled='true']:active .c5 {
.c41[aria-disabled='true']:active .c5 {
color: #666687;
}
.c43:active .c5 {
.c41:active .c5 {
color: #4945ff;
}
.c43 .c5 {
.c41 .c5 {
color: #271fe0;
}
@ -382,6 +427,10 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
overflow-x: auto;
}
.c31 tr:last-of-type {
border-bottom: none;
}
.c22 {
border-bottom: 1px solid #eaeaef;
}
@ -431,10 +480,6 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
padding-right: 8px;
}
.c35 {
max-width: 15.625rem;
}
.c12 {
font-size: 0.75rem;
line-height: 1.33;
@ -442,53 +487,12 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
color: #32324d;
}
.c34 {
font-size: 0.875rem;
line-height: 1.43;
font-weight: 600;
color: #32324d;
}
.c36 {
font-size: 0.875rem;
line-height: 1.43;
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
color: #32324d;
}
.c37 {
font-size: 0.875rem;
line-height: 1.43;
color: #32324d;
}
.c41 {
.c39 {
font-size: 0.875rem;
line-height: 1.43;
color: #4945ff;
}
.c38 {
-webkit-align-items: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-pack: end;
-webkit-justify-content: end;
-ms-flex-pack: end;
justify-content: end;
}
.c7 {
display: -webkit-box;
display: -webkit-flex;
@ -547,7 +551,7 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
border: 2px solid #4945ff;
}
.c39 {
.c37 {
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
@ -562,15 +566,15 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
outline: none;
}
.c39 svg path {
.c37 svg path {
fill: #4945ff;
}
.c39 svg {
.c37 svg {
font-size: 0.625rem;
}
.c39:after {
.c37:after {
-webkit-transition-property: all;
transition-property: all;
-webkit-transition-duration: 0.2s;
@ -585,11 +589,11 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
border: 2px solid transparent;
}
.c39:focus-visible {
.c37:focus-visible {
outline: none;
}
.c39:focus-visible:after {
.c37:focus-visible:after {
border-radius: 8px;
content: '';
position: absolute;
@ -669,47 +673,12 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
fill: #ffffff;
}
.c31 tr:last-of-type {
border-bottom: none;
}
.c32 {
border-bottom: 1px solid #eaeaef;
}
.c32 td,
.c32 th {
padding: 16px;
}
.c32 td:first-of-type,
.c32 th:first-of-type {
padding: 0 4px;
}
.c32 th {
padding-top: 0;
padding-bottom: 0;
height: 3.5rem;
}
.c33 {
vertical-align: middle;
text-align: left;
color: #666687;
outline-offset: -4px;
}
.c33 input {
vertical-align: sub;
}
.c40 svg path {
.c38 svg path {
fill: #8e8ea9;
}
.c40:hover svg path,
.c40:focus svg path {
.c38:hover svg path,
.c38:focus svg path {
fill: #32324d;
}
@ -956,41 +925,41 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
>
<tr
aria-rowindex="2"
class="c9 c32"
class="c1 c23"
style="cursor: pointer;"
>
<td
aria-colindex="1"
class="c9 c33"
class="c1 c24"
role="gridcell"
tabindex="-1"
>
<span
class="c11 c34"
class="c5 c32"
>
My super token
</span>
</td>
<td
aria-colindex="2"
class="c9 c35 c33"
class="c1 c33 c24"
role="gridcell"
tabindex="-1"
>
<span
class="c11 c36"
class="c5 c34"
>
This describe my super token
</span>
</td>
<td
aria-colindex="3"
class="c9 c33"
class="c1 c24"
role="gridcell"
tabindex="-1"
>
<span
class="c11 c37"
class="c5 c35"
>
<time
datetime="2021-11-15T00:00:00.000Z"
@ -1002,27 +971,27 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
</td>
<td
aria-colindex="4"
class="c9 c33"
class="c1 c24"
role="gridcell"
tabindex="-1"
/>
<td
aria-colindex="5"
class="c9 c33"
class="c1 c24"
role="gridcell"
tabindex="-1"
>
<div
class="c9 c38"
class="c1 c36"
>
<a
class="c39 c40"
class="c37 c38"
href="/settings/api-tokens/1"
tabindex="-1"
title="Edit My super token"
>
<span
class="c11 c41"
class="c11 c39"
>
<svg
fill="none"
@ -1041,9 +1010,7 @@ describe('ADMIN | Pages | API TOKENS | ListPage', () => {
</span>
</a>
<div
aria-hidden="true"
class="c1 c42"
role="button"
class="c1 c40"
>
<span>
<button

View File

@ -1,11 +1,7 @@
import React from 'react';
import { useIntl } from 'react-intl';
import PropTypes from 'prop-types';
import { Box } from '@strapi/design-system/Box';
import { Grid, GridItem } from '@strapi/design-system/Grid';
import { Stack } from '@strapi/design-system/Stack';
import { Typography } from '@strapi/design-system/Typography';
import { Box, Grid, GridItem, Stack, Typography } from '@strapi/design-system';
import LifeSpanInput from '../../../../../components/Tokens/LifeSpanInput';
import TokenName from '../../../../../components/Tokens/TokenName';
import TokenDescription from '../../../../../components/Tokens/TokenDescription';

View File

@ -4,10 +4,8 @@ import {
LoadingIndicatorPage,
useFocusWhenNavigate,
} from '@strapi/helper-plugin';
import { HeaderLayout, ContentLayout } from '@strapi/design-system/Layout';
import { Main } from '@strapi/design-system/Main';
import { Button } from '@strapi/design-system/Button';
import Check from '@strapi/icons/Check';
import { HeaderLayout, ContentLayout, Main, Button } from '@strapi/design-system';
import { Check } from '@strapi/icons';
import { useIntl } from 'react-intl';
import PropTypes from 'prop-types';

View File

@ -13,9 +13,7 @@ import {
useRBAC,
useFetchClient,
} from '@strapi/helper-plugin';
import { Main } from '@strapi/design-system/Main';
import { Stack } from '@strapi/design-system/Stack';
import { ContentLayout } from '@strapi/design-system/Layout';
import { ContentLayout, Main, Stack } from '@strapi/design-system';
import { formatAPIErrors } from '../../../../../utils';
import { schema } from './utils';
import LoadingView from './components/LoadingView';

View File

@ -15,10 +15,8 @@ import {
LinkButton,
useFetchClient,
} from '@strapi/helper-plugin';
import { HeaderLayout, ContentLayout } from '@strapi/design-system/Layout';
import { Main } from '@strapi/design-system/Main';
import { Button } from '@strapi/design-system/Button';
import Plus from '@strapi/icons/Plus';
import { HeaderLayout, ContentLayout, Main, Button } from '@strapi/design-system';
import { Plus } from '@strapi/icons';
import adminPermissions from '../../../../../permissions';
import tableHeaders from './utils/tableHeaders';

View File

@ -116,16 +116,48 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
});
expect(container.firstChild).toMatchInlineSnapshot(`
.c26 {
border: 0;
-webkit-clip: rect(0 0 0 0);
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
.c6 {
font-weight: 600;
font-size: 2rem;
line-height: 1.25;
color: #32324d;
}
.c13 {
font-size: 1rem;
line-height: 1.5;
color: #666687;
}
.c25 {
font-weight: 600;
font-size: 0.6875rem;
line-height: 1.45;
text-transform: uppercase;
color: #666687;
}
.c32 {
font-size: 0.875rem;
line-height: 1.43;
font-weight: 600;
color: #32324d;
}
.c34 {
font-size: 0.875rem;
line-height: 1.43;
display: block;
white-space: nowrap;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
text-overflow: ellipsis;
color: #32324d;
}
.c35 {
font-size: 0.875rem;
line-height: 1.43;
color: #32324d;
}
.c2 {
@ -136,35 +168,31 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
padding-left: 56px;
}
.c9 {
padding-right: 8px;
}
.c12 {
.c14 {
padding-right: 56px;
padding-left: 56px;
}
.c13 {
.c15 {
background: #ffffff;
border-radius: 4px;
box-shadow: 0px 1px 4px rgba(33,33,52,0.1);
}
.c15 {
.c17 {
position: relative;
}
.c17 {
.c19 {
padding-right: 24px;
padding-left: 24px;
}
.c30 {
.c33 {
max-width: 15.625rem;
}
.c37 {
.c40 {
padding-left: 4px;
}
@ -200,7 +228,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
flex-direction: row;
}
.c33 {
.c36 {
-webkit-align-items: center;
-webkit-box-align: center;
-ms-flex-align: center;
@ -218,58 +246,248 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
justify-content: end;
}
.c6 {
font-weight: 600;
font-size: 2rem;
line-height: 1.25;
color: #32324d;
.c27 {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
cursor: pointer;
padding: 8px;
border-radius: 4px;
background: #ffffff;
border: 1px solid #dcdce4;
position: relative;
outline: none;
}
.c27 svg {
height: 12px;
width: 12px;
}
.c27 svg > g,
.c27 svg path {
fill: #ffffff;
}
.c27[aria-disabled='true'] {
pointer-events: none;
}
.c27:after {
-webkit-transition-property: all;
transition-property: all;
-webkit-transition-duration: 0.2s;
transition-duration: 0.2s;
border-radius: 8px;
content: '';
position: absolute;
top: -4px;
bottom: -4px;
left: -4px;
right: -4px;
border: 2px solid transparent;
}
.c27:focus-visible {
outline: none;
}
.c27:focus-visible:after {
border-radius: 8px;
content: '';
position: absolute;
top: -5px;
bottom: -5px;
left: -5px;
right: -5px;
border: 2px solid #4945ff;
}
.c29 {
border: 0;
-webkit-clip: rect(0 0 0 0);
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}
.c41 .c1 {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-align-items: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.c41 .c5 {
color: #ffffff;
}
.c41[aria-disabled='true'] .c5 {
color: #666687;
}
.c41[aria-disabled='true']:active .c5 {
color: #666687;
}
.c41:active .c5 {
color: #4945ff;
}
.c41 .c5 {
color: #271fe0;
}
.c28 {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-align-items: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
height: 2rem;
width: 2rem;
border: none;
}
.c28 svg > g,
.c28 svg path {
fill: #8e8ea9;
}
.c28:hover svg > g,
.c28:hover svg path {
fill: #666687;
}
.c28:active svg > g,
.c28:active svg path {
fill: #a5a5ba;
}
.c28[aria-disabled='true'] {
background-color: #eaeaef;
}
.c28[aria-disabled='true'] svg path {
fill: #666687;
}
.c0:focus-visible {
outline: none;
}
.c16 {
overflow: hidden;
border: 1px solid #eaeaef;
}
.c21 {
width: 100%;
white-space: nowrap;
}
.c18:before {
background: linear-gradient(90deg,#c0c0cf 0%,rgba(0,0,0,0) 100%);
opacity: 0.2;
position: absolute;
height: 100%;
box-shadow: 0px 1px 4px rgba(33,33,52,0.1);
width: 8px;
left: 0;
}
.c18:after {
background: linear-gradient(270deg,#c0c0cf 0%,rgba(0,0,0,0) 100%);
opacity: 0.2;
position: absolute;
height: 100%;
box-shadow: 0px 1px 4px rgba(33,33,52,0.1);
width: 8px;
right: 0;
top: 0;
}
.c20 {
overflow-x: auto;
}
.c31 tr:last-of-type {
border-bottom: none;
}
.c22 {
border-bottom: 1px solid #eaeaef;
}
.c23 {
border-bottom: 1px solid #eaeaef;
}
.c23 td,
.c23 th {
padding: 16px;
}
.c23 td:first-of-type,
.c23 th:first-of-type {
padding: 0 4px;
}
.c23 th {
padding-top: 0;
padding-bottom: 0;
height: 3.5rem;
}
.c24 {
vertical-align: middle;
text-align: left;
color: #666687;
outline-offset: -4px;
}
.c24 input {
vertical-align: sub;
}
.c26 svg {
height: 0.25rem;
}
.c30 {
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
transform: rotate(180deg);
}
.c10 {
padding-right: 8px;
}
.c12 {
font-size: 0.75rem;
line-height: 1.33;
font-weight: 600;
color: #32324d;
}
.c11 {
font-size: 1rem;
line-height: 1.5;
color: #666687;
}
.c23 {
font-weight: 600;
font-size: 0.6875rem;
line-height: 1.45;
text-transform: uppercase;
color: #666687;
}
.c29 {
font-size: 0.875rem;
line-height: 1.43;
font-weight: 600;
color: #32324d;
}
.c31 {
font-size: 0.875rem;
line-height: 1.43;
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
color: #32324d;
}
.c32 {
font-size: 0.875rem;
line-height: 1.43;
color: #32324d;
}
.c36 {
.c39 {
font-size: 0.875rem;
line-height: 1.43;
color: #4945ff;
@ -333,157 +551,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
border: 2px solid #4945ff;
}
.c38 .c1 {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-align-items: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.c38 .c5 {
color: #ffffff;
}
.c38[aria-disabled='true'] .c5 {
color: #666687;
}
.c38[aria-disabled='true']:active .c5 {
color: #666687;
}
.c38:active .c5 {
color: #4945ff;
}
.c38 .c5 {
color: #271fe0;
}
.c14 {
overflow: hidden;
border: 1px solid #eaeaef;
}
.c19 {
width: 100%;
white-space: nowrap;
}
.c16:before {
background: linear-gradient(90deg,#c0c0cf 0%,rgba(0,0,0,0) 100%);
opacity: 0.2;
position: absolute;
height: 100%;
box-shadow: 0px 1px 4px rgba(33,33,52,0.1);
width: 8px;
left: 0;
}
.c16:after {
background: linear-gradient(270deg,#c0c0cf 0%,rgba(0,0,0,0) 100%);
opacity: 0.2;
position: absolute;
height: 100%;
box-shadow: 0px 1px 4px rgba(33,33,52,0.1);
width: 8px;
right: 0;
top: 0;
}
.c18 {
overflow-x: auto;
}
.c28 tr:last-of-type {
border-bottom: none;
}
.c20 {
border-bottom: 1px solid #eaeaef;
}
.c21 {
border-bottom: 1px solid #eaeaef;
}
.c21 td,
.c21 th {
padding: 16px;
}
.c21 td:first-of-type,
.c21 th:first-of-type {
padding: 0 4px;
}
.c21 th {
padding-top: 0;
padding-bottom: 0;
height: 3.5rem;
}
.c22 {
vertical-align: middle;
text-align: left;
color: #666687;
outline-offset: -4px;
}
.c22 input {
vertical-align: sub;
}
.c24 svg {
height: 0.25rem;
}
.c25 {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-align-items: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
height: 2rem;
width: 2rem;
border: none;
}
.c25 svg > g,
.c25 svg path {
fill: #8e8ea9;
}
.c25:hover svg > g,
.c25:hover svg path {
fill: #666687;
}
.c25:active svg > g,
.c25:active svg path {
fill: #a5a5ba;
}
.c25[aria-disabled='true'] {
background-color: #eaeaef;
}
.c25[aria-disabled='true'] svg path {
fill: #666687;
}
.c34 {
.c37 {
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
@ -498,15 +566,15 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
outline: none;
}
.c34 svg path {
.c37 svg path {
fill: #4945ff;
}
.c34 svg {
.c37 svg {
font-size: 0.625rem;
}
.c34:after {
.c37:after {
-webkit-transition-property: all;
transition-property: all;
-webkit-transition-duration: 0.2s;
@ -521,11 +589,11 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
border: 2px solid transparent;
}
.c34:focus-visible {
.c37:focus-visible {
outline: none;
}
.c34:focus-visible:after {
.c37:focus-visible:after {
border-radius: 8px;
content: '';
position: absolute;
@ -549,7 +617,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
text-decoration: none;
}
.c8 .c1 {
.c8 .c9 {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@ -560,7 +628,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
align-items: center;
}
.c8 .c5 {
.c8 .c11 {
color: #ffffff;
}
@ -569,7 +637,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
background: #eaeaef;
}
.c8[aria-disabled='true'] .c5 {
.c8[aria-disabled='true'] .c11 {
color: #666687;
}
@ -582,7 +650,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
background: #eaeaef;
}
.c8[aria-disabled='true']:active .c5 {
.c8[aria-disabled='true']:active .c11 {
color: #666687;
}
@ -605,22 +673,12 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
fill: #ffffff;
}
.c27 {
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
transform: rotate(180deg);
}
.c0:focus-visible {
outline: none;
}
.c35 svg path {
.c38 svg path {
fill: #8e8ea9;
}
.c35:hover svg path,
.c35:focus svg path {
.c38:hover svg path,
.c38:focus svg path {
fill: #32324d;
}
@ -659,7 +717,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
>
<div
aria-hidden="true"
class="c1 c9"
class="c9 c10"
>
<svg
fill="none"
@ -675,47 +733,47 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
</svg>
</div>
<span
class="c5 c10"
class="c11 c12"
>
Create new Transfer Token
</span>
</a>
</div>
<p
class="c5 c11"
class="c5 c13"
>
"List of generated transfer tokens"
</p>
</div>
</div>
<div
class="c1 c12"
class="c1 c14"
>
<div
class="c1 c13 c14"
class="c1 c15 c16"
>
<div
class="c1 c15 c16"
class="c1 c17 c18"
>
<div
class="c1 c17 c18"
class="c1 c19 c20"
>
<table
aria-colcount="5"
aria-rowcount="2"
class="c19"
class="c21"
role="grid"
>
<thead
class="c20"
class="c22"
>
<tr
aria-rowindex="1"
class="c1 c21"
class="c1 c23"
>
<th
aria-colindex="1"
class="c1 c22"
class="c1 c24"
role="gridcell"
tabindex="0"
>
@ -725,7 +783,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
<span>
<span
aria-labelledby="0"
class="c5 c23"
class="c5 c25"
label="Name"
tabindex="-1"
>
@ -733,24 +791,24 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
</span>
</span>
<span
class="c24"
class="c26"
>
<span>
<button
aria-disabled="false"
aria-labelledby="1"
class="c7 c25"
class="c27 c28"
tabindex="-1"
type="button"
>
<span
class="c26"
class="c29"
>
Sort on Name
</span>
<svg
aria-hidden="true"
class="c27"
class="c30"
fill="none"
focusable="false"
height="1em"
@ -772,7 +830,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
</th>
<th
aria-colindex="2"
class="c1 c22"
class="c1 c24"
role="gridcell"
>
<div
@ -781,7 +839,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
<span>
<span
aria-labelledby="2"
class="c5 c23"
class="c5 c25"
label="Description"
tabindex="-1"
>
@ -789,13 +847,13 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
</span>
</span>
<span
class="c24"
class="c26"
/>
</div>
</th>
<th
aria-colindex="3"
class="c1 c22"
class="c1 c24"
role="gridcell"
>
<div
@ -804,7 +862,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
<span>
<span
aria-labelledby="3"
class="c5 c23"
class="c5 c25"
label="Created at"
tabindex="-1"
>
@ -812,13 +870,13 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
</span>
</span>
<span
class="c24"
class="c26"
/>
</div>
</th>
<th
aria-colindex="4"
class="c1 c22"
class="c1 c24"
role="gridcell"
>
<div
@ -827,7 +885,7 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
<span>
<span
aria-labelledby="4"
class="c5 c23"
class="c5 c25"
label="Last used"
tabindex="-1"
>
@ -835,13 +893,13 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
</span>
</span>
<span
class="c24"
class="c26"
/>
</div>
</th>
<th
aria-colindex="5"
class="c1 c22"
class="c1 c24"
role="gridcell"
tabindex="-1"
>
@ -849,59 +907,59 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
class="c1 c4"
>
<div
class="c26"
class="c29"
>
Actions
</div>
<span
class="c24"
class="c26"
/>
</div>
</th>
</tr>
</thead>
<tbody
class="c28"
class="c31"
entriestodelete=""
headers="[object Object],[object Object],[object Object],[object Object]"
>
<tr
aria-rowindex="2"
class="c1 c21"
class="c1 c23"
style="cursor: pointer;"
>
<td
aria-colindex="1"
class="c1 c22"
class="c1 c24"
role="gridcell"
tabindex="-1"
>
<span
class="c5 c29"
class="c5 c32"
>
My super token
</span>
</td>
<td
aria-colindex="2"
class="c1 c30 c22"
class="c1 c33 c24"
role="gridcell"
tabindex="-1"
>
<span
class="c5 c31"
class="c5 c34"
>
This describe my super token
</span>
</td>
<td
aria-colindex="3"
class="c1 c22"
class="c1 c24"
role="gridcell"
tabindex="-1"
>
<span
class="c5 c32"
class="c5 c35"
>
<time
datetime="2021-11-15T00:00:00.000Z"
@ -913,27 +971,27 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
</td>
<td
aria-colindex="4"
class="c1 c22"
class="c1 c24"
role="gridcell"
tabindex="-1"
/>
<td
aria-colindex="5"
class="c1 c22"
class="c1 c24"
role="gridcell"
tabindex="-1"
>
<div
class="c1 c33"
class="c1 c36"
>
<a
class="c34 c35"
class="c37 c38"
href="/settings/transfer-tokens/1"
tabindex="-1"
title="Edit My super token"
>
<span
class="c5 c36"
class="c11 c39"
>
<svg
fill="none"
@ -952,21 +1010,19 @@ describe('ADMIN | Pages | TRANSFER TOKENS | ListPage', () => {
</span>
</a>
<div
aria-hidden="true"
class="c1 c37"
role="button"
class="c1 c40"
>
<span>
<button
aria-disabled="false"
aria-labelledby="5"
class="c7 c25"
class="c27 c28"
name="delete"
tabindex="-1"
type="button"
>
<span
class="c26"
class="c29"
>
Delete My super token
</span>

View File

@ -361,6 +361,8 @@
"app.components.BlockLink.documentation.content": "Discover the essential concepts, guides and instructions.",
"app.components.BlockLink.tutorial": "Tutorials",
"app.components.BlockLink.tutorial.content": "Follow step-by-step instructions to use and customize Strapi.",
"app.components.BlockLink.cloud": "Strapi Cloud",
"app.components.BlockLink.cloud.content": "A fully composable, and collaborative platform to boost your team velocity.",
"app.components.Button.cancel": "Cancel",
"app.components.Button.confirm": "Confirm",
"app.components.Button.reset": "Reset",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/admin",
"version": "4.6.1",
"version": "4.6.2",
"description": "Strapi Admin",
"repository": {
"type": "git",
@ -46,15 +46,15 @@
"@casl/ability": "^5.4.3",
"@fingerprintjs/fingerprintjs": "3.3.6",
"@pmmmwh/react-refresh-webpack-plugin": "0.5.10",
"@strapi/babel-plugin-switch-ee-ce": "4.6.1",
"@strapi/data-transfer": "4.6.1",
"@strapi/babel-plugin-switch-ee-ce": "4.6.2",
"@strapi/data-transfer": "4.6.2",
"@strapi/design-system": "1.6.3",
"@strapi/helper-plugin": "4.6.1",
"@strapi/helper-plugin": "4.6.2",
"@strapi/icons": "1.6.3",
"@strapi/permissions": "4.6.1",
"@strapi/provider-audit-logs-local": "4.6.1",
"@strapi/typescript-utils": "4.6.1",
"@strapi/utils": "4.6.1",
"@strapi/permissions": "4.6.2",
"@strapi/provider-audit-logs-local": "4.6.2",
"@strapi/typescript-utils": "4.6.2",
"@strapi/utils": "4.6.2",
"axios": "1.2.2",
"babel-loader": "^9.1.2",
"babel-plugin-styled-components": "2.0.2",
@ -165,4 +165,4 @@
}
}
}
}
}

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-content-manager",
"version": "4.6.1",
"version": "4.6.2",
"description": "A powerful UI to easily manage your data.",
"repository": {
"type": "git",
@ -24,7 +24,7 @@
},
"dependencies": {
"@sindresorhus/slugify": "1.1.0",
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"lodash": "4.17.21"
},
"engines": {

View File

@ -11,41 +11,41 @@ import {
Email,
Enumeration,
Json,
LongDescription,
RichText,
Media,
Password,
Relation,
SingleType,
Text,
Uid,
Numbers,
Number,
} from '@strapi/icons';
import { pxToRem, useCustomFields } from '@strapi/helper-plugin';
const iconByTypes = {
biginteger: Numbers,
biginteger: Number,
boolean: Boolean,
collectionType: CollectionType,
component: Component,
contentType: CollectionType,
date: Date,
datetime: Date,
decimal: Numbers,
decimal: Number,
dynamiczone: DynamicZone,
email: Email,
enum: Enumeration,
enumeration: Enumeration,
file: Media,
files: Media,
float: Numbers,
integer: Numbers,
float: Number,
integer: Number,
json: Json,
JSON: Json,
media: Media,
number: Numbers,
number: Number,
password: Password,
relation: Relation,
richtext: LongDescription,
richtext: RichText,
singleType: SingleType,
string: Text,
text: Text,

View File

@ -455,6 +455,35 @@ exports[`<AttributeOptions /> renders and matches the snapshot 1`] = `
<div
class="c20"
>
<div
aria-hidden="true"
class="c21 c22"
>
<svg
class=""
fill="none"
height="1em"
viewBox="0 0 32 24"
width="1em"
xmlns="http://www.w3.org/2000/svg"
>
<rect
fill="#EAF5FF"
height="23"
rx="2.5"
stroke="#B8E1FF"
width="31"
x="0.5"
y="0.5"
/>
<path
clip-rule="evenodd"
d="M19.286 9.286v-.857a.397.397 0 00-.138-.302A.465.465 0 0018.82 8h-8.357a.465.465 0 00-.326.127.397.397 0 00-.138.302v.857c0 .116.046.216.138.301.092.085.2.127.326.127h8.357a.465.465 0 00.327-.127.397.397 0 00.138-.301zm2.785 2.713v.857a.397.397 0 01-.137.301.465.465 0 01-.327.128H10.464a.465.465 0 01-.326-.128.397.397 0 01-.138-.301v-.857c0-.116.046-.217.138-.302a.465.465 0 01.326-.127h11.143c.126 0 .235.043.327.127a.397.397 0 01.137.302zm-1.857 3.574v.857a.397.397 0 01-.137.302.465.465 0 01-.327.127h-9.286a.465.465 0 01-.326-.127.397.397 0 01-.138-.302v-.857c0-.116.046-.216.138-.301a.465.465 0 01.326-.127h9.286c.126 0 .235.042.326.127a.397.397 0 01.138.301z"
fill="#0C75AF"
fill-rule="evenodd"
/>
</svg>
</div>
<div
class="c23"
>
@ -568,6 +597,33 @@ exports[`<AttributeOptions /> renders and matches the snapshot 1`] = `
<div
class="c20"
>
<div
aria-hidden="true"
class="c21 c22"
>
<svg
class=""
fill="none"
height="1em"
viewBox="0 0 32 24"
width="1em"
xmlns="http://www.w3.org/2000/svg"
>
<rect
fill="#FCECEA"
height="23"
rx="2.5"
stroke="#F5C0B8"
width="31"
x="0.5"
y="0.5"
/>
<path
d="M9.815 16h1.475V8.954H9.82L8 10.22v1.328l1.729-1.201h.087V16zm3.394 0h5.083v-1.187h-3.106v-.112l1.304-1.216c1.284-1.186 1.7-1.85 1.7-2.651v-.015c0-1.215-1.016-2.046-2.466-2.046-1.543 0-2.598.928-2.598 2.28l.005.02h1.362v-.024c0-.67.474-1.128 1.162-1.128.674 0 1.084.42 1.084 1.02v.015c0 .493-.268.85-1.26 1.812l-2.27 2.24V16zm9.067.156c1.646 0 2.744-.864 2.744-2.143v-.01c0-.957-.683-1.563-1.733-1.66v-.03c.825-.17 1.47-.742 1.47-1.62v-.01c0-1.123-.977-1.885-2.49-1.885-1.48 0-2.471.82-2.574 2.08l-.005.059h1.358l.005-.044c.058-.586.522-.962 1.216-.962.693 0 1.098.361 1.098.947v.01c0 .571-.478.962-1.22.962h-.787v1.05h.806c.855 0 1.357.37 1.357 1.044v.01c0 .596-.493 1.016-1.245 1.016-.761 0-1.264-.39-1.328-.938l-.005-.053h-1.41l.004.063c.098 1.26 1.148 2.114 2.74 2.114z"
fill="#D02B20"
/>
</svg>
</div>
<div
class="c23"
>

View File

@ -4115,6 +4115,33 @@ exports[`<ListView /> renders and matches the snapshot 1`] = `
<div
class="c0 c30 c8 c31"
>
<div
aria-hidden="true"
class="c0 c32 c33"
>
<svg
class="c0 "
fill="none"
height="1em"
viewBox="0 0 32 24"
width="1em"
xmlns="http://www.w3.org/2000/svg"
>
<rect
fill="#FCECEA"
height="23"
rx="2.5"
stroke="#F5C0B8"
width="31"
x="0.5"
y="0.5"
/>
<path
d="M9.815 16h1.475V8.954H9.82L8 10.22v1.328l1.729-1.201h.087V16zm3.394 0h5.083v-1.187h-3.106v-.112l1.304-1.216c1.284-1.186 1.7-1.85 1.7-2.651v-.015c0-1.215-1.016-2.046-2.466-2.046-1.543 0-2.598.928-2.598 2.28l.005.02h1.362v-.024c0-.67.474-1.128 1.162-1.128.674 0 1.084.42 1.084 1.02v.015c0 .493-.268.85-1.26 1.812l-2.27 2.24V16zm9.067.156c1.646 0 2.744-.864 2.744-2.143v-.01c0-.957-.683-1.563-1.733-1.66v-.03c.825-.17 1.47-.742 1.47-1.62v-.01c0-1.123-.977-1.885-2.49-1.885-1.48 0-2.471.82-2.574 2.08l-.005.059h1.358l.005-.044c.058-.586.522-.962 1.216-.962.693 0 1.098.361 1.098.947v.01c0 .571-.478.962-1.22.962h-.787v1.05h.806c.855 0 1.357.37 1.357 1.044v.01c0 .596-.493 1.016-1.245 1.016-.761 0-1.264-.39-1.328-.938l-.005-.053h-1.41l.004.063c.098 1.26 1.148 2.114 2.74 2.114z"
fill="#D02B20"
/>
</svg>
</div>
<span
class="c9 c34"
>
@ -4584,6 +4611,33 @@ exports[`<ListView /> renders and matches the snapshot 1`] = `
<div
class="c0 c30 c8 c31"
>
<div
aria-hidden="true"
class="c0 c32 c33"
>
<svg
class="c0 "
fill="none"
height="1em"
viewBox="0 0 32 24"
width="1em"
xmlns="http://www.w3.org/2000/svg"
>
<rect
fill="#FCECEA"
height="23"
rx="2.5"
stroke="#F5C0B8"
width="31"
x="0.5"
y="0.5"
/>
<path
d="M9.815 16h1.475V8.954H9.82L8 10.22v1.328l1.729-1.201h.087V16zm3.394 0h5.083v-1.187h-3.106v-.112l1.304-1.216c1.284-1.186 1.7-1.85 1.7-2.651v-.015c0-1.215-1.016-2.046-2.466-2.046-1.543 0-2.598.928-2.598 2.28l.005.02h1.362v-.024c0-.67.474-1.128 1.162-1.128.674 0 1.084.42 1.084 1.02v.015c0 .493-.268.85-1.26 1.812l-2.27 2.24V16zm9.067.156c1.646 0 2.744-.864 2.744-2.143v-.01c0-.957-.683-1.563-1.733-1.66v-.03c.825-.17 1.47-.742 1.47-1.62v-.01c0-1.123-.977-1.885-2.49-1.885-1.48 0-2.471.82-2.574 2.08l-.005.059h1.358l.005-.044c.058-.586.522-.962 1.216-.962.693 0 1.098.361 1.098.947v.01c0 .571-.478.962-1.22.962h-.787v1.05h.806c.855 0 1.357.37 1.357 1.044v.01c0 .596-.493 1.016-1.245 1.016-.761 0-1.264-.39-1.328-.938l-.005-.053h-1.41l.004.063c.098 1.26 1.148 2.114 2.74 2.114z"
fill="#D02B20"
/>
</svg>
</div>
<span
class="c9 c34"
>
@ -4847,6 +4901,35 @@ exports[`<ListView /> renders and matches the snapshot 1`] = `
<div
class="c0 c30 c8 c31"
>
<div
aria-hidden="true"
class="c0 c32 c33"
>
<svg
class="c0 "
fill="none"
height="1em"
viewBox="0 0 32 24"
width="1em"
xmlns="http://www.w3.org/2000/svg"
>
<rect
fill="#EAF5FF"
height="23"
rx="2.5"
stroke="#B8E1FF"
width="31"
x="0.5"
y="0.5"
/>
<path
clip-rule="evenodd"
d="M19.286 9.286v-.857a.397.397 0 00-.138-.302A.465.465 0 0018.82 8h-8.357a.465.465 0 00-.326.127.397.397 0 00-.138.302v.857c0 .116.046.216.138.301.092.085.2.127.326.127h8.357a.465.465 0 00.327-.127.397.397 0 00.138-.301zm2.785 2.713v.857a.397.397 0 01-.137.301.465.465 0 01-.327.128H10.464a.465.465 0 01-.326-.128.397.397 0 01-.138-.301v-.857c0-.116.046-.217.138-.302a.465.465 0 01.326-.127h11.143c.126 0 .235.043.327.127a.397.397 0 01.137.302zm-1.857 3.574v.857a.397.397 0 01-.137.302.465.465 0 01-.327.127h-9.286a.465.465 0 01-.326-.127.397.397 0 01-.138-.302v-.857c0-.116.046-.216.138-.301a.465.465 0 01.326-.127h9.286c.126 0 .235.042.326.127a.397.397 0 01.138.301z"
fill="#0C75AF"
fill-rule="evenodd"
/>
</svg>
</div>
<span
class="c9 c34"
>
@ -5917,6 +6000,33 @@ exports[`<ListView /> renders and matches the snapshot 1`] = `
<div
class="c0 c30 c8 c31"
>
<div
aria-hidden="true"
class="c0 c32 c33"
>
<svg
class="c0 "
fill="none"
height="1em"
viewBox="0 0 32 24"
width="1em"
xmlns="http://www.w3.org/2000/svg"
>
<rect
fill="#FCECEA"
height="23"
rx="2.5"
stroke="#F5C0B8"
width="31"
x="0.5"
y="0.5"
/>
<path
d="M9.815 16h1.475V8.954H9.82L8 10.22v1.328l1.729-1.201h.087V16zm3.394 0h5.083v-1.187h-3.106v-.112l1.304-1.216c1.284-1.186 1.7-1.85 1.7-2.651v-.015c0-1.215-1.016-2.046-2.466-2.046-1.543 0-2.598.928-2.598 2.28l.005.02h1.362v-.024c0-.67.474-1.128 1.162-1.128.674 0 1.084.42 1.084 1.02v.015c0 .493-.268.85-1.26 1.812l-2.27 2.24V16zm9.067.156c1.646 0 2.744-.864 2.744-2.143v-.01c0-.957-.683-1.563-1.733-1.66v-.03c.825-.17 1.47-.742 1.47-1.62v-.01c0-1.123-.977-1.885-2.49-1.885-1.48 0-2.471.82-2.574 2.08l-.005.059h1.358l.005-.044c.058-.586.522-.962 1.216-.962.693 0 1.098.361 1.098.947v.01c0 .571-.478.962-1.22.962h-.787v1.05h.806c.855 0 1.357.37 1.357 1.044v.01c0 .596-.493 1.016-1.245 1.016-.761 0-1.264-.39-1.328-.938l-.005-.053h-1.41l.004.063c.098 1.26 1.148 2.114 2.74 2.114z"
fill="#D02B20"
/>
</svg>
</div>
<span
class="c9 c34"
>
@ -6180,6 +6290,35 @@ exports[`<ListView /> renders and matches the snapshot 1`] = `
<div
class="c0 c30 c8 c31"
>
<div
aria-hidden="true"
class="c0 c32 c33"
>
<svg
class="c0 "
fill="none"
height="1em"
viewBox="0 0 32 24"
width="1em"
xmlns="http://www.w3.org/2000/svg"
>
<rect
fill="#EAF5FF"
height="23"
rx="2.5"
stroke="#B8E1FF"
width="31"
x="0.5"
y="0.5"
/>
<path
clip-rule="evenodd"
d="M19.286 9.286v-.857a.397.397 0 00-.138-.302A.465.465 0 0018.82 8h-8.357a.465.465 0 00-.326.127.397.397 0 00-.138.302v.857c0 .116.046.216.138.301.092.085.2.127.326.127h8.357a.465.465 0 00.327-.127.397.397 0 00.138-.301zm2.785 2.713v.857a.397.397 0 01-.137.301.465.465 0 01-.327.128H10.464a.465.465 0 01-.326-.128.397.397 0 01-.138-.301v-.857c0-.116.046-.217.138-.302a.465.465 0 01.326-.127h11.143c.126 0 .235.043.327.127a.397.397 0 01.137.302zm-1.857 3.574v.857a.397.397 0 01-.137.302.465.465 0 01-.327.127h-9.286a.465.465 0 01-.326-.127.397.397 0 01-.138-.302v-.857c0-.116.046-.216.138-.301a.465.465 0 01.326-.127h9.286c.126 0 .235.042.326.127a.397.397 0 01.138.301z"
fill="#0C75AF"
fill-rule="evenodd"
/>
</svg>
</div>
<span
class="c9 c34"
>

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-content-type-builder",
"version": "4.6.1",
"version": "4.6.2",
"description": "Strapi plugin to create content type",
"repository": {
"type": "git",
@ -28,9 +28,9 @@
},
"dependencies": {
"@sindresorhus/slugify": "1.1.0",
"@strapi/generators": "4.6.1",
"@strapi/helper-plugin": "4.6.1",
"@strapi/utils": "4.6.1",
"@strapi/generators": "4.6.2",
"@strapi/helper-plugin": "4.6.2",
"@strapi/utils": "4.6.2",
"fs-extra": "10.0.0",
"lodash": "4.17.21",
"pluralize": "^8.0.0",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/data-transfer",
"version": "4.6.1",
"version": "4.6.2",
"description": "Data transfer capabilities for Strapi",
"keywords": [
"strapi",
@ -39,8 +39,8 @@
"lib": "./lib"
},
"dependencies": {
"@strapi/logger": "4.6.1",
"@strapi/strapi": "4.6.1",
"@strapi/logger": "4.6.2",
"@strapi/strapi": "4.6.2",
"chalk": "4.1.2",
"fs-extra": "10.0.0",
"lodash": "4.17.21",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/database",
"version": "4.6.1",
"version": "4.6.2",
"description": "Strapi's database layer",
"homepage": "https://strapi.io",
"bugs": {

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-email",
"version": "4.6.1",
"version": "4.6.2",
"description": "Easily configure your Strapi application to send emails.",
"repository": {
"type": "git",
@ -26,12 +26,12 @@
"test:front:watch:ce": "cross-env IS_EE=false jest --config ./jest.config.front.js --watchAll"
},
"dependencies": {
"@strapi/provider-email-sendmail": "4.6.1",
"@strapi/utils": "4.6.1",
"@strapi/provider-email-sendmail": "4.6.2",
"@strapi/utils": "4.6.2",
"lodash": "4.17.21"
},
"devDependencies": {
"@strapi/helper-plugin": "4.6.1",
"@strapi/helper-plugin": "4.6.2",
"@testing-library/react": "12.1.4"
},
"engines": {

View File

@ -5,6 +5,7 @@ import { Flex, Stack, Typography } from '@strapi/design-system';
const IconWrapper = styled(Flex)`
margin-right: ${({ theme }) => theme.spaces[6]};
svg {
width: ${32 / 16}rem;
height: ${32 / 16}rem;

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/helper-plugin",
"version": "4.6.1",
"version": "4.6.2",
"description": "Helper for Strapi plugins development",
"repository": {
"type": "git",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/permissions",
"version": "4.6.1",
"version": "4.6.2",
"description": "Strapi's permission layer.",
"repository": {
"type": "git",
@ -25,7 +25,7 @@
},
"dependencies": {
"@casl/ability": "5.4.4",
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"lodash": "4.17.21",
"sift": "16.0.0"
},

View File

@ -49,7 +49,6 @@ module.exports = async ({ buildDestDir, forceBuild = true, optimization, srcDir
})
.then(() => {
console.log('Admin UI built successfully');
process.exit(0);
})
.catch((err) => {
console.error(err);

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/strapi",
"version": "4.6.1",
"version": "4.6.2",
"description": "An open source headless CMS solution to create and manage your own API. It provides a powerful dashboard and features to make your life easier. Databases supported: MySQL, MariaDB, PostgreSQL, SQLite",
"keywords": [
"strapi",
@ -81,19 +81,19 @@
"dependencies": {
"@koa/cors": "3.4.3",
"@koa/router": "10.1.1",
"@strapi/admin": "4.6.1",
"@strapi/data-transfer": "4.6.1",
"@strapi/database": "4.6.1",
"@strapi/generate-new": "4.6.1",
"@strapi/generators": "4.6.1",
"@strapi/logger": "4.6.1",
"@strapi/permissions": "4.6.1",
"@strapi/plugin-content-manager": "4.6.1",
"@strapi/plugin-content-type-builder": "4.6.1",
"@strapi/plugin-email": "4.6.1",
"@strapi/plugin-upload": "4.6.1",
"@strapi/typescript-utils": "4.6.1",
"@strapi/utils": "4.6.1",
"@strapi/admin": "4.6.2",
"@strapi/data-transfer": "4.6.2",
"@strapi/database": "4.6.2",
"@strapi/generate-new": "4.6.2",
"@strapi/generators": "4.6.2",
"@strapi/logger": "4.6.2",
"@strapi/permissions": "4.6.2",
"@strapi/plugin-content-manager": "4.6.2",
"@strapi/plugin-content-type-builder": "4.6.2",
"@strapi/plugin-email": "4.6.2",
"@strapi/plugin-upload": "4.6.2",
"@strapi/typescript-utils": "4.6.2",
"@strapi/utils": "4.6.2",
"bcryptjs": "2.4.3",
"boxen": "5.1.2",
"chalk": "4.1.2",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-upload",
"version": "4.6.1",
"version": "4.6.2",
"description": "Makes it easy to upload images and files to your Strapi Application.",
"license": "SEE LICENSE IN LICENSE",
"author": {
@ -23,9 +23,9 @@
"test:front:watch:ce": "cross-env IS_EE=false jest --config ./jest.config.front.js --watchAll"
},
"dependencies": {
"@strapi/helper-plugin": "4.6.1",
"@strapi/provider-upload-local": "4.6.1",
"@strapi/utils": "4.6.1",
"@strapi/helper-plugin": "4.6.2",
"@strapi/provider-upload-local": "4.6.2",
"@strapi/utils": "4.6.2",
"byte-size": "7.0.1",
"cropperjs": "1.5.12",
"date-fns": "2.29.3",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/utils",
"version": "4.6.1",
"version": "4.6.2",
"description": "Shared utilities for the Strapi packages",
"keywords": [
"strapi",

View File

@ -54,6 +54,7 @@ export default ({ env }) => {
filename: path.join(
__dirname,
'..',
'..',
env('DATABASE_FILENAME', 'data.db')
),
},

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/generate-new",
"version": "4.6.1",
"version": "4.6.2",
"description": "Generate a new Strapi application.",
"keywords": [
"generate",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/generators",
"version": "4.6.1",
"version": "4.6.2",
"description": "Interactive API generator.",
"keywords": [
"strapi",
@ -30,8 +30,8 @@
"main": "lib/index.js",
"dependencies": {
"@sindresorhus/slugify": "1.1.0",
"@strapi/typescript-utils": "4.6.1",
"@strapi/utils": "4.6.1",
"@strapi/typescript-utils": "4.6.2",
"@strapi/utils": "4.6.2",
"chalk": "4.1.2",
"fs-extra": "10.0.0",
"node-plop": "0.26.3",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-color-picker",
"version": "4.6.1",
"version": "4.6.2",
"description": "Strapi maintained Custom Fields",
"strapi": {
"name": "color-picker",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-documentation",
"version": "4.6.1",
"version": "4.6.2",
"description": "Create an OpenAPI Document and visualize your API with SWAGGER UI.",
"repository": {
"type": "git",
@ -24,8 +24,8 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
"@strapi/helper-plugin": "4.6.1",
"@strapi/utils": "4.6.1",
"@strapi/helper-plugin": "4.6.2",
"@strapi/utils": "4.6.2",
"bcryptjs": "2.4.3",
"cheerio": "^1.0.0-rc.12",
"fs-extra": "10.0.0",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-graphql",
"version": "4.6.1",
"version": "4.6.2",
"description": "Adds GraphQL endpoint with default API methods.",
"repository": {
"type": "git",
@ -29,7 +29,7 @@
"dependencies": {
"@graphql-tools/schema": "8.5.1",
"@graphql-tools/utils": "^8.12.0",
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"apollo-server-core": "3.11.1",
"apollo-server-koa": "3.10.0",
"glob": "^7.1.7",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-i18n",
"version": "4.6.1",
"version": "4.6.2",
"description": "This plugin enables to create, to read and to update content in different languages, both from the Admin Panel and from the API",
"repository": {
"type": "git",
@ -24,7 +24,7 @@
"test:unit": "jest --verbose"
},
"dependencies": {
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"lodash": "4.17.21"
},
"devDependencies": {

View File

@ -2,7 +2,7 @@
const { prop, isNil, isEmpty, isArray } = require('lodash/fp');
const { forEachAsync } = require('@strapi/utils');
const { mapAsync } = require('@strapi/utils');
const { getService } = require('../utils');
const isDialectMySQL = () => strapi.db.dialect.client === 'mysql';
@ -41,7 +41,7 @@ const syncLocalizations = async (entry, { model }) => {
};
// MySQL/MariaDB can cause deadlocks here if concurrency higher than 1
await forEachAsync(entry.localizations, (localization) => updateLocalization(localization.id), {
await mapAsync(entry.localizations, (localization) => updateLocalization(localization.id), {
concurrency: isDialectMySQL() ? 1 : Infinity,
});
}
@ -68,7 +68,7 @@ const syncNonLocalizedAttributes = async (entry, { model }) => {
};
// MySQL/MariaDB can cause deadlocks here if concurrency higher than 1
await forEachAsync(entry.localizations, (localization) => updateLocalization(localization.id), {
await mapAsync(entry.localizations, (localization) => updateLocalization(localization.id), {
concurrency: isDialectMySQL() ? 1 : Infinity,
});
}

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-sentry",
"version": "4.6.1",
"version": "4.6.2",
"description": "Send Strapi error events to Sentry",
"repository": {
"type": "git",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-users-permissions",
"version": "4.6.1",
"version": "4.6.2",
"description": "Protect your API with a full-authentication process based on JWT",
"repository": {
"type": "git",
@ -27,8 +27,8 @@
"test:front:watch:ce": "cross-env IS_EE=false jest --config ./jest.config.front.js --watchAll"
},
"dependencies": {
"@strapi/helper-plugin": "4.6.1",
"@strapi/utils": "4.6.1",
"@strapi/helper-plugin": "4.6.2",
"@strapi/utils": "4.6.2",
"bcryptjs": "2.4.3",
"grant-koa": "5.4.8",
"jsonwebtoken": "9.0.0",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-audit-logs-local",
"version": "4.6.1",
"version": "4.6.2",
"description": "Local provider for strapi audit logs",
"keywords": [
"audit-logs",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-amazon-ses",
"version": "4.6.1",
"version": "4.6.2",
"description": "Amazon SES provider for strapi email",
"keywords": [
"email",
@ -36,7 +36,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"node-ses": "^3.0.3"
},
"engines": {

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-mailgun",
"version": "4.6.1",
"version": "4.6.2",
"description": "Mailgun provider for strapi email plugin",
"keywords": [
"email",
@ -36,7 +36,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"form-data": "^4.0.0",
"mailgun.js": "5.2.2"
},

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-nodemailer",
"version": "4.6.1",
"version": "4.6.2",
"description": "Nodemailer provider for Strapi 3",
"keywords": [
"strapi",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-sendgrid",
"version": "4.6.1",
"version": "4.6.2",
"description": "Sendgrid provider for strapi email",
"keywords": [
"email",
@ -37,7 +37,7 @@
},
"dependencies": {
"@sendgrid/mail": "7.7.0",
"@strapi/utils": "4.6.1"
"@strapi/utils": "4.6.2"
},
"engines": {
"node": ">=14.19.1 <=18.x.x",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-sendmail",
"version": "4.6.1",
"version": "4.6.2",
"description": "Sendmail provider for strapi email",
"keywords": [
"email",
@ -35,7 +35,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"sendmail": "^1.6.1"
},
"engines": {

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-upload-aws-s3",
"version": "4.6.1",
"version": "4.6.2",
"description": "AWS S3 provider for strapi upload",
"keywords": [
"upload",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-upload-cloudinary",
"version": "4.6.1",
"version": "4.6.2",
"description": "Cloudinary provider for strapi upload",
"keywords": [
"upload",
@ -36,7 +36,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"cloudinary": "^1.33.0",
"into-stream": "^5.1.0"
},

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/provider-upload-local",
"version": "4.6.1",
"version": "4.6.2",
"description": "Local provider for strapi upload",
"keywords": [
"upload",
@ -35,7 +35,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
"@strapi/utils": "4.6.1",
"@strapi/utils": "4.6.2",
"fs-extra": "10.0.0"
},
"engines": {

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/babel-plugin-switch-ee-ce",
"version": "4.6.1",
"version": "4.6.2",
"private": false,
"description": "Babel plugin to switch from CE to EE at runtime",
"repository": "git://github.com/strapi/strapi.git",

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/logger",
"version": "4.6.1",
"version": "4.6.2",
"description": "Strapi's logger",
"homepage": "https://strapi.io",
"bugs": {

View File

@ -1,6 +1,6 @@
{
"name": "@strapi/typescript-utils",
"version": "4.6.1",
"version": "4.6.2",
"description": "Typescript support for Strapi",
"keywords": [
"strapi",