mirror of
https://github.com/strapi/strapi.git
synced 2025-11-02 10:55:37 +00:00
Merge branch 'master' into fix/ctm-edit-view-main-field
This commit is contained in:
commit
83f0bb012a
@ -40,7 +40,7 @@
|
||||
|
||||
## Getting Started
|
||||
|
||||
<a href="https://strapi.io/getting-started" target="_blank">Read the Getting Started tutorial</a> or follow the steps below:
|
||||
<a href="https://strapi.io/documentation/3.x.x/getting-started/installation.html" target="_blank">Read the Getting Started tutorial</a> or follow the steps below:
|
||||
|
||||
#### 🖐 Requirements
|
||||
|
||||
|
||||
@ -1,27 +1,27 @@
|
||||
# API Reference
|
||||
|
||||
- strapi
|
||||
- [.admin](#strapiadmin)
|
||||
- [.api](#strapiapi)
|
||||
- [.admin](#strapi-admin)
|
||||
- [.api](#strapi-api)
|
||||
- [.app](#strapiapp)
|
||||
- [.bootstrap()](#strapibootstrap)
|
||||
- [.config](#strapiconfig)
|
||||
- [.controllers](#strapicontrollers)
|
||||
- [.hook](#strapihook)
|
||||
- [.koaMiddlewares](#strapikoaMiddlewares)
|
||||
- [.load()](#strapiload)
|
||||
- [.log](#strapilog)
|
||||
- [.middleware](#strapimiddleware)
|
||||
- [.models](#strapimodels)
|
||||
- [.plugins](#strapiplugins)
|
||||
- [.query()](#strapiquery)
|
||||
- [.reload()](#strapireload)
|
||||
- [.router](#strapirouter)
|
||||
- [.server](#strapiserver)
|
||||
- [.services](#strapiservices)
|
||||
- [.start()](#strapistart)
|
||||
- [.stop()](#strapistop)
|
||||
- [.utils](#strapiutils)
|
||||
- [.bootstrap()](#strapi-bootstrap)
|
||||
- [.config](#strapi-config)
|
||||
- [.controllers](#strapi-controllers)
|
||||
- [.hook](#strapi-hook)
|
||||
- [.koaMiddlewares](#strapi-koaMiddlewares)
|
||||
- [.load()](#strapi-load)
|
||||
- [.log](#strapi-log)
|
||||
- [.middleware](#strapi-middleware)
|
||||
- [.models](#strapi-models)
|
||||
- [.plugins](#strapi-plugins)
|
||||
- [.query()](#strapi-query)
|
||||
- [.reload()](#strapi-reload)
|
||||
- [.router](#strapi-router)
|
||||
- [.server](#strapi-server)
|
||||
- [.services](#strapi-services)
|
||||
- [.start()](#strapi-start)
|
||||
- [.stop()](#strapi-stop)
|
||||
- [.utils](#strapi-utils)
|
||||
|
||||
|
||||
## strapi.admin
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
### Docker
|
||||
|
||||
::: tip
|
||||
You can also deploy using [Docker](https://hub.docker.com/r/strapi/strapi])
|
||||
You can also deploy using [Docker](https://hub.docker.com/r/strapi/strapi)
|
||||
:::
|
||||
|
||||
The method below describes regular deployment using the built-in mechanisms.
|
||||
|
||||
@ -27,6 +27,8 @@ Easily filter results according to fields values.
|
||||
- `_in`: Include in array
|
||||
- `_contains`: Contains
|
||||
- `_containss`: Contains case sensitive
|
||||
- `_in`: Matches any value in the array of values
|
||||
- `_nin`: Doesn't match any value in the array of values
|
||||
|
||||
#### Examples
|
||||
|
||||
|
||||
@ -197,6 +197,8 @@ You can also apply different parameters to the query to make more complex querie
|
||||
- `<field>_gte`: Greater than or equal to.
|
||||
- `<field>_contains`: Contains.
|
||||
- `<field>_containss`: Contains sensitive.
|
||||
- `<field>_in`: Matches any value in the array of values.
|
||||
- `<field>_nin`: Doesn't match any value in the array of values.
|
||||
|
||||
Return the second decade of users which have an email that contains `@strapi.io` ordered by username.
|
||||
|
||||
@ -207,6 +209,10 @@ query {
|
||||
}) {
|
||||
username
|
||||
email
|
||||
},
|
||||
books(limit: 10, where: { _id_nin: ["5c4dad1a8f3845222ca88a56", "5c4dad1a8f3845222ca88a57"] }) {
|
||||
_id,
|
||||
title
|
||||
}
|
||||
}
|
||||
```
|
||||
@ -275,9 +281,9 @@ type Query {
|
||||
|
||||
// Mutations to create, update or delete a post.
|
||||
type Mutation {
|
||||
createProduct(input: createProductInput): createProductPayload!
|
||||
updateProduct(input: updateProductInput): updateProductPayload!
|
||||
deleteProduct(input: deleteProductInput): deleteProductPayload!
|
||||
createPost(input: createPostInput): createPostPayload!
|
||||
updatePost(input: updatePostInput): updatePostPayload!
|
||||
deletePost(input: deletePostInput): deletePostPayload!
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
@ -26,6 +26,8 @@ Easily filter results according to fields values.
|
||||
- `_gte`: Greater than or equal to
|
||||
- `_contains`: Contains
|
||||
- `_containss`: Contains case sensitive
|
||||
- `_in`: Matches any value in the array of values
|
||||
- `_nin`: Doesn't match any value in the array of values
|
||||
|
||||
#### Examples
|
||||
|
||||
|
||||
@ -27,3 +27,5 @@
|
||||
- [Migration guide from alpha.18 to alpha.19](migration-guide-alpha.18-to-alpha.19.md)
|
||||
- [Migration guide from alpha.19 to alpha.20](migration-guide-alpha.19-to-alpha.20.md)
|
||||
- [Migration guide from alpha.20 to alpha.21](migration-guide-alpha.20-to-alpha.21.md)
|
||||
- [Migration guide from alpha.21 to alpha.22](migration-guide-alpha.21-to-alpha.22.md)
|
||||
- [Migration guide from alpha.22 to alpha.23](migration-guide-alpha.22-to-alpha.23.md)
|
||||
|
||||
@ -0,0 +1,67 @@
|
||||
# Migration guide from alpha.21 to alpha.22
|
||||
|
||||
**Here are the major changes:**
|
||||
|
||||
- Quickstart install `strapi new myApp --quickstart`
|
||||
- Support SQLite database
|
||||
- Some fixes on GraphQL
|
||||
- Update the Content Manager customer view
|
||||
|
||||
**Useful links:**
|
||||
- Changelog: [https://github.com/strapi/strapi/releases/tag/v3.0.0-alpha.22](https://github.com/strapi/strapi/releases/tag/v3.0.0-alpha.22)
|
||||
- GitHub diff: [https://github.com/strapi/strapi/compare/v3.0.0-alpha.21...v3.0.0-alpha.22](https://github.com/strapi/strapi/compare/v3.0.0-alpha.21...v3.0.0-alpha.22)
|
||||
|
||||
<br>
|
||||
|
||||
::: note
|
||||
Feel free to [join us on Slack](http://slack.strapi.io) and ask questions about the migration process.
|
||||
:::
|
||||
|
||||
<br>
|
||||
|
||||
## Getting started
|
||||
|
||||
Install Strapi `alpha.22` globally on your computer. To do so run `npm install strapi@3.0.0-alpha.22 -g`.
|
||||
|
||||
When it's done, generate a new empty project `strapi new myNewProject` (don't pay attention to the database configuration).
|
||||
|
||||
<br>
|
||||
|
||||
## Update node modules
|
||||
|
||||
Update the Strapi's dependencies version (move Strapi's dependencies to `3.0.0-alpha.22` version) of your project.
|
||||
|
||||
Run `npm install strapi@3.0.0-alpha.22 --save` to update your strapi version.
|
||||
|
||||
<br>
|
||||
|
||||
## Update the Admin
|
||||
|
||||
::: note
|
||||
If you performed updates in the Admin, you will have to manually migrate your changes.
|
||||
:::
|
||||
|
||||
Delete your old admin folder and replace it with the new one.
|
||||
|
||||
<br>
|
||||
|
||||
## Update the Plugins
|
||||
|
||||
::: note
|
||||
If you did a custom update on one of the plugins, you will have to manually migrate your update.
|
||||
:::
|
||||
|
||||
Copy the fields and relations you had in your `/plugins/users-permissions/models/User.settings.json` and `/plugins/users-permissions/config/jwt.json` file in the new one.
|
||||
|
||||
Then, delete your old `plugins` folder and replace it with the new one.
|
||||
|
||||
<br>
|
||||
|
||||
## Update AWS S3 provider
|
||||
|
||||
If you are using the AWS S3 upload provider you will have to install the new version `npm i strapi-provider-upload-aws-s3 --save`.
|
||||
It will not break your application. In the new version the region `eu-north-1 (Stockholm)` is available.
|
||||
|
||||
<br>
|
||||
|
||||
That's all, you have now upgraded to Strapi `alpha.22`.
|
||||
@ -0,0 +1,58 @@
|
||||
# Migration guide from alpha.22 to alpha.23
|
||||
|
||||
**Here are the major changes:**
|
||||
|
||||
- Fix send email user register
|
||||
- Documentation
|
||||
|
||||
**Useful links:**
|
||||
- Changelog: [https://github.com/strapi/strapi/releases/tag/v3.0.0-alpha.23](https://github.com/strapi/strapi/releases/tag/v3.0.0-alpha.23)
|
||||
- GitHub diff: [https://github.com/strapi/strapi/compare/v3.0.0-alpha.22...v3.0.0-alpha.23](https://github.com/strapi/strapi/compare/v3.0.0-alpha.22...v3.0.0-alpha.23)
|
||||
|
||||
<br>
|
||||
|
||||
::: note
|
||||
Feel free to [join us on Slack](http://slack.strapi.io) and ask questions about the migration process.
|
||||
:::
|
||||
|
||||
<br>
|
||||
|
||||
## Getting started
|
||||
|
||||
Install Strapi `alpha.23` globally on your computer. To do so run `npm install strapi@3.0.0-alpha.23 -g`.
|
||||
|
||||
When it's done, generate a new empty project `strapi new myNewProject` (don't pay attention to the database configuration).
|
||||
|
||||
<br>
|
||||
|
||||
## Update node modules
|
||||
|
||||
Update the Strapi's dependencies version (move Strapi's dependencies to `3.0.0-alpha.23` version) of your project.
|
||||
|
||||
Run `npm install strapi@3.0.0-alpha.23 --save` to update your strapi version.
|
||||
|
||||
<br>
|
||||
|
||||
## Update the Admin
|
||||
|
||||
::: note
|
||||
If you performed updates in the Admin, you will have to manually migrate your changes.
|
||||
:::
|
||||
|
||||
Delete your old admin folder and replace it with the new one.
|
||||
|
||||
<br>
|
||||
|
||||
## Update the Plugins
|
||||
|
||||
::: note
|
||||
If you did a custom update on one of the plugins, you will have to manually migrate your update.
|
||||
:::
|
||||
|
||||
Copy the fields and relations you had in your `/plugins/users-permissions/models/User.settings.json` and `/plugins/users-permissions/config/jwt.json` file in the new one.
|
||||
|
||||
Then, delete your old `plugins` folder and replace it with the new one.
|
||||
|
||||
<br>
|
||||
|
||||
That's all, you have now upgraded to Strapi `alpha.23`.
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"private": true,
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
"assert": "~1.3.0",
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-admin",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Strapi Admin",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -31,8 +31,8 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"sanitize.css": "^4.1.0",
|
||||
"strapi-helper-plugin": "3.0.0-alpha.21",
|
||||
"strapi-utils": "3.0.0-alpha.21"
|
||||
"strapi-helper-plugin": "3.0.0-alpha.23.1",
|
||||
"strapi-utils": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "Strapi",
|
||||
@ -51,4 +51,4 @@
|
||||
"npm": ">= 6.0.0"
|
||||
},
|
||||
"license": "MIT"
|
||||
}
|
||||
}
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate-admin",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Generate the default admin panel for a Strapi application.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
@ -15,8 +15,8 @@
|
||||
"dependencies": {
|
||||
"fs-extra": "^4.0.1",
|
||||
"lodash": "^4.17.5",
|
||||
"strapi-admin": "3.0.0-alpha.21",
|
||||
"strapi-utils": "3.0.0-alpha.21"
|
||||
"strapi-admin": "3.0.0-alpha.23.1",
|
||||
"strapi-utils": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"email": "hi@strapi.io",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate-api",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Generate an API for a Strapi application.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -31,7 +31,7 @@ module.exports = {
|
||||
|
||||
return <%= globalID %>.query(function(qb) {
|
||||
_.forEach(filters.where, (where, key) => {
|
||||
if (_.isArray(where.value) && where.symbol !== 'IN') {
|
||||
if (_.isArray(where.value) && where.symbol !== 'IN' && where.symbol !== 'NOT IN') {
|
||||
for (const value in where.value) {
|
||||
qb[value ? 'where' : 'orWhere'](key, where.symbol, where.value[value])
|
||||
}
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate-controller",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Generate a controller for a Strapi API.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate-model",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Generate a model for a Strapi API.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -6,13 +6,13 @@ module.exports = scope => {
|
||||
// All available settings (bookshelf and mongoose)
|
||||
const settingsBase = {
|
||||
client: scope.client.database,
|
||||
host: '${process.env.DATABASE_HOST || \'127.0.0.1\' }',
|
||||
port: '${process.env.DATABASE_PORT || 27017 }',
|
||||
srv: '${process.env.DATABASE_SRV || false }',
|
||||
database: '${process.env.DATABASE_NAME || \'strapi\' }',
|
||||
username: '${process.env.DATABASE_USERNAME || \'\' }',
|
||||
password: '${process.env.DATABASE_PASSWORD || \'\' }',
|
||||
ssl: '${process.env.DATABASE_SSL || false }'
|
||||
host: '${process.env.DATABASE_HOST || \'127.0.0.1\'}',
|
||||
port: '${process.env.DATABASE_PORT || 27017}',
|
||||
srv: '${process.env.DATABASE_SRV || false}',
|
||||
database: '${process.env.DATABASE_NAME || \'strapi\'}',
|
||||
username: '${process.env.DATABASE_USERNAME || \'\'}',
|
||||
password: '${process.env.DATABASE_PASSWORD || \'\'}',
|
||||
ssl: '${process.env.DATABASE_SSL || false}'
|
||||
};
|
||||
|
||||
// Apply only settings set during the configuration
|
||||
@ -22,8 +22,8 @@ module.exports = scope => {
|
||||
|
||||
// All available options (bookshelf and mongoose)
|
||||
const optionsBase = {
|
||||
ssl: '${process.env.DATABASE_SSL || false }',
|
||||
authenticationDatabase: '${process.env.DATABASE_AUTHENTICATION_DATABASE || \'\' }'
|
||||
ssl: '${process.env.DATABASE_SSL || false}',
|
||||
authenticationDatabase: '${process.env.DATABASE_AUTHENTICATION_DATABASE || \'\'}'
|
||||
};
|
||||
|
||||
// Apply only options set during the configuration
|
||||
|
||||
@ -83,6 +83,7 @@ module.exports = (scope, cb) => {
|
||||
'cache-min': 999999999
|
||||
}, err => {
|
||||
if (err) {
|
||||
trackSuccess('didNotInstallProjectDependencies', scope);
|
||||
console.log();
|
||||
console.log('⚠️ You should run `npm install` into your application before starting it.');
|
||||
console.log();
|
||||
@ -106,8 +107,10 @@ module.exports = (scope, cb) => {
|
||||
const data = shell.exec(`yarn --cwd ${scope.rootPath} add ${alphaDependencies} --production`, { silent: true });
|
||||
|
||||
if (data.stderr && data.code !== 0) {
|
||||
trackSuccess('didNotInstallProjectDependencies', scope);
|
||||
cb();
|
||||
}
|
||||
|
||||
pluginsInstallation();
|
||||
}
|
||||
} else {
|
||||
@ -150,6 +153,7 @@ module.exports = (scope, cb) => {
|
||||
loader = ora(`Install plugin ${cyan(defaultPlugin.name)}.`).start();
|
||||
exec(`node ${strapiBin} install ${defaultPlugin.name} ${scope.developerMode && defaultPlugin.core ? '--dev' : ''}`, (err) => {
|
||||
if (err) {
|
||||
trackSuccess('didNotInstallProjectPlugins', scope);
|
||||
loader.warn(`An error occurred during ${defaultPlugin.name} plugin installation.`);
|
||||
console.log(err);
|
||||
return resolve();
|
||||
|
||||
@ -104,7 +104,7 @@ module.exports = (scope, cb) => {
|
||||
const answers = await inquirer
|
||||
.prompt([
|
||||
{
|
||||
when: !scope.quick,
|
||||
when: !scope.quick && !hasDatabaseConfig,
|
||||
type: 'list',
|
||||
name: 'type',
|
||||
message: 'Choose your installation type',
|
||||
@ -136,7 +136,10 @@ module.exports = (scope, cb) => {
|
||||
const isQuick = scope.quick;
|
||||
|
||||
if (isQuick) {
|
||||
trackSuccess('didChooseQuickstart', scope);
|
||||
answers.client = databaseChoices[0].value;
|
||||
} else {
|
||||
trackSuccess('didChooseCustomDatabase', scope);
|
||||
}
|
||||
|
||||
if (hasDatabaseConfig) {
|
||||
@ -334,6 +337,7 @@ module.exports = (scope, cb) => {
|
||||
try {
|
||||
require(path.join(`${scope.tmpPath}`, '/node_modules/', `${scope.client.connector}/lib/utils/connectivity.js`))(scope, cb.success, connectionValidation);
|
||||
} catch(err) {
|
||||
trackSuccess('didNotConnectDatabase', scope, err);
|
||||
console.log(err);
|
||||
shell.rm('-r', scope.tmpPath);
|
||||
cb.error();
|
||||
|
||||
@ -5,14 +5,21 @@
|
||||
*/
|
||||
|
||||
// Node.js core.
|
||||
const os = require('os');
|
||||
const request = require('request');
|
||||
const { machineIdSync } = require('node-machine-id');
|
||||
|
||||
module.exports = function trackSuccess(event, scope) {
|
||||
module.exports = function trackSuccess(event, scope, error) {
|
||||
request
|
||||
.post('https://analytics.strapi.io/track')
|
||||
.form({
|
||||
event,
|
||||
uuid: scope.uuid
|
||||
uuid: scope.uuid,
|
||||
deviceId: machineIdSync(),
|
||||
properties: {
|
||||
error,
|
||||
os: os.type()
|
||||
}
|
||||
})
|
||||
.on('error', () => {});
|
||||
};
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate-new",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Generate a new Strapi application.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
@ -18,9 +18,10 @@
|
||||
"inquirer": "^6.2.1",
|
||||
"listr": "^0.14.1",
|
||||
"lodash": "^4.17.5",
|
||||
"node-machine-id": "^1.1.10",
|
||||
"ora": "^2.1.0",
|
||||
"request": "^2.88.0",
|
||||
"strapi-utils": "3.0.0-alpha.21",
|
||||
"strapi-utils": "3.0.0-alpha.23.1",
|
||||
"uuid": "^3.1.0"
|
||||
},
|
||||
"scripts": {
|
||||
|
||||
@ -34,7 +34,7 @@ module.exports = scope => {
|
||||
'build': 'node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress',
|
||||
'build:clean': 'node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build',
|
||||
'start': 'node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development node ./node_modules/strapi-helper-plugin/lib/server',
|
||||
'generate': 'node ./node_modules/plop/plop.js --plopfile node_modules/strapi-helper-plugin/lib/internals/generators/index.js',
|
||||
'generate': 'node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js',
|
||||
'lint': 'node ./node_modules/strapi-helper-plugin/node_modules/.bin/eslint --ignore-path .gitignore --ignore-pattern \'/admin/build/\' --config ./node_modules/strapi-helper-plugin/lib/internals/eslint/.eslintrc.json admin',
|
||||
'prettier': 'node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write "{admin,__{tests,mocks}__}/**/*.js"',
|
||||
'test': 'npm run lint',
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate-plugin",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Generate an plugin for a Strapi application.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate-policy",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Generate a policy for a Strapi API.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate-service",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Generate a service for a Strapi API.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-generate",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Master of ceremonies for the Strapi generators.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
@ -17,7 +17,7 @@
|
||||
"fs-extra": "^4.0.0",
|
||||
"lodash": "^4.17.5",
|
||||
"reportback": "^2.0.1",
|
||||
"strapi-utils": "3.0.0-alpha.21"
|
||||
"strapi-utils": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "Strapi team",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-helper-plugin",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Helper for Strapi plugins development",
|
||||
"engines": {
|
||||
"node": ">= 10.0.0",
|
||||
@ -26,6 +26,9 @@
|
||||
"pre-commit": [
|
||||
"lint:admin"
|
||||
],
|
||||
"devDependencies": {
|
||||
"plop": "^2.2.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"add-asset-html-webpack-plugin": "^2.1.2",
|
||||
"babel-cli": "6.26.0",
|
||||
@ -68,7 +71,6 @@
|
||||
"moment": "^2.16.0",
|
||||
"node-sass": "^4.5.3",
|
||||
"null-loader": "^0.1.1",
|
||||
"plop": "^1.8.0",
|
||||
"postcss-cssnext": "^2.11.0",
|
||||
"postcss-focus": "^2.0.0",
|
||||
"postcss-loader": "^2.0.6",
|
||||
|
||||
@ -1107,7 +1107,14 @@ module.exports = function(strapi) {
|
||||
result.key = `where.${key}`;
|
||||
result.value = {
|
||||
symbol: 'IN',
|
||||
value,
|
||||
value: _.castArray(value),
|
||||
};
|
||||
break;
|
||||
case '_nin':
|
||||
result.key = `where.${key}`;
|
||||
result.value = {
|
||||
symbol: 'NOT IN',
|
||||
value: _.castArray(value),
|
||||
};
|
||||
break;
|
||||
default:
|
||||
|
||||
@ -33,8 +33,8 @@ module.exports = (scope, success, error) => {
|
||||
|
||||
knex.raw('select 1+1 as result').then(() => {
|
||||
const selectQueries = {
|
||||
mysql: 'SELECT tablename FROM pg_tables WHERE schemaname=\'public\'',
|
||||
postgres: 'SELECT * FROM information_schema.tables',
|
||||
postgres: 'SELECT tablename FROM pg_tables WHERE schemaname=\'public\'',
|
||||
mysql: 'SELECT * FROM information_schema.tables',
|
||||
sqlite: 'select * from sqlite_master'
|
||||
};
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-hook-bookshelf",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Bookshelf hook for the Strapi framework",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
@ -21,8 +21,8 @@
|
||||
"lodash": "^4.17.5",
|
||||
"pluralize": "^6.0.0",
|
||||
"rimraf": "^2.6.2",
|
||||
"strapi-hook-knex": "3.0.0-alpha.21",
|
||||
"strapi-utils": "3.0.0-alpha.21"
|
||||
"strapi-hook-knex": "3.0.0-alpha.23.1",
|
||||
"strapi-utils": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"strapi": {
|
||||
"dependencies": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-hook-ejs",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "EJS hook for the Strapi framework",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-hook-knex",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Knex hook for the Strapi framework",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -565,7 +565,11 @@ module.exports = function (strapi) {
|
||||
break;
|
||||
case '_in':
|
||||
result.key = `where.${key}.$in`;
|
||||
result.value = value;
|
||||
result.value = _.castArray(value);
|
||||
break;
|
||||
case '_nin':
|
||||
result.key = `where.${key}.$nin`;
|
||||
result.value = _.castArray(value);
|
||||
break;
|
||||
default:
|
||||
result = undefined;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-hook-mongoose",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Mongoose hook for the Strapi framework",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
@ -20,7 +20,7 @@
|
||||
"mongoose-float": "^1.0.3",
|
||||
"pluralize": "^6.0.0",
|
||||
"rimraf": "^2.6.2",
|
||||
"strapi-utils": "3.0.0-alpha.21"
|
||||
"strapi-utils": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"email": "hi@strapi.io",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-hook-redis",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Redis hook for the Strapi framework",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
@ -19,7 +19,7 @@
|
||||
"lodash": "^4.17.5",
|
||||
"rimraf": "^2.6.2",
|
||||
"stack-trace": "0.0.10",
|
||||
"strapi-utils": "3.0.0-alpha.21"
|
||||
"strapi-utils": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"email": "hi@strapi.io",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-lint",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Strapi eslint and prettier configurations",
|
||||
"directories": {
|
||||
"lib": "lib"
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-middleware-views",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Views middleware to enable server-side rendering for the Strapi framework",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -37,6 +37,14 @@ const getFilters = (type) => {
|
||||
id: 'content-manager.components.FilterOptions.FILTER_TYPES._containss',
|
||||
value: '_containss',
|
||||
},
|
||||
{
|
||||
id: 'content-manager.components.FilterOptions.FILTER_TYPES._in',
|
||||
value: '_in',
|
||||
},
|
||||
{
|
||||
id: 'content-manager.components.FilterOptions.FILTER_TYPES._nin',
|
||||
value: '_nin',
|
||||
},
|
||||
];
|
||||
case 'integer':
|
||||
case 'float':
|
||||
@ -67,6 +75,14 @@ const getFilters = (type) => {
|
||||
id: 'content-manager.components.FilterOptions.FILTER_TYPES._gte',
|
||||
value: '_gte',
|
||||
},
|
||||
{
|
||||
id: 'content-manager.components.FilterOptions.FILTER_TYPES._in',
|
||||
value: '_in',
|
||||
},
|
||||
{
|
||||
id: 'content-manager.components.FilterOptions.FILTER_TYPES._nin',
|
||||
value: '_nin',
|
||||
},
|
||||
];
|
||||
default:
|
||||
return [
|
||||
|
||||
@ -13,6 +13,8 @@
|
||||
"components.FilterOptions.FILTER_TYPES._lt": "is lower than",
|
||||
"components.FilterOptions.FILTER_TYPES._lte": "is lower than or equal to",
|
||||
"components.FilterOptions.FILTER_TYPES._ne": "is not",
|
||||
"components.FilterOptions.FILTER_TYPES._in": "matches any value in the array of values",
|
||||
"components.FilterOptions.FILTER_TYPES._nin": "doesn't match any value in the array of values",
|
||||
"components.FilterOptions.button.apply": "Apply",
|
||||
"components.FiltersPickWrapper.PluginHeader.actions.apply": "Apply",
|
||||
"components.FiltersPickWrapper.PluginHeader.actions.clearAll": "Clear all",
|
||||
|
||||
@ -4,9 +4,9 @@ module.exports = {
|
||||
find: async function (params, populate, raw = false) {
|
||||
return this.query(function(qb) {
|
||||
_.forEach(params.where, (where, key) => {
|
||||
if (_.isArray(where.value) && where.symbol !== 'IN') {
|
||||
if (_.isArray(where.value) && where.symbol !== 'IN' && where.symbol !== 'NOT IN') {
|
||||
for (const value in where.value) {
|
||||
qb[value ? 'where' : 'orWhere'](key, where.symbol, where.value[value]);
|
||||
qb[parseInt(value) ? 'orWhere' : 'where'](key, where.symbol, where.value[value]);
|
||||
}
|
||||
} else {
|
||||
qb.where(key, where.symbol, where.value);
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-plugin-content-manager",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "A powerful UI to easily manage your data.",
|
||||
"strapi": {
|
||||
"name": "Content Manager",
|
||||
@ -16,7 +16,7 @@
|
||||
"build": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node ./node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress",
|
||||
"build:clean": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build",
|
||||
"start": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development PLUGIN=true node ./node_modules/strapi-helper-plugin/lib/server",
|
||||
"generate": "node ./node_modules/plop/plop.js --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"prettier": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write \"{admin,__{tests,mocks}__}/**/*.js\"",
|
||||
"test": "echo \"Error: no test specified\"",
|
||||
"prepublishOnly": "IS_MONOREPO=true npm run build"
|
||||
@ -26,7 +26,7 @@
|
||||
"draft-js": "^0.10.5",
|
||||
"react-select": "^1.2.1",
|
||||
"showdown": "^1.8.6",
|
||||
"strapi-helper-plugin": "3.0.0-alpha.21"
|
||||
"strapi-helper-plugin": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"pluralize": "^7.0.0"
|
||||
|
||||
@ -86,6 +86,7 @@ module.exports = {
|
||||
|
||||
strapi.reload();
|
||||
} catch (e) {
|
||||
strapi.emit('didNotCreateContentType', e);
|
||||
return ctx.badRequest(null, [{ messages: [{ id: 'request.error.model.write' }] }]);
|
||||
}
|
||||
} catch (e) {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-plugin-content-type-builder",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Strapi plugin to create content type (API).",
|
||||
"strapi": {
|
||||
"name": "Content Type Builder",
|
||||
@ -16,7 +16,7 @@
|
||||
"build": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress",
|
||||
"build:clean": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build",
|
||||
"start": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development node ./node_modules/strapi-helper-plugin/lib/server",
|
||||
"generate": "node ./node_modules/plop/plop.js --plopfile node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"prettier": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write \"{admin,__{tests,mocks}__}/**/*.js\"",
|
||||
"test": "echo \"Error: no test specified\"",
|
||||
"prepublishOnly": "IS_MONOREPO=true npm run build"
|
||||
@ -24,11 +24,11 @@
|
||||
"dependencies": {
|
||||
"immutable": "^3.8.2",
|
||||
"pluralize": "^7.0.0",
|
||||
"strapi-generate": "3.0.0-alpha.21",
|
||||
"strapi-generate-api": "3.0.0-alpha.21"
|
||||
"strapi-generate": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-api": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"strapi-helper-plugin": "3.0.0-alpha.21"
|
||||
"strapi-helper-plugin": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "Strapi team",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-plugin-documentation",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "This is the description of the plugin.",
|
||||
"strapi": {
|
||||
"name": "Documentation",
|
||||
@ -16,7 +16,7 @@
|
||||
"build": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress",
|
||||
"build:clean": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build",
|
||||
"start": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development node ./node_modules/strapi-helper-plugin/lib/server",
|
||||
"generate": "node ./node_modules/plop/plop.js --plopfile node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"lint": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/eslint --ignore-path .gitignore --ignore-pattern '/admin/build/' --config ./node_modules/strapi-helper-plugin/lib/internals/eslint/.eslintrc.json admin",
|
||||
"prettier": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write \"{admin,__{tests,mocks}__}/**/*.js\"",
|
||||
"test": "npm run lint",
|
||||
@ -29,7 +29,7 @@
|
||||
"swagger-ui-dist": "^3.18.3-republish2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"strapi-helper-plugin": "3.0.0-alpha.21"
|
||||
"strapi-helper-plugin": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "soupette",
|
||||
|
||||
@ -108,5 +108,25 @@
|
||||
"type": "string"
|
||||
},
|
||||
"deprecated": false
|
||||
},
|
||||
{
|
||||
"name": "_in",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"description": "Get records that matches any value in the array of values",
|
||||
"schema": {
|
||||
"type": "array"
|
||||
},
|
||||
"deprecated": false
|
||||
},
|
||||
{
|
||||
"name": "_nin",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"description": "Get records that doesn't match any value in the array of values",
|
||||
"schema": {
|
||||
"type": "array"
|
||||
},
|
||||
"deprecated": false
|
||||
}
|
||||
]
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-plugin-email",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "This is the description of the plugin.",
|
||||
"strapi": {
|
||||
"name": "Email",
|
||||
@ -16,17 +16,17 @@
|
||||
"build": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress",
|
||||
"build:clean": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build",
|
||||
"start": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development node ./node_modules/strapi-helper-plugin/lib/server",
|
||||
"generate": "node ./node_modules/plop/plop.js --plopfile node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"prettier": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write \"{admin,__{tests,mocks}__}/**/*.js\"",
|
||||
"test": "echo \"Error: no test specified\"",
|
||||
"prepublishOnly": "IS_MONOREPO=true npm run build"
|
||||
},
|
||||
"dependencies": {
|
||||
"strapi-provider-email-sendmail": "3.0.0-alpha.21"
|
||||
"strapi-provider-email-sendmail": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"react-copy-to-clipboard": "5.0.1",
|
||||
"strapi-helper-plugin": "3.0.0-alpha.21"
|
||||
"strapi-helper-plugin": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "Strapi team",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-plugin-graphql",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "This is the description of the plugin.",
|
||||
"strapi": {
|
||||
"name": "graphql",
|
||||
@ -16,7 +16,7 @@
|
||||
"build": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress",
|
||||
"build:clean": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build",
|
||||
"start": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development node ./node_modules/strapi-helper-plugin/lib/server",
|
||||
"generate": "node ./node_modules/plop/plop.js --plopfile node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"prettier": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write \"{admin,__{tests,mocks}__}/**/*.js\"",
|
||||
"test": "echo \"Error: no test specified\""
|
||||
},
|
||||
@ -31,7 +31,7 @@
|
||||
"graphql-type-datetime": "^0.2.2",
|
||||
"graphql-type-json": "^0.2.1",
|
||||
"pluralize": "^7.0.0",
|
||||
"strapi-utils": "3.0.0-alpha.21"
|
||||
"strapi-utils": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "A Strapi developer",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-plugin-settings-manager",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Strapi plugin to manage settings.",
|
||||
"strapi": {
|
||||
"name": "Settings Manager",
|
||||
@ -16,7 +16,7 @@
|
||||
"build": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress",
|
||||
"build:clean": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build",
|
||||
"start": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development node ./node_modules/strapi-helper-plugin/lib/server",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"lint": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/eslint --ignore-path .gitignore --ignore-pattern '/admin/build/' --config ./node_modules/strapi-helper-plugin/lib/internals/eslint/.eslintrc.json admin",
|
||||
"prettier": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write \"{admin,__{tests,mocks}__}/**/*.js\"",
|
||||
"test": "npm run lint",
|
||||
@ -25,7 +25,7 @@
|
||||
"devDependencies": {
|
||||
"flag-icon-css": "^2.8.0",
|
||||
"react-select": "^1.0.0-rc.5",
|
||||
"strapi-helper-plugin": "3.0.0-alpha.21"
|
||||
"strapi-helper-plugin": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "Strapi team",
|
||||
|
||||
@ -6,7 +6,7 @@ module.exports = {
|
||||
Object.keys(params.where).forEach((key) => {
|
||||
const where = params.where[key];
|
||||
|
||||
if (Array.isArray(where.value)) {
|
||||
if (Array.isArray(where.value) && where.symbol !== 'IN' && where.symbol !== 'NOT IN') {
|
||||
for (const value in where.value) {
|
||||
qb[value ? 'where' : 'orWhere'](key, where.symbol, where.value[value]);
|
||||
}
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-plugin-upload",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "This is the description of the plugin.",
|
||||
"strapi": {
|
||||
"name": "Files Upload",
|
||||
@ -16,18 +16,18 @@
|
||||
"build": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress",
|
||||
"build:clean": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build",
|
||||
"start": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development node ./node_modules/strapi-helper-plugin/lib/server",
|
||||
"generate": "node ./node_modules/plop/plop.js --plopfile node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"prettier": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write \"{admin,__{tests,mocks}__}/**/*.js\"",
|
||||
"test": "echo \"Error: no test specified\"",
|
||||
"prepublishOnly": "IS_MONOREPO=true npm run build"
|
||||
},
|
||||
"dependencies": {
|
||||
"strapi-provider-upload-local": "3.0.0-alpha.21",
|
||||
"strapi-provider-upload-local": "3.0.0-alpha.23.1",
|
||||
"stream-to-array": "^2.3.0",
|
||||
"uuid": "^3.2.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"strapi-helper-plugin": "3.0.0-alpha.21"
|
||||
"strapi-helper-plugin": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "A Strapi developer",
|
||||
|
||||
@ -42,6 +42,7 @@ module.exports = {
|
||||
const buffer = Buffer.concat(buffers);
|
||||
|
||||
return {
|
||||
tmpPath: stream.path,
|
||||
name: stream.name,
|
||||
sha256: niceHash(buffer),
|
||||
hash: uuid().replace(/-/g, ''),
|
||||
@ -83,7 +84,11 @@ module.exports = {
|
||||
|
||||
file.provider = provider.provider;
|
||||
|
||||
return await strapi.plugins['upload'].services.upload.add(file);
|
||||
const res = await strapi.plugins['upload'].services.upload.add(file);
|
||||
|
||||
// Remove temp file
|
||||
fs.unlinkSync(file.tmpPath);
|
||||
return res;
|
||||
}),
|
||||
);
|
||||
},
|
||||
@ -209,4 +214,4 @@ module.exports = {
|
||||
}),
|
||||
);
|
||||
},
|
||||
};
|
||||
};
|
||||
@ -5,7 +5,7 @@ module.exports = {
|
||||
find: async function (params = {}, populate) {
|
||||
const records = await this.query(function(qb) {
|
||||
_.forEach(params.where, (where, key) => {
|
||||
if (_.isArray(where.value)) {
|
||||
if (_.isArray(where.value) && where.symbol !== 'IN' && where.symbol !== 'NOT IN') {
|
||||
for (const value in where.value) {
|
||||
qb[value ? 'where' : 'orWhere'](key, where.symbol, where.value[value]);
|
||||
}
|
||||
|
||||
@ -315,7 +315,7 @@ module.exports = {
|
||||
try {
|
||||
// Send an email to the user.
|
||||
await strapi.plugins['email'].services.email.send({
|
||||
to: user.email,
|
||||
to: (user.toJSON ? user.toJSON() : user).email,
|
||||
from: (settings.from.email && settings.from.name) ? `"${settings.from.name}" <${settings.from.email}>` : undefined,
|
||||
replyTo: settings.response_email,
|
||||
subject: settings.object,
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-plugin-users-permissions",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Protect your API with a full-authentication process based on JWT",
|
||||
"strapi": {
|
||||
"name": "Roles & Permissions",
|
||||
@ -16,7 +16,7 @@
|
||||
"build": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=production node node_modules/strapi-helper-plugin/node_modules/.bin/webpack --config node_modules/strapi-helper-plugin/lib/internals/webpack/webpack.prod.babel.js --color -p --progress",
|
||||
"build:clean": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/rimraf admin/build",
|
||||
"start": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/cross-env NODE_ENV=development node ./node_modules/strapi-helper-plugin/lib/server",
|
||||
"generate": "node ./node_modules/plop/plop.js --plopfile node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"generate": "node ./node_modules/strapi-helper-plugin/node_modules/plop --plopfile ./node_modules/strapi-helper-plugin/lib/internals/generators/index.js",
|
||||
"prettier": "node ./node_modules/strapi-helper-plugin/node_modules/.bin/prettier --single-quote --trailing-comma es5 --write \"{admin,__{tests,mocks}__}/**/*.js\"",
|
||||
"test": "echo \"Error: no test specified\"",
|
||||
"prepublishOnly": "IS_MONOREPO=true npm run build"
|
||||
@ -29,11 +29,11 @@
|
||||
"koa2-ratelimit": "^0.6.1",
|
||||
"purest": "^2.0.1",
|
||||
"request": "^2.83.0",
|
||||
"strapi-utils": "3.0.0-alpha.21",
|
||||
"strapi-utils": "3.0.0-alpha.23.1",
|
||||
"uuid": "^3.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"strapi-helper-plugin": "3.0.0-alpha.21"
|
||||
"strapi-helper-plugin": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"author": {
|
||||
"name": "Strapi team",
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-provider-email-amazon-ses",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Amazon SES provider for strapi email",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-provider-email-mailgun",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Mailgun provider for strapi email plugin",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-provider-email-sendgrid",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Sendgrid provider for strapi email",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-provider-email-sendmail",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Sendmail provider for strapi email",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-provider-upload-aws-s3",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "AWS S3 provider for strapi upload",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-provider-upload-cloudinary",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Cloudinary provider for strapi upload",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-provider-upload-local",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Local provider for strapi upload",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-provider-upload-rackspace",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Rackspace provider for strapi upload",
|
||||
"main": "./lib",
|
||||
"scripts": {
|
||||
|
||||
@ -491,7 +491,7 @@ module.exports = {
|
||||
|
||||
let type;
|
||||
|
||||
if (_.includes(['ne', 'lt', 'gt', 'lte', 'gte', 'contains', 'containss', 'in'], _.last(suffix))) {
|
||||
if (_.includes(['ne', 'lt', 'gt', 'lte', 'gte', 'contains', 'containss', 'in', 'nin'], _.last(suffix))) {
|
||||
type = `_${_.last(suffix)}`;
|
||||
key = _.dropRight(suffix).join('_');
|
||||
} else {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi-utils",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "Shared utilities for the Strapi packages",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
|
||||
@ -1,21 +1,27 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
'use strict';
|
||||
|
||||
/**
|
||||
* Module dependencies
|
||||
*/
|
||||
|
||||
// Node.js core.
|
||||
const fetch = require('node-fetch');
|
||||
const { machineIdSync } = require('node-machine-id');
|
||||
|
||||
if (process.env.npm_config_global === 'true') {
|
||||
fetch('https://analytics.strapi.io/track', {
|
||||
method: 'POST',
|
||||
body: JSON.stringify({ event: 'didInstallStrapi' }),
|
||||
headers: { 'Content-Type': 'application/json' }
|
||||
})
|
||||
.catch(() => {});
|
||||
}
|
||||
|
||||
/*
|
||||
* No need to worry about this file, we only retrieve anonymous data here.
|
||||
* It allows us to know on how many times the package has been installed globally.
|
||||
*/
|
||||
|
||||
try {
|
||||
if (process.env.npm_config_global === 'true' || JSON.parse(process.env.npm_config_argv).original.includes('global')) {
|
||||
fetch('https://analytics.strapi.io/track', {
|
||||
method: 'POST',
|
||||
body: JSON.stringify({ event: 'didInstallStrapi', deviceId: machineIdSync() }),
|
||||
headers: { 'Content-Type': 'application/json' }
|
||||
})
|
||||
.catch(() => {});
|
||||
}
|
||||
} catch (e) {
|
||||
//...
|
||||
}
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "strapi",
|
||||
"version": "3.0.0-alpha.21",
|
||||
"version": "3.0.0-alpha.23.1",
|
||||
"description": "An open source solution to create and manage your own API. It provides a powerful dashboard and features to make your life easier.",
|
||||
"homepage": "http://strapi.io",
|
||||
"keywords": [
|
||||
@ -54,6 +54,7 @@
|
||||
"koa-static": "^4.0.1",
|
||||
"lodash": "^4.17.5",
|
||||
"node-fetch": "^1.7.3",
|
||||
"node-machine-id": "^1.1.10",
|
||||
"node-schedule": "^1.2.0",
|
||||
"opn": "^5.3.0",
|
||||
"ora": "^3.0.0",
|
||||
@ -61,16 +62,16 @@
|
||||
"semver": "^5.4.1",
|
||||
"shelljs": "^0.8.3",
|
||||
"stack-trace": "0.0.10",
|
||||
"strapi-generate": "3.0.0-alpha.21",
|
||||
"strapi-generate-admin": "3.0.0-alpha.21",
|
||||
"strapi-generate-api": "3.0.0-alpha.21",
|
||||
"strapi-generate-controller": "3.0.0-alpha.21",
|
||||
"strapi-generate-model": "3.0.0-alpha.21",
|
||||
"strapi-generate-new": "3.0.0-alpha.21",
|
||||
"strapi-generate-plugin": "3.0.0-alpha.21",
|
||||
"strapi-generate-policy": "3.0.0-alpha.21",
|
||||
"strapi-generate-service": "3.0.0-alpha.21",
|
||||
"strapi-utils": "3.0.0-alpha.21"
|
||||
"strapi-generate": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-admin": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-api": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-controller": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-model": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-new": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-plugin": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-policy": "3.0.0-alpha.23.1",
|
||||
"strapi-generate-service": "3.0.0-alpha.23.1",
|
||||
"strapi-utils": "3.0.0-alpha.23.1"
|
||||
},
|
||||
"scripts": {
|
||||
"postinstall": "node lib/utils/success.js"
|
||||
@ -100,4 +101,4 @@
|
||||
},
|
||||
"preferGlobal": true,
|
||||
"license": "MIT"
|
||||
}
|
||||
}
|
||||
@ -75,8 +75,8 @@ shell.cd('../strapi-helper-plugin');
|
||||
watcher('📦 Linking strapi-helper-plugin...', 'npm link');
|
||||
|
||||
shell.cd('../strapi-admin');
|
||||
watcher('', 'npm install ../strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm install ../strapi-utils --no-optional');
|
||||
watcher('', 'npm link strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-utils --no-optional');
|
||||
shell.rm('-f', 'package-lock.json');
|
||||
|
||||
// Without these line Travis failed.
|
||||
@ -90,23 +90,23 @@ if (shell.test('-e', 'admin/src/config/plugins.json') === false) {
|
||||
watcher('📦 Linking strapi-admin', 'npm link --no-optional', false);
|
||||
|
||||
shell.cd('../strapi-generate-admin');
|
||||
watcher('', 'npm install ../strapi-admin');
|
||||
watcher('', 'npm link strapi-admin');
|
||||
watcher('📦 Linking strapi-generate-admin...', 'npm link');
|
||||
|
||||
shell.cd('../strapi-generate-new');
|
||||
watcher('', 'npm install ../strapi-utils');
|
||||
watcher('', 'npm link strapi-utils');
|
||||
watcher('📦 Linking strapi-generate-new', 'npm link');
|
||||
|
||||
shell.cd('../strapi-hook-mongoose');
|
||||
watcher('', 'npm install ../strapi-utils');
|
||||
watcher('', 'npm link strapi-utils');
|
||||
watcher('📦 Linking strapi-hook-mongoose...', 'npm link');
|
||||
|
||||
shell.cd('../strapi-hook-knex');
|
||||
watcher('📦 Linking strapi-hook-knex...', 'npm link');
|
||||
|
||||
shell.cd('../strapi-hook-bookshelf');
|
||||
watcher('', 'npm install ../strapi-utils');
|
||||
watcher('', 'npm install ../strapi-hook-knex');
|
||||
watcher('', 'npm link strapi-utils');
|
||||
watcher('', 'npm link strapi-hook-knex');
|
||||
watcher('📦 Linking strapi-hook-bookshelf...', 'npm link');
|
||||
|
||||
shell.cd('../strapi');
|
||||
@ -117,6 +117,7 @@ watcher(
|
||||
watcher('📦 Linking strapi...', 'npm link');
|
||||
|
||||
shell.cd('../strapi-plugin-graphql');
|
||||
watcher('', 'npm link strapi-utils');
|
||||
watcher('📦 Linking strapi-plugin-graphql...', 'npm link --no-optional', false);
|
||||
|
||||
// Plugin services
|
||||
@ -129,42 +130,45 @@ watcher('📦 Linking strapi-provider-email-sendmail...', 'npm link --no-option
|
||||
// Plugins with admin
|
||||
shell.cd('../strapi-plugin-documentation');
|
||||
shell.rm('-f', 'package-lock.json');
|
||||
watcher('', 'npm install ../strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-helper-plugin --no-optional');
|
||||
watcher('📦 Linking strapi-plugin-documentation...', 'npm link --no-optional', false);
|
||||
|
||||
shell.cd('../strapi-plugin-email');
|
||||
shell.rm('-f', 'package-lock.json');
|
||||
watcher('', 'npm install ../strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm install ../strapi-provider-email-sendmail --no-optional');
|
||||
watcher('', 'npm link strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-provider-email-sendmail --no-optional');
|
||||
watcher('', 'npm link strapi-utils --no-optional');
|
||||
watcher('📦 Linking strapi-plugin-email...', 'npm link --no-optional', false);
|
||||
|
||||
shell.cd('../strapi-plugin-users-permissions');
|
||||
watcher('', 'npm install ../strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm install ../strapi-utils --no-optional');
|
||||
watcher('', 'npm link strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-utils --no-optional');
|
||||
shell.rm('-f', 'package-lock.json');
|
||||
watcher('📦 Linking strapi-plugin-users-permissions...', 'npm link --no-optional', false);
|
||||
|
||||
shell.cd('../strapi-plugin-content-manager');
|
||||
watcher('', 'npm install ../strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-utils --no-optional');
|
||||
shell.rm('-f', 'package-lock.json');
|
||||
watcher('📦 Linking strapi-plugin-content-manager...', 'npm link --no-optional', false);
|
||||
|
||||
shell.cd('../strapi-plugin-settings-manager');
|
||||
watcher('', 'npm install ../strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-helper-plugin --no-optional');
|
||||
shell.rm('-f', 'package-lock.json');
|
||||
watcher('📦 Linking strapi-plugin-settings-manager...', 'npm link --no-optional', false);
|
||||
|
||||
// Plugins with admin and other plugin's dependencies
|
||||
shell.cd('../strapi-plugin-upload');
|
||||
watcher('', 'npm install ../strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm install ../strapi-provider-upload-local --no-optional');
|
||||
watcher('', 'npm link strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-provider-upload-local --no-optional');
|
||||
watcher('', 'npm link strapi-utils --no-optional');
|
||||
shell.rm('-f', 'package-lock.json');
|
||||
watcher('📦 Linking strapi-plugin-upload...', 'npm link --no-optional', false);
|
||||
|
||||
shell.cd('../strapi-plugin-content-type-builder');
|
||||
watcher('', 'npm install ../strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm install ../strapi-generate --no-optional');
|
||||
watcher('', 'npm install ../strapi-generate-api --no-optional');
|
||||
watcher('', 'npm link strapi-helper-plugin --no-optional');
|
||||
watcher('', 'npm link strapi-generate --no-optional');
|
||||
watcher('', 'npm link strapi-generate-api --no-optional');
|
||||
shell.rm('-f', 'package-lock.json');
|
||||
watcher('📦 Linking strapi-plugin-content-type-builder...', 'npm link --no-optional', false);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user