mirror of
https://github.com/strapi/strapi.git
synced 2025-09-25 08:19:07 +00:00
Merge branch 'master' into feat/purest@4
This commit is contained in:
commit
c2940f44df
2
.github/actions/check-pr-status/package.json
vendored
2
.github/actions/check-pr-status/package.json
vendored
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "check-pr-status",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"main": "dist/index.js",
|
||||
"license": "MIT",
|
||||
"private": true,
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "getstarted",
|
||||
"private": true,
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "A Strapi application.",
|
||||
"scripts": {
|
||||
"develop": "strapi develop",
|
||||
@ -12,23 +12,23 @@
|
||||
"strapi": "strapi"
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/admin": "4.1.5",
|
||||
"@strapi/plugin-documentation": "4.1.5",
|
||||
"@strapi/plugin-graphql": "4.1.5",
|
||||
"@strapi/plugin-i18n": "4.1.5",
|
||||
"@strapi/plugin-sentry": "4.1.5",
|
||||
"@strapi/plugin-users-permissions": "4.1.5",
|
||||
"@strapi/provider-email-mailgun": "4.1.5",
|
||||
"@strapi/provider-upload-aws-s3": "4.1.5",
|
||||
"@strapi/provider-upload-cloudinary": "4.1.5",
|
||||
"@strapi/strapi": "4.1.5",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/admin": "4.1.6",
|
||||
"@strapi/plugin-documentation": "4.1.6",
|
||||
"@strapi/plugin-graphql": "4.1.6",
|
||||
"@strapi/plugin-i18n": "4.1.6",
|
||||
"@strapi/plugin-sentry": "4.1.6",
|
||||
"@strapi/plugin-users-permissions": "4.1.6",
|
||||
"@strapi/provider-email-mailgun": "4.1.6",
|
||||
"@strapi/provider-upload-aws-s3": "4.1.6",
|
||||
"@strapi/provider-upload-cloudinary": "4.1.6",
|
||||
"@strapi/strapi": "4.1.6",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"@vscode/sqlite3": "5.0.8",
|
||||
"better-sqlite3": "7.5.0",
|
||||
"lodash": "4.17.21",
|
||||
"mysql": "2.18.1",
|
||||
"passport-google-oauth2": "0.2.0",
|
||||
"pg": "8.6.0",
|
||||
"better-sqlite3": "7.5.0",
|
||||
"@vscode/sqlite3": "5.0.7",
|
||||
"sqlite3": "5.0.2"
|
||||
},
|
||||
"strapi": {
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "kitchensink",
|
||||
"private": true,
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "A Strapi application.",
|
||||
"scripts": {
|
||||
"develop": "strapi develop",
|
||||
@ -12,12 +12,12 @@
|
||||
"strapi": "strapi"
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/admin": "4.1.5",
|
||||
"@strapi/provider-email-mailgun": "4.1.5",
|
||||
"@strapi/provider-upload-aws-s3": "4.1.5",
|
||||
"@strapi/provider-upload-cloudinary": "4.1.5",
|
||||
"@strapi/strapi": "4.1.5",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/admin": "4.1.6",
|
||||
"@strapi/provider-email-mailgun": "4.1.6",
|
||||
"@strapi/provider-upload-aws-s3": "4.1.6",
|
||||
"@strapi/provider-upload-cloudinary": "4.1.6",
|
||||
"@strapi/strapi": "4.1.6",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"lodash": "4.17.21",
|
||||
"mysql": "2.18.1",
|
||||
"passport-google-oauth2": "0.2.0",
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"packages": [
|
||||
"packages/*",
|
||||
"examples/*"
|
||||
|
@ -90,7 +90,7 @@
|
||||
"eslint-plugin-jsx-a11y": "6.5.1",
|
||||
"eslint-plugin-node": "11.1.0",
|
||||
"eslint-plugin-react": "7.29.4",
|
||||
"eslint-plugin-react-hooks": "4.3.0",
|
||||
"eslint-plugin-react-hooks": "4.4.0",
|
||||
"eslint-plugin-redux-saga": "1.3.2",
|
||||
"execa": "1.0.0",
|
||||
"fs-extra": "10.0.1",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/admin-test-utils",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"private": true,
|
||||
"description": "Test utilities for the Strapi administration panel",
|
||||
"license": "MIT",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "create-strapi-app",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Generate a new Strapi application.",
|
||||
"keywords": [
|
||||
"create-strapi-app",
|
||||
@ -38,7 +38,7 @@
|
||||
"test": "echo \"no tests yet\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/generate-new": "4.1.5",
|
||||
"@strapi/generate-new": "4.1.6",
|
||||
"commander": "6.1.0",
|
||||
"inquirer": "8.2.0"
|
||||
},
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "create-strapi-starter",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Generate a new Strapi application.",
|
||||
"keywords": [
|
||||
"create-strapi-starter",
|
||||
@ -38,7 +38,7 @@
|
||||
"test": "echo \"no tests yet\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/generate-new": "4.1.5",
|
||||
"@strapi/generate-new": "4.1.6",
|
||||
"chalk": "4.1.1",
|
||||
"ci-info": "3.1.1",
|
||||
"commander": "7.1.0",
|
||||
|
@ -16,7 +16,12 @@ export default function hasContent(type, content, metadatas, fieldSchema) {
|
||||
return content.length > 0;
|
||||
}
|
||||
|
||||
const value = content[mainFieldName];
|
||||
const value = content?.[mainFieldName];
|
||||
|
||||
// relations, media ... show the id as fallback
|
||||
if (mainFieldName === 'id' && ![undefined, null].includes(value)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
/* The ID field reports itself as type `integer`, which makes it
|
||||
impossible to distinguish it from other number fields.
|
||||
|
@ -50,8 +50,15 @@ describe('hasContent', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('ID', () => {
|
||||
it('returns true for id main fields', () => {
|
||||
const normalizedContent = hasContent('media', { id: 1 });
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
});
|
||||
|
||||
describe('single component', () => {
|
||||
it('extracts content from single components with content', () => {
|
||||
it('extracts content with content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ name: 'content', id: 1 },
|
||||
@ -60,7 +67,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
|
||||
it('extracts content from single components without content', () => {
|
||||
it('extracts content without content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ name: '', id: 1 },
|
||||
@ -69,7 +76,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(false);
|
||||
});
|
||||
|
||||
it('extracts integers from single components with content', () => {
|
||||
it('extracts integers with content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ number: 1, id: 1 },
|
||||
@ -78,7 +85,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
|
||||
it('extracts integers from single components without content', () => {
|
||||
it('extracts integers without content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ number: null, id: 1 },
|
||||
@ -87,7 +94,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(false);
|
||||
});
|
||||
|
||||
it('extracts float from single components with content', () => {
|
||||
it('extracts float with content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ number: 1.11, id: 1 },
|
||||
@ -96,7 +103,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
|
||||
it('extracts float from single components without content', () => {
|
||||
it('extracts float without content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ number: null, id: 1 },
|
||||
@ -105,7 +112,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(false);
|
||||
});
|
||||
|
||||
it('extracts decimal from single components with content', () => {
|
||||
it('extracts decimal with content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ number: 1.11, id: 1 },
|
||||
@ -114,7 +121,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
|
||||
it('extracts decimal from single components without content', () => {
|
||||
it('extracts decimal without content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ number: null, id: 1 },
|
||||
@ -123,7 +130,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(false);
|
||||
});
|
||||
|
||||
it('extracts biginteger from single components with content', () => {
|
||||
it('extracts biginteger with content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ number: '12345678901234567890', id: 1 },
|
||||
@ -132,7 +139,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
|
||||
it('extracts biginteger from single components without content', () => {
|
||||
it('extracts biginteger without content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ number: null, id: 1 },
|
||||
@ -140,10 +147,28 @@ describe('hasContent', () => {
|
||||
);
|
||||
expect(normalizedContent).toEqual(false);
|
||||
});
|
||||
|
||||
it('does not fail if the attribute is not set', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ id: 1 },
|
||||
{ mainField: { name: 'number', type: 'biginteger' } }
|
||||
);
|
||||
expect(normalizedContent).toEqual(false);
|
||||
});
|
||||
|
||||
it('returns true id the main field is an id', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
{ id: 1 },
|
||||
{ mainField: { name: 'id', type: 'integer' } }
|
||||
);
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
});
|
||||
|
||||
describe('repeatable components', () => {
|
||||
it('extracts content from repeatable components with content', () => {
|
||||
it('extracts content with content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
[{ name: 'content_2', value: 'truthy', id: 1 }],
|
||||
@ -153,7 +178,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
|
||||
it('extracts content from repeatable components without content', () => {
|
||||
it('extracts content without content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
[{ name: 'content_2', value: '', id: 1 }],
|
||||
@ -163,7 +188,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
|
||||
it('extracts content from repeatable components without content', () => {
|
||||
it('extracts content without content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
[{ id: 1 }, { id: 2 }],
|
||||
@ -173,7 +198,7 @@ describe('hasContent', () => {
|
||||
expect(normalizedContent).toEqual(true);
|
||||
});
|
||||
|
||||
it('extracts content from repeatable components without content', () => {
|
||||
it('extracts content without content', () => {
|
||||
const normalizedContent = hasContent(
|
||||
'component',
|
||||
[],
|
||||
|
@ -106,7 +106,6 @@ const FieldComponent = ({
|
||||
componentValue={componentValue}
|
||||
componentValueLength={componentValueLength}
|
||||
componentUid={componentUid}
|
||||
isNested={isNested}
|
||||
isReadOnly={isReadOnly}
|
||||
max={max}
|
||||
min={min}
|
||||
|
@ -5,7 +5,6 @@ import { useIntl } from 'react-intl';
|
||||
import styled from 'styled-components';
|
||||
import PropTypes from 'prop-types';
|
||||
import get from 'lodash/get';
|
||||
import take from 'lodash/take';
|
||||
import { useNotification } from '@strapi/helper-plugin';
|
||||
import { Box } from '@strapi/design-system/Box';
|
||||
import { Flex } from '@strapi/design-system/Flex';
|
||||
@ -17,6 +16,7 @@ import ItemTypes from '../../utils/ItemTypes';
|
||||
import ComponentInitializer from '../ComponentInitializer';
|
||||
import connect from './utils/connect';
|
||||
import select from './utils/select';
|
||||
import getComponentErrorKeys from './utils/getComponentErrorKeys';
|
||||
import DraggedItem from './DraggedItem';
|
||||
import AccordionGroupCustom from './AccordionGroupCustom';
|
||||
|
||||
@ -38,7 +38,6 @@ const RepeatableComponent = ({
|
||||
componentUid,
|
||||
componentValue,
|
||||
componentValueLength,
|
||||
isNested,
|
||||
isReadOnly,
|
||||
max,
|
||||
min,
|
||||
@ -59,16 +58,7 @@ const RepeatableComponent = ({
|
||||
return getMaxTempKey(componentValue || []) + 1;
|
||||
}, [componentValue]);
|
||||
|
||||
const componentErrorKeys = Object.keys(formErrors)
|
||||
.filter(errorKey => {
|
||||
return take(errorKey.split('.'), isNested ? 3 : 1).join('.') === name;
|
||||
})
|
||||
.map(errorKey => {
|
||||
return errorKey
|
||||
.split('.')
|
||||
.slice(0, name.split('.').length + 1)
|
||||
.join('.');
|
||||
});
|
||||
const componentErrorKeys = getComponentErrorKeys(name, formErrors);
|
||||
|
||||
const toggleCollapses = () => {
|
||||
setCollapseToOpen('');
|
||||
@ -187,7 +177,6 @@ RepeatableComponent.defaultProps = {
|
||||
componentValue: null,
|
||||
componentValueLength: 0,
|
||||
formErrors: {},
|
||||
isNested: false,
|
||||
max: Infinity,
|
||||
min: 0,
|
||||
};
|
||||
@ -198,7 +187,6 @@ RepeatableComponent.propTypes = {
|
||||
componentValue: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),
|
||||
componentValueLength: PropTypes.number,
|
||||
formErrors: PropTypes.object,
|
||||
isNested: PropTypes.bool,
|
||||
isReadOnly: PropTypes.bool.isRequired,
|
||||
max: PropTypes.number,
|
||||
min: PropTypes.number,
|
||||
|
@ -0,0 +1,10 @@
|
||||
export default function getComponentErrorKeys(name, formErrors) {
|
||||
return Object.keys(formErrors)
|
||||
.filter(errorKey => errorKey.startsWith(name))
|
||||
.map(errorKey =>
|
||||
errorKey
|
||||
.split('.')
|
||||
.slice(0, name.split('.').length + 1)
|
||||
.join('.')
|
||||
);
|
||||
}
|
@ -0,0 +1,27 @@
|
||||
import getComponentErrorKeys from '../getComponentErrorKeys';
|
||||
|
||||
describe('getComponentErrorKeys', () => {
|
||||
test('retrieves error keys for non nested components', () => {
|
||||
const FIXTURE = {
|
||||
'component.0.name': 'unique-error',
|
||||
'component.1.field': 'validation-error',
|
||||
};
|
||||
|
||||
expect(getComponentErrorKeys('component', FIXTURE)).toStrictEqual([
|
||||
'component.0',
|
||||
'component.1',
|
||||
]);
|
||||
});
|
||||
|
||||
test('retrieves error keys for nested components', () => {
|
||||
const FIXTURE = {
|
||||
'parent.child.0.name': 'unique-error',
|
||||
'parent.child.1.field': 'validation-error',
|
||||
};
|
||||
|
||||
expect(getComponentErrorKeys('parent.child', FIXTURE)).toStrictEqual([
|
||||
'parent.child.0',
|
||||
'parent.child.1',
|
||||
]);
|
||||
});
|
||||
});
|
@ -59,7 +59,6 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd
|
||||
'relation',
|
||||
'component',
|
||||
'boolean',
|
||||
'date',
|
||||
'media',
|
||||
'richtext',
|
||||
'timestamp',
|
||||
|
@ -0,0 +1,40 @@
|
||||
import React from 'react';
|
||||
import { useIntl } from 'react-intl';
|
||||
import { ContentBox, useTracking } from '@strapi/helper-plugin';
|
||||
import GlassesSquare from '@strapi/icons/GlassesSquare';
|
||||
import ExternalLink from '@strapi/icons/ExternalLink';
|
||||
import { Icon } from '@strapi/design-system/Icon';
|
||||
|
||||
const MissingPluginBanner = () => {
|
||||
const { formatMessage } = useIntl();
|
||||
const { trackUsage } = useTracking();
|
||||
|
||||
return (
|
||||
<a
|
||||
href="https://strapi.canny.io/plugin-requests"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer nofollow"
|
||||
style={{ textDecoration: 'none' }}
|
||||
onClick={() => trackUsage('didMissMarketplacePlugin')}
|
||||
>
|
||||
<ContentBox
|
||||
title={formatMessage({
|
||||
id: 'admin.pages.MarketPlacePage.missingPlugin.title',
|
||||
defaultMessage: 'Documentation',
|
||||
})}
|
||||
subtitle={formatMessage({
|
||||
id: 'admin.pages.MarketPlacePage.missingPlugin.description',
|
||||
defaultMessage:
|
||||
"Tell us what plugin you are looking for and we'll let our community plugin developers know in case they are in search for inspiration!",
|
||||
})}
|
||||
icon={<GlassesSquare />}
|
||||
iconBackground="alternative100"
|
||||
endAction={
|
||||
<Icon as={ExternalLink} color="neutral600" width={3} height={3} marginLeft={2} />
|
||||
}
|
||||
/>
|
||||
</a>
|
||||
);
|
||||
};
|
||||
|
||||
export default MissingPluginBanner;
|
@ -27,6 +27,7 @@ import { fetchAppInformation } from './utils/api';
|
||||
import useFetchInstalledPlugins from '../../hooks/useFetchInstalledPlugins';
|
||||
import useFetchMarketplacePlugins from '../../hooks/useFetchMarketplacePlugins';
|
||||
import adminPermissions from '../../permissions';
|
||||
import MissingPluginBanner from './components/MissingPluginBanner';
|
||||
|
||||
const matchSearch = (plugins, search) => {
|
||||
return matchSorter(plugins, search, {
|
||||
@ -219,6 +220,9 @@ const MarketPlacePage = () => {
|
||||
))}
|
||||
</Grid>
|
||||
)}
|
||||
<Box paddingTop={7}>
|
||||
<MissingPluginBanner />
|
||||
</Box>
|
||||
</ContentLayout>
|
||||
</Main>
|
||||
</Layout>
|
||||
|
@ -87,6 +87,10 @@ describe('Marketplace page', () => {
|
||||
padding-left: 16px;
|
||||
}
|
||||
|
||||
.c56 {
|
||||
padding-top: 32px;
|
||||
}
|
||||
|
||||
.c49 {
|
||||
font-weight: 600;
|
||||
color: #32324d;
|
||||
@ -253,6 +257,19 @@ describe('Marketplace page', () => {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.c57 {
|
||||
background: #ffffff;
|
||||
padding: 24px;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0px 1px 4px rgba(33,33,52,0.1);
|
||||
}
|
||||
|
||||
.c58 {
|
||||
background: #f6ecfc;
|
||||
padding: 12px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.c31 {
|
||||
display: -webkit-box;
|
||||
display: -webkit-flex;
|
||||
@ -297,10 +314,21 @@ describe('Marketplace page', () => {
|
||||
height: 12;
|
||||
}
|
||||
|
||||
.c63 {
|
||||
color: #666687;
|
||||
margin-left: 8px;
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
}
|
||||
|
||||
.c51 path {
|
||||
fill: #328048;
|
||||
}
|
||||
|
||||
.c64 path {
|
||||
fill: #666687;
|
||||
}
|
||||
|
||||
.c24 {
|
||||
padding-right: 8px;
|
||||
padding-left: 12px;
|
||||
@ -467,6 +495,21 @@ describe('Marketplace page', () => {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.c60 {
|
||||
display: -webkit-box;
|
||||
display: -webkit-flex;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
-webkit-flex-direction: column;
|
||||
-ms-flex-direction: column;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.c60 > * {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.c41 > * {
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
@ -496,6 +539,26 @@ describe('Marketplace page', () => {
|
||||
line-height: 1.43;
|
||||
}
|
||||
|
||||
.c61 {
|
||||
font-weight: 500;
|
||||
color: #32324d;
|
||||
font-size: 0.75rem;
|
||||
line-height: 1.33;
|
||||
}
|
||||
|
||||
.c59 {
|
||||
margin-right: 24px;
|
||||
}
|
||||
|
||||
.c59 svg {
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
}
|
||||
|
||||
.c62 {
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.c28 {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(12,1fr);
|
||||
@ -1496,6 +1559,74 @@ describe('Marketplace page', () => {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="c56"
|
||||
>
|
||||
<a
|
||||
href="https://strapi.canny.io/plugin-requests"
|
||||
rel="noopener noreferrer nofollow"
|
||||
style="text-decoration: none;"
|
||||
target="_blank"
|
||||
>
|
||||
<div
|
||||
class="c57 c35"
|
||||
>
|
||||
<div
|
||||
class="c58 c35 c59"
|
||||
>
|
||||
<svg
|
||||
fill="none"
|
||||
height="1em"
|
||||
viewBox="0 0 32 32"
|
||||
width="1em"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<path
|
||||
d="M0 4a4 4 0 014-4h24a4 4 0 014 4v24a4 4 0 01-4 4H4a4 4 0 01-4-4V4z"
|
||||
fill="#AC73E6"
|
||||
/>
|
||||
<path
|
||||
clip-rule="evenodd"
|
||||
d="M15.027 13.839c-3.19-.836-6.305-1.064-10.18-.608-1.215.152-1.063 1.975.076 2.203.304.836.456 2.355.912 3.267.987 2.279 5.622 1.975 7.369.835 1.14-.683 1.443-2.279 1.9-3.494.227-.684 1.595-.684 1.822 0 .38 1.215.76 2.81 1.9 3.494 1.747 1.14 6.381 1.444 7.369-.835.456-.912.607-2.431.911-3.267 1.14-.228 1.216-2.051.076-2.203-3.874-.456-6.989-.228-10.18.608-.455.075-1.519.075-1.975 0z"
|
||||
fill="#fff"
|
||||
fill-rule="evenodd"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<div
|
||||
class="c60"
|
||||
>
|
||||
<div
|
||||
class="c35"
|
||||
>
|
||||
<span
|
||||
class="c61 c62"
|
||||
>
|
||||
Documentation
|
||||
</span>
|
||||
<svg
|
||||
class="c63 c64"
|
||||
fill="none"
|
||||
height="3"
|
||||
viewBox="0 0 24 24"
|
||||
width="3"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<path
|
||||
d="M16.235 2.824a1.412 1.412 0 010-2.824h6.353C23.368 0 24 .633 24 1.412v6.353a1.412 1.412 0 01-2.823 0V4.82l-8.179 8.178a1.412 1.412 0 01-1.996-1.996l8.178-8.178h-2.945zm4.942 10.588a1.412 1.412 0 012.823 0v9.176c0 .78-.632 1.412-1.412 1.412H1.412C.632 24 0 23.368 0 22.588V1.412C0 .632.632 0 1.412 0h9.176a1.412 1.412 0 010 2.824H2.824v18.353h18.353v-7.765z"
|
||||
fill="#32324D"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<span
|
||||
class="c37"
|
||||
>
|
||||
Tell us what plugin you are looking for and we'll let our community plugin developers know in case they are in search for inspiration!
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
@ -1515,8 +1646,8 @@ describe('Marketplace page', () => {
|
||||
it('should return search results matching the query', async () => {
|
||||
const { container } = render(App);
|
||||
const input = await getByPlaceholderText(container, 'Search for a plugin');
|
||||
fireEvent.change(input, { target: { value: 'documentation' } });
|
||||
const match = screen.getByText('Documentation');
|
||||
fireEvent.change(input, { target: { value: 'comment' } });
|
||||
const match = screen.getByText('Comments');
|
||||
const notMatch = screen.queryByText('Sentry');
|
||||
|
||||
expect(match).toBeVisible();
|
||||
|
@ -218,6 +218,8 @@
|
||||
"admin.pages.MarketPlacePage.search.placeholder": "Search for a plugin",
|
||||
"admin.pages.MarketPlacePage.submit.plugin.link": "Submit your plugin",
|
||||
"admin.pages.MarketPlacePage.subtitle": "Get more out of Strapi",
|
||||
"admin.pages.MarketPlacePage.missingPlugin.title": "Missing a plugin?",
|
||||
"admin.pages.MarketPlacePage.missingPlugin.description": "Tell us what plugin you are looking for and we'll let our community plugin developers know in case they are in search for inspiration!",
|
||||
"anErrorOccurred": "Woops! Something went wrong. Please, try again.",
|
||||
"app.component.CopyToClipboard.label": "Copy to clipboard",
|
||||
"app.component.search.label": "Search for {target}",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/admin",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Strapi Admin",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -52,11 +52,11 @@
|
||||
"@fortawesome/free-brands-svg-icons": "^5.15.3",
|
||||
"@fortawesome/free-solid-svg-icons": "^5.15.3",
|
||||
"@fortawesome/react-fontawesome": "^0.1.14",
|
||||
"@strapi/babel-plugin-switch-ee-ce": "4.1.5",
|
||||
"@strapi/babel-plugin-switch-ee-ce": "4.1.6",
|
||||
"@strapi/design-system": "0.0.1-alpha.79",
|
||||
"@strapi/helper-plugin": "4.1.5",
|
||||
"@strapi/helper-plugin": "4.1.6",
|
||||
"@strapi/icons": "0.0.1-alpha.79",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"axios": "0.24.0",
|
||||
"babel-loader": "8.2.3",
|
||||
"babel-plugin-styled-components": "2.0.2",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-content-manager",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"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.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"lodash": "4.17.21"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-content-type-builder",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Strapi plugin to create content type",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -28,9 +28,9 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@sindresorhus/slugify": "1.1.0",
|
||||
"@strapi/generators": "4.1.5",
|
||||
"@strapi/helper-plugin": "4.1.5",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/generators": "4.1.6",
|
||||
"@strapi/helper-plugin": "4.1.6",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"fs-extra": "10.0.0",
|
||||
"lodash": "4.17.21",
|
||||
"pluralize": "^8.0.0",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/database",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Strapi's database layer",
|
||||
"homepage": "https://strapi.io",
|
||||
"bugs": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-email",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"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.1.5",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/provider-email-sendmail": "4.1.6",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"lodash": "4.17.21"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@strapi/helper-plugin": "4.1.5"
|
||||
"@strapi/helper-plugin": "4.1.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.22.0 <=16.x.x",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/helper-plugin",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Helper for Strapi plugins development",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/strapi",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"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",
|
||||
@ -80,16 +80,16 @@
|
||||
"dependencies": {
|
||||
"@koa/cors": "3.1.0",
|
||||
"@koa/router": "10.1.1",
|
||||
"@strapi/admin": "4.1.5",
|
||||
"@strapi/database": "4.1.5",
|
||||
"@strapi/generate-new": "4.1.5",
|
||||
"@strapi/generators": "4.1.5",
|
||||
"@strapi/logger": "4.1.5",
|
||||
"@strapi/plugin-content-manager": "4.1.5",
|
||||
"@strapi/plugin-content-type-builder": "4.1.5",
|
||||
"@strapi/plugin-email": "4.1.5",
|
||||
"@strapi/plugin-upload": "4.1.5",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/admin": "4.1.6",
|
||||
"@strapi/database": "4.1.6",
|
||||
"@strapi/generate-new": "4.1.6",
|
||||
"@strapi/generators": "4.1.6",
|
||||
"@strapi/logger": "4.1.6",
|
||||
"@strapi/plugin-content-manager": "4.1.6",
|
||||
"@strapi/plugin-content-type-builder": "4.1.6",
|
||||
"@strapi/plugin-email": "4.1.6",
|
||||
"@strapi/plugin-upload": "4.1.6",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"bcryptjs": "2.4.3",
|
||||
"boxen": "5.1.2",
|
||||
"chalk": "4.1.2",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-upload",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"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.1.5",
|
||||
"@strapi/provider-upload-local": "4.1.5",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/helper-plugin": "4.1.6",
|
||||
"@strapi/provider-upload-local": "4.1.6",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"byte-size": "7.0.1",
|
||||
"cropperjs": "1.5.11",
|
||||
"fs-extra": "10.0.0",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/utils",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Shared utilities for the Strapi packages",
|
||||
"keywords": [
|
||||
"strapi",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/generate-new",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Generate a new Strapi application.",
|
||||
"keywords": [
|
||||
"generate",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/generators",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Interactive API generator.",
|
||||
"keywords": [
|
||||
"strapi",
|
||||
@ -30,7 +30,7 @@
|
||||
"main": "lib/index.js",
|
||||
"dependencies": {
|
||||
"@sindresorhus/slugify": "1.1.0",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"chalk": "4.1.2",
|
||||
"fs-extra": "10.0.0",
|
||||
"node-plop": "0.26.3",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-documentation",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"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.1.5",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/helper-plugin": "4.1.6",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"bcryptjs": "2.4.3",
|
||||
"cheerio": "^1.0.0-rc.5",
|
||||
"fs-extra": "10.0.0",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-graphql",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Adds GraphQL endpoint with default API methods.",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -30,7 +30,7 @@
|
||||
"@apollo/federation": "^0.28.0",
|
||||
"@graphql-tools/schema": "8.1.2",
|
||||
"@graphql-tools/utils": "^8.0.2",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"apollo-server-core": "3.1.2",
|
||||
"apollo-server-koa": "3.1.2",
|
||||
"glob": "^7.1.7",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-i18n",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"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.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"lodash": "4.17.21"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-sentry",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Send Strapi error events to Sentry",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/plugin-users-permissions",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"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.1.5",
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/helper-plugin": "4.1.6",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"bcryptjs": "2.4.3",
|
||||
"grant-koa": "5.4.8",
|
||||
"jsonwebtoken": "^8.1.0",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-email-amazon-ses",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Amazon SES provider for strapi email",
|
||||
"keywords": [
|
||||
"email",
|
||||
@ -36,7 +36,7 @@
|
||||
"test": "echo \"no tests yet\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"node-ses": "^3.0.3"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-email-mailgun",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Mailgun provider for strapi email plugin",
|
||||
"keywords": [
|
||||
"email",
|
||||
@ -36,7 +36,7 @@
|
||||
"test": "echo \"no tests yet\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"mailgun-js": "0.22.0"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-email-nodemailer",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Nodemailer provider for Strapi 3",
|
||||
"keywords": [
|
||||
"strapi",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-email-sendgrid",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Sendgrid provider for strapi email",
|
||||
"keywords": [
|
||||
"email",
|
||||
@ -37,7 +37,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@sendgrid/mail": "7.4.7",
|
||||
"@strapi/utils": "4.1.5"
|
||||
"@strapi/utils": "4.1.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.22.0 <=16.x.x",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-email-sendmail",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Sendmail provider for strapi email",
|
||||
"keywords": [
|
||||
"email",
|
||||
@ -35,7 +35,7 @@
|
||||
"test": "echo \"no tests yet\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"sendmail": "^1.6.1"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-upload-aws-s3",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "AWS S3 provider for strapi upload",
|
||||
"keywords": [
|
||||
"upload",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-upload-cloudinary",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Cloudinary provider for strapi upload",
|
||||
"keywords": [
|
||||
"upload",
|
||||
@ -36,7 +36,7 @@
|
||||
"test": "echo \"no tests yet\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"cloudinary": "^1.25.1",
|
||||
"into-stream": "^5.1.0"
|
||||
},
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-upload-local",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Local provider for strapi upload",
|
||||
"keywords": [
|
||||
"upload",
|
||||
@ -35,7 +35,7 @@
|
||||
"test": "echo \"no tests yet\""
|
||||
},
|
||||
"dependencies": {
|
||||
"@strapi/utils": "4.1.5",
|
||||
"@strapi/utils": "4.1.6",
|
||||
"fs-extra": "10.0.0"
|
||||
},
|
||||
"engines": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/provider-upload-rackspace",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Rackspace provider for strapi upload",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/babel-plugin-switch-ee-ce",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"private": false,
|
||||
"description": "Babel plugin to switch from CE to EE at runtime",
|
||||
"repository": "git://github.com/strapi/strapi.git",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@strapi/logger",
|
||||
"version": "4.1.5",
|
||||
"version": "4.1.6",
|
||||
"description": "Strapi's logger",
|
||||
"homepage": "https://strapi.io",
|
||||
"bugs": {
|
||||
|
41
yarn.lock
41
yarn.lock
@ -5922,10 +5922,10 @@
|
||||
resolved "https://registry.yarnpkg.com/@vercel/ncc/-/ncc-0.33.3.tgz#aacc6b3ea9f7b175e0c9a18c9b97e4005a2f4fcc"
|
||||
integrity sha512-JGZ11QV+/ZcfudW2Cz2JVp54/pJNXbsuWRgSh2ZmmZdQBKXqBtIGrwI1Wyx8nlbzAiEFe7FHi4K1zX4//jxTnQ==
|
||||
|
||||
"@vscode/sqlite3@5.0.7":
|
||||
version "5.0.7"
|
||||
resolved "https://registry.yarnpkg.com/@vscode/sqlite3/-/sqlite3-5.0.7.tgz#358df36bb0e9e735c54785e3e4b9b2dce1d32895"
|
||||
integrity sha512-NlsOf+Hir2r4zopI1qMvzWXPwPJuFscirkmFTniTAT24Yz2FWcyZxzK7UT8iSNiTqOCPz48yF55ZVHaz7tTuVQ==
|
||||
"@vscode/sqlite3@5.0.8":
|
||||
version "5.0.8"
|
||||
resolved "https://registry.yarnpkg.com/@vscode/sqlite3/-/sqlite3-5.0.8.tgz#72b07061c5f90a9dd598a5506f598fcc817fab90"
|
||||
integrity sha512-6wvQdMjpi1kwYI5mfzm98siEQb2mlBKX4xdNtJFj/uNqb6wqd3JOhk+5FL7geR0hduXE5lHjv+q69jtsEtUJDA==
|
||||
dependencies:
|
||||
node-addon-api "^4.2.0"
|
||||
|
||||
@ -6995,9 +6995,9 @@ aws-sdk@2.892.0:
|
||||
xml2js "0.4.19"
|
||||
|
||||
aws-sdk@^2.382.0:
|
||||
version "2.1102.0"
|
||||
resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1102.0.tgz#00cceeb39966bf0000ff64d7fb237c38640618f5"
|
||||
integrity sha512-MMOncE8IG3Dop3WPza6ryTAEz413ftn/MtDO7ouessb3ljlg5BfqRkTe/rhPH5svqEqJvlh7qHnK0VjgJwmLTQ==
|
||||
version "2.1103.0"
|
||||
resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1103.0.tgz#b0c69b8fd0a31729860bd9218f3c691d06240fcb"
|
||||
integrity sha512-naSAcfoLs55byP8djBHXgZQF3pcsgyX815HSPYjqkzmlukbE9mCVoguUp5rbqLYbLgcnMw4tp2N4ohpBB3voIg==
|
||||
dependencies:
|
||||
buffer "4.9.2"
|
||||
events "1.1.1"
|
||||
@ -9968,9 +9968,9 @@ ee-first@1.1.1:
|
||||
integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
|
||||
|
||||
electron-to-chromium@^1.3.564:
|
||||
version "1.4.98"
|
||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.98.tgz#1a9a0dec9792e78c5be1df052b6c74078d6b1b16"
|
||||
integrity sha512-1IdsuSAnIGVxoYT1LkcUFb9MfjRxdHhCU9qiaDzhl1XvYgK9c8E2O9aJOPgGMQ68CSI8NxmLwrYhjvGauT8yuw==
|
||||
version "1.4.101"
|
||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.101.tgz#71f3a10065146d7445ba5d4c06ba2cc063b0817a"
|
||||
integrity sha512-XJH+XmJjACx1S7ASl/b//KePcda5ocPnFH2jErztXcIS8LpP0SE6rX8ZxiY5/RaDPnaF1rj0fPaHfppzb0e2Aw==
|
||||
|
||||
electron-to-chromium@^1.4.84:
|
||||
version "1.4.85"
|
||||
@ -10414,10 +10414,10 @@ eslint-plugin-node@11.1.0:
|
||||
resolve "^1.10.1"
|
||||
semver "^6.1.0"
|
||||
|
||||
eslint-plugin-react-hooks@4.3.0:
|
||||
version "4.3.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.3.0.tgz#318dbf312e06fab1c835a4abef00121751ac1172"
|
||||
integrity sha512-XslZy0LnMn+84NEG9jSGR6eGqaZB3133L8xewQo3fQagbQuGt7a63gf+P1NGKZavEYEC3UXaWEAA/AqDkuN6xA==
|
||||
eslint-plugin-react-hooks@4.4.0:
|
||||
version "4.4.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.4.0.tgz#71c39e528764c848d8253e1aa2c7024ed505f6c4"
|
||||
integrity sha512-U3RVIfdzJaeKDQKEJbz5p3NW8/L80PCATJAfuojwbaEL+gBjfGdhUcGde+WGUW46Q5sr/NgxevsIiDtNXrvZaQ==
|
||||
|
||||
eslint-plugin-react@7.29.4:
|
||||
version "7.29.4"
|
||||
@ -15749,12 +15749,7 @@ minimist@0.0.8:
|
||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
|
||||
integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
|
||||
|
||||
minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5:
|
||||
version "1.2.6"
|
||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
|
||||
integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
|
||||
|
||||
minimist@^1.2.6:
|
||||
minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6:
|
||||
version "1.2.6"
|
||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
|
||||
integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
|
||||
@ -22075,9 +22070,9 @@ use-composed-ref@^1.0.0:
|
||||
integrity sha512-6+X1FLlIcjvFMAeAD/hcxDT8tmyrWnbSPMU0EnxQuDLIxokuFzWliXBiYZuGIx+mrAMLBw0WFfCkaPw8ebzAhw==
|
||||
|
||||
use-isomorphic-layout-effect@^1.0.0:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.1.tgz#7bb6589170cd2987a152042f9084f9effb75c225"
|
||||
integrity sha512-L7Evj8FGcwo/wpbv/qvSfrkHFtOpCzvM5yl2KVyDJoylVuSvzphiiasmjgQPttIGBAy2WKiBNR98q8w7PiNgKQ==
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz#497cefb13d863d687b08477d9e5a164ad8c1a6fb"
|
||||
integrity sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==
|
||||
|
||||
use-latest@^1.0.0:
|
||||
version "1.2.0"
|
||||
|
Loading…
x
Reference in New Issue
Block a user