Merge branch 'master' into develop

This commit is contained in:
cyril lopez 2019-10-03 10:47:25 +02:00 committed by GitHub
commit 39988b3efb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
46 changed files with 105 additions and 112 deletions

View File

@ -107,22 +107,6 @@ This project is currently in **Beta**. Significant breaking changes are unlikely
**[See more on our website](https://strapi.io/overview)**.
### Try on Heroku
You can also give it a try using Heroku in one click!
<a href="https://heroku.com/deploy?template=https://github.com/strapi/strapi-heroku-app">
<img src="https://www.herokucdn.com/deploy/button.svg" alt="Deploy">
</a>
Be aware that the Content Type Builder won't work due to the restriction of writing files on the Heroku servers. If you would like to change/edit/add Content Types, you need to follow these steps:
1. Click the button above and deploy your app
2. Clone that repo by using `heroku git:clone -a` followed by your repo's name
3. Go into the cloned projects' folder using `cd` followed by your repo's name
4. Add the Heroku boilerplate as a remote by running `git remote add boilerplate https://github.com/strapi/strapi-heroku-app`
5. Pull from this new origin by running `git pull boilerplate master`
## Contributing
Please read our [Contributing Guide](./CONTRIBUTING.md) before submitting a Pull Request to the project.

View File

@ -29,7 +29,7 @@ npm run strapi install graphql
::: tab "strapi" id="strapi"
```
strapi install documentation
strapi install graphql
```
:::

View File

@ -1,7 +1,7 @@
{
"name": "getstarted",
"private": true,
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "A Strapi application.",
"scripts": {
"develop": "strapi develop",
@ -15,23 +15,23 @@
"mysql": "^2.17.1",
"pg": "^7.10.0",
"sqlite3": "^4.0.6",
"strapi": "3.0.0-beta.16.6",
"strapi-admin": "3.0.0-beta.16.6",
"strapi-hook-bookshelf": "3.0.0-beta.16.6",
"strapi-hook-knex": "3.0.0-beta.16.6",
"strapi-hook-mongoose": "3.0.0-beta.16.6",
"strapi-middleware-views": "3.0.0-beta.16.6",
"strapi-plugin-content-manager": "3.0.0-beta.16.6",
"strapi-plugin-content-type-builder": "3.0.0-beta.16.6",
"strapi-plugin-documentation": "3.0.0-beta.16.6",
"strapi-plugin-email": "3.0.0-beta.16.6",
"strapi-plugin-graphql": "3.0.0-beta.16.6",
"strapi-plugin-settings-manager": "3.0.0-beta.16.6",
"strapi-plugin-upload": "3.0.0-beta.16.6",
"strapi-plugin-users-permissions": "3.0.0-beta.16.6",
"strapi-provider-email-mailgun": "3.0.0-beta.16.6",
"strapi-provider-upload-aws-s3": "3.0.0-beta.16.6",
"strapi-utils": "3.0.0-beta.16.6"
"strapi": "3.0.0-beta.16.7",
"strapi-admin": "3.0.0-beta.16.7",
"strapi-hook-bookshelf": "3.0.0-beta.16.7",
"strapi-hook-knex": "3.0.0-beta.16.7",
"strapi-hook-mongoose": "3.0.0-beta.16.7",
"strapi-middleware-views": "3.0.0-beta.16.7",
"strapi-plugin-content-manager": "3.0.0-beta.16.7",
"strapi-plugin-content-type-builder": "3.0.0-beta.16.7",
"strapi-plugin-documentation": "3.0.0-beta.16.7",
"strapi-plugin-email": "3.0.0-beta.16.7",
"strapi-plugin-graphql": "3.0.0-beta.16.7",
"strapi-plugin-settings-manager": "3.0.0-beta.16.7",
"strapi-plugin-upload": "3.0.0-beta.16.7",
"strapi-plugin-users-permissions": "3.0.0-beta.16.7",
"strapi-provider-email-mailgun": "3.0.0-beta.16.7",
"strapi-provider-upload-aws-s3": "3.0.0-beta.16.7",
"strapi-utils": "3.0.0-beta.16.7"
},
"strapi": {
"uuid": "getstarted"

View File

@ -1,5 +1,5 @@
{
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"packages": [
"packages/*",
"examples/*"

View File

@ -1,6 +1,6 @@
{
"name": "create-strapi-app",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Generate a new Strapi application.",
"license": "MIT",
"homepage": "http://strapi.io",
@ -21,7 +21,7 @@
],
"dependencies": {
"commander": "^2.20.0",
"strapi-generate-new": "3.0.0-beta.16.6"
"strapi-generate-new": "3.0.0-beta.16.7"
},
"scripts": {
"test": "echo \"no tests yet\""

View File

@ -47,7 +47,7 @@ const Input = ({
{content => (
<span
style={{ color: '#0097f7', cursor: 'pointer' }}
onClick={e => handleClick(e, 'policy')}
onClick={e => handleClick(e, 'privacy')}
>
{content}
</span>

View File

@ -1,6 +1,6 @@
{
"name": "strapi-admin",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Strapi Admin",
"repository": {
"type": "git",
@ -72,8 +72,8 @@
"sanitize.css": "^4.1.0",
"sass-loader": "^7.1.0",
"shelljs": "^0.7.8",
"strapi-helper-plugin": "3.0.0-beta.16.6",
"strapi-utils": "3.0.0-beta.16.6",
"strapi-helper-plugin": "3.0.0-beta.16.7",
"strapi-utils": "3.0.0-beta.16.7",
"style-loader": "^0.23.1",
"styled-components": "^4.2.0",
"terser-webpack-plugin": "^1.2.3",

View File

@ -1,6 +1,6 @@
{
"name": "strapi-generate-api",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Generate an API for a Strapi application.",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-generate-controller",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Generate a controller for a Strapi API.",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-generate-model",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Generate a model for a Strapi API.",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-generate-new",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Generate a new Strapi application.",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-generate-plugin",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Generate an plugin for a Strapi application.",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-generate-policy",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Generate a policy for a Strapi API.",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-generate-service",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Generate a service for a Strapi API.",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-generate",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Master of ceremonies for the Strapi generators.",
"homepage": "http://strapi.io",
"keywords": [
@ -20,7 +20,7 @@
"fs-extra": "^8.0.1",
"lodash": "^4.17.11",
"reportback": "^2.0.2",
"strapi-utils": "3.0.0-beta.16.6"
"strapi-utils": "3.0.0-beta.16.7"
},
"author": {
"name": "Strapi team",

View File

@ -1,6 +1,6 @@
{
"name": "strapi-helper-plugin",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Helper for Strapi plugins development",
"files": [
"dist"

View File

@ -547,7 +547,7 @@ const buildSearchQuery = (qb, model, params) => {
const searchQuery = searchText.map(attribute =>
_.toLower(attribute) === attribute
? `to_tsvector(${attribute})`
: `to_tsvector('${attribute}')`
: `to_tsvector("${attribute}")`
);
qb.orWhereRaw(`${searchQuery.join(' || ')} @@ plainto_tsquery(?)`, query);

View File

@ -1,6 +1,6 @@
{
"name": "strapi-hook-bookshelf",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Bookshelf hook for the Strapi framework",
"homepage": "http://strapi.io",
"keywords": [
@ -22,8 +22,8 @@
"lodash": "^4.17.11",
"pluralize": "^7.0.0",
"rimraf": "^2.6.3",
"strapi-hook-knex": "3.0.0-beta.16.6",
"strapi-utils": "3.0.0-beta.16.6"
"strapi-hook-knex": "3.0.0-beta.16.7",
"strapi-utils": "3.0.0-beta.16.7"
},
"strapi": {
"dependencies": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-hook-ejs",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "EJS hook for the Strapi framework",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-hook-knex",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Knex hook for the Strapi framework",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-hook-mongoose",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Mongoose hook for the Strapi framework",
"homepage": "http://strapi.io",
"keywords": [
@ -20,7 +20,7 @@
"mongoose-float": "^1.0.4",
"mongoose-long": "^0.2.1",
"pluralize": "^7.0.0",
"strapi-utils": "3.0.0-beta.16.6"
"strapi-utils": "3.0.0-beta.16.7"
},
"author": {
"email": "hi@strapi.io",

View File

@ -1,6 +1,6 @@
{
"name": "strapi-hook-redis",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Redis hook for the Strapi framework",
"homepage": "http://strapi.io",
"keywords": [
@ -19,7 +19,7 @@
"lodash": "^4.17.11",
"rimraf": "^2.6.3",
"stack-trace": "0.0.10",
"strapi-utils": "3.0.0-beta.16.6"
"strapi-utils": "3.0.0-beta.16.7"
},
"author": {
"email": "hi@strapi.io",

View File

@ -1,6 +1,6 @@
{
"name": "strapi-middleware-views",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Views middleware to enable server-side rendering for the Strapi framework",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -16,9 +16,10 @@ function ListItem({
moveRelation,
nextSearch,
onRemove,
source,
targetModel,
}) {
const to = `/plugins/${pluginId}/${targetModel}/${data.id}?redirectUrl=${nextSearch}`;
const to = `/plugins/${pluginId}/${targetModel}/${data.id}?source=${source}&redirectUrl=${nextSearch}`;
const originalIndex = findRelation(data.id).index;
const [{ isDragging }, drag, preview] = useDrag({
@ -72,6 +73,7 @@ ListItem.propTypes = {
moveRelation: PropTypes.func,
nextSearch: PropTypes.string,
onRemove: PropTypes.func,
source: PropTypes.string.isRequired,
targetModel: PropTypes.string,
};

View File

@ -23,6 +23,7 @@ function SelectMany({
onRemove,
options,
placeholder,
source,
targetModel,
value,
}) {
@ -62,7 +63,8 @@ function SelectMany({
id={name}
filterOption={(candidate, input) => {
if (!isEmpty(value)) {
const isSelected = value.findIndex(item => item.id === candidate.value.id) !== -1;
const isSelected =
value.findIndex(item => item.id === candidate.value.id) !== -1;
if (isSelected) {
return false;
}
@ -98,6 +100,7 @@ function SelectMany({
moveRelation={moveRelation}
nextSearch={nextSearch}
onRemove={() => onRemove(`${name}.${index}`)}
source={source}
targetModel={targetModel}
/>
))}
@ -111,6 +114,7 @@ function SelectMany({
SelectMany.defaultProps = {
move: () => {},
source: 'content-manager',
value: null,
};
@ -128,6 +132,7 @@ SelectMany.propTypes = {
onRemove: PropTypes.func.isRequired,
options: PropTypes.array.isRequired,
placeholder: PropTypes.node.isRequired,
source: PropTypes.string,
targetModel: PropTypes.string.isRequired,
value: PropTypes.array,
};

View File

@ -32,11 +32,12 @@ function SelectWrapper({
pathname,
search,
} = useEditView();
const source = isEmpty(plugin) ? 'content-manager' : plugin;
const [state, setState] = useState({
_q: '',
_limit: 20,
_start: 0,
source: isEmpty(plugin) ? 'content-manager' : plugin,
source,
});
const [options, setOptions] = useState([]);
const [isLoading, setIsLoading] = useState(true);
@ -128,7 +129,7 @@ function SelectWrapper({
const nextSearch = `${pathname}${search}`;
const to = `/plugins/${pluginId}/${targetModel}/${
value ? value.id : null
}?redirectUrl=${nextSearch}`;
}?source=${source}&redirectUrl=${nextSearch}`;
const link =
value === null ||
value === undefined ||
@ -185,6 +186,7 @@ function SelectWrapper({
placeholder
)
}
source={source}
targetModel={targetModel}
value={value}
/>

View File

@ -1,6 +1,6 @@
{
"name": "strapi-plugin-content-manager",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "A powerful UI to easily manage your data.",
"strapi": {
"name": "Content Manager",
@ -32,8 +32,8 @@
"redux-immutable": "^4.0.0",
"reselect": "^3.0.1",
"showdown": "^1.9.0",
"strapi-helper-plugin": "3.0.0-beta.16.6",
"strapi-utils": "3.0.0-beta.16.6",
"strapi-helper-plugin": "3.0.0-beta.16.7",
"strapi-utils": "3.0.0-beta.16.7",
"styled-components": "^4.2.0",
"yup": "^0.27.0"
},

View File

@ -177,7 +177,7 @@ function appReducer(state = initialState, action) {
return newAttribute;
});
if (target === modelName && nature !== 'oneWay') {
if (target === modelName && nature !== 'oneWay' && nature !== 'manyWay') {
newState = newState.updateIn([...basePath, 'attributes', key], () => {
const newAttribute = state
.get('temporaryAttributeRelation')

View File

@ -1,6 +1,6 @@
{
"name": "strapi-plugin-content-type-builder",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Strapi plugin to create content type (API).",
"strapi": {
"name": "Content Type Builder",
@ -29,9 +29,9 @@
"redux": "^4.0.1",
"redux-immutable": "^4.0.0",
"reselect": "^3.0.1",
"strapi-generate": "3.0.0-beta.16.6",
"strapi-generate-api": "3.0.0-beta.16.6",
"strapi-helper-plugin": "3.0.0-beta.16.6",
"strapi-generate": "3.0.0-beta.16.7",
"strapi-generate-api": "3.0.0-beta.16.7",
"strapi-helper-plugin": "3.0.0-beta.16.7",
"yup": "^0.27.0"
},
"author": {

View File

@ -1,6 +1,6 @@
{
"name": "strapi-plugin-documentation",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "This is the description of the plugin.",
"strapi": {
"name": "Documentation",
@ -32,7 +32,7 @@
"redux": "^4.0.1",
"redux-immutable": "^4.0.0",
"reselect": "^4.0.0",
"strapi-helper-plugin": "3.0.0-beta.16.6",
"strapi-helper-plugin": "3.0.0-beta.16.7",
"swagger-ui-dist": "3.22.1"
},
"author": {

View File

@ -1,6 +1,6 @@
{
"name": "strapi-plugin-email",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "This is the description of the plugin.",
"strapi": {
"name": "Email",
@ -12,13 +12,13 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
"strapi-provider-email-sendmail": "3.0.0-beta.16.6",
"strapi-utils": "3.0.0-beta.16.6"
"strapi-provider-email-sendmail": "3.0.0-beta.16.7",
"strapi-utils": "3.0.0-beta.16.7"
},
"devDependencies": {
"react-copy-to-clipboard": "5.0.1",
"rimraf": "^2.6.3",
"strapi-helper-plugin": "3.0.0-beta.16.6"
"strapi-helper-plugin": "3.0.0-beta.16.7"
},
"author": {
"name": "Strapi team",

View File

@ -1,6 +1,6 @@
{
"name": "strapi-plugin-graphql",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "This is the description of the plugin.",
"strapi": {
"name": "graphql",
@ -23,7 +23,7 @@
"graphql-type-long": "^0.1.1",
"koa-compose": "^4.1.0",
"pluralize": "^7.0.0",
"strapi-utils": "3.0.0-beta.16.6"
"strapi-utils": "3.0.0-beta.16.7"
},
"devDependencies": {
"cross-env": "^5.2.0",

View File

@ -1,6 +1,6 @@
{
"name": "strapi-plugin-settings-manager",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Strapi plugin to manage settings.",
"strapi": {
"name": "Settings Manager",
@ -27,7 +27,7 @@
"redux": "^4.0.1",
"reselect": "^3.0.1",
"shelljs": "^0.7.8",
"strapi-helper-plugin": "3.0.0-beta.16.6"
"strapi-helper-plugin": "3.0.0-beta.16.7"
},
"author": {
"name": "Strapi team",

View File

@ -1,6 +1,6 @@
{
"name": "strapi-plugin-upload",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "This is the description of the plugin.",
"strapi": {
"name": "Files Upload",
@ -23,9 +23,9 @@
"react-router-dom": "^5.0.0",
"react-transition-group": "^2.5.0",
"reactstrap": "^5.0.0",
"strapi-helper-plugin": "3.0.0-beta.16.6",
"strapi-provider-upload-local": "3.0.0-beta.16.6",
"strapi-utils": "3.0.0-beta.16.6",
"strapi-helper-plugin": "3.0.0-beta.16.7",
"strapi-provider-upload-local": "3.0.0-beta.16.7",
"strapi-utils": "3.0.0-beta.16.7",
"stream-to-array": "^2.3.0",
"uuid": "^3.2.1"
},

View File

@ -1,6 +1,6 @@
{
"name": "strapi-plugin-users-permissions",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Protect your API with a full-authentication process based on JWT",
"strapi": {
"name": "Roles & Permissions",
@ -31,8 +31,8 @@
"reactstrap": "^5.0.0",
"redux-saga": "^0.16.0",
"request": "^2.83.0",
"strapi-helper-plugin": "3.0.0-beta.16.6",
"strapi-utils": "3.0.0-beta.16.6",
"strapi-helper-plugin": "3.0.0-beta.16.7",
"strapi-utils": "3.0.0-beta.16.7",
"uuid": "^3.1.0"
},
"devDependencies": {

View File

@ -1,6 +1,6 @@
{
"name": "strapi-provider-email-amazon-ses",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Amazon SES provider for strapi email",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-provider-email-mailgun",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Mailgun provider for strapi email plugin",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-provider-email-sendgrid",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Sendgrid provider for strapi email",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-provider-email-sendmail",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Sendmail provider for strapi email",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,4 +1,4 @@
# strapi-provider-upload-local
# strapi-provider-upload-s3
## Resources

View File

@ -1,6 +1,6 @@
{
"name": "strapi-provider-upload-aws-s3",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "AWS S3 provider for strapi upload",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-provider-upload-cloudinary",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Cloudinary provider for strapi upload",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-provider-upload-local",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Local provider for strapi upload",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi-provider-upload-rackspace",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Rackspace provider for strapi upload",
"main": "./lib",
"keywords": [],

View File

@ -1,6 +1,6 @@
{
"name": "strapi-utils",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"description": "Shared utilities for the Strapi packages",
"homepage": "http://strapi.io",
"keywords": [

View File

@ -1,6 +1,6 @@
{
"name": "strapi",
"version": "3.0.0-beta.16.6",
"version": "3.0.0-beta.16.7",
"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: MongoDB, MySQL, MariaDB, PostgreSQL, SQLite",
"homepage": "http://strapi.io",
"directories": {
@ -47,15 +47,15 @@
"resolve-cwd": "^3.0.0",
"rimraf": "^2.6.2",
"shelljs": "^0.8.3",
"strapi-generate": "3.0.0-beta.16.6",
"strapi-generate-api": "3.0.0-beta.16.6",
"strapi-generate-controller": "3.0.0-beta.16.6",
"strapi-generate-model": "3.0.0-beta.16.6",
"strapi-generate-new": "3.0.0-beta.16.6",
"strapi-generate-plugin": "3.0.0-beta.16.6",
"strapi-generate-policy": "3.0.0-beta.16.6",
"strapi-generate-service": "3.0.0-beta.16.6",
"strapi-utils": "3.0.0-beta.16.6"
"strapi-generate": "3.0.0-beta.16.7",
"strapi-generate-api": "3.0.0-beta.16.7",
"strapi-generate-controller": "3.0.0-beta.16.7",
"strapi-generate-model": "3.0.0-beta.16.7",
"strapi-generate-new": "3.0.0-beta.16.7",
"strapi-generate-plugin": "3.0.0-beta.16.7",
"strapi-generate-policy": "3.0.0-beta.16.7",
"strapi-generate-service": "3.0.0-beta.16.7",
"strapi-utils": "3.0.0-beta.16.7"
},
"scripts": {
"test": "jest --verbose",