diff --git a/.github/actions/check-pr-status/package.json b/.github/actions/check-pr-status/package.json
index 31d210e478..25efd9810e 100644
--- a/.github/actions/check-pr-status/package.json
+++ b/.github/actions/check-pr-status/package.json
@@ -1,6 +1,6 @@
{
"name": "check-pr-status",
- "version": "4.4.0",
+ "version": "4.4.1",
"main": "dist/index.js",
"license": "MIT",
"private": true,
diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml
index 2fe3c763ea..6671ef0b56 100644
--- a/.github/workflows/checks.yml
+++ b/.github/workflows/checks.yml
@@ -15,7 +15,7 @@ jobs:
check-pr-status:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
- uses: ./.github/actions/check-pr-status
security-lockfile-analysis:
runs-on: ubuntu-latest
diff --git a/examples/getstarted/package.json b/examples/getstarted/package.json
index bb0d466a69..abd51b9094 100644
--- a/examples/getstarted/package.json
+++ b/examples/getstarted/package.json
@@ -1,7 +1,7 @@
{
"name": "getstarted",
"private": true,
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "A Strapi application.",
"scripts": {
"develop": "strapi develop",
@@ -12,16 +12,16 @@
"strapi": "strapi"
},
"dependencies": {
- "@strapi/plugin-color-picker": "4.4.0",
- "@strapi/plugin-documentation": "4.4.0",
- "@strapi/plugin-graphql": "4.4.0",
- "@strapi/plugin-i18n": "4.4.0",
- "@strapi/plugin-sentry": "4.4.0",
- "@strapi/plugin-users-permissions": "4.4.0",
- "@strapi/provider-email-mailgun": "4.4.0",
- "@strapi/provider-upload-aws-s3": "4.4.0",
- "@strapi/provider-upload-cloudinary": "4.4.0",
- "@strapi/strapi": "4.4.0",
+ "@strapi/plugin-color-picker": "4.4.1",
+ "@strapi/plugin-documentation": "4.4.1",
+ "@strapi/plugin-graphql": "4.4.1",
+ "@strapi/plugin-i18n": "4.4.1",
+ "@strapi/plugin-sentry": "4.4.1",
+ "@strapi/plugin-users-permissions": "4.4.1",
+ "@strapi/provider-email-mailgun": "4.4.1",
+ "@strapi/provider-upload-aws-s3": "4.4.1",
+ "@strapi/provider-upload-cloudinary": "4.4.1",
+ "@strapi/strapi": "4.4.1",
"@vscode/sqlite3": "5.0.8",
"better-sqlite3": "7.4.6",
"lodash": "4.17.21",
diff --git a/examples/kitchensink-ts/package.json b/examples/kitchensink-ts/package.json
index 52ae1e5d17..39b7a9c5d1 100644
--- a/examples/kitchensink-ts/package.json
+++ b/examples/kitchensink-ts/package.json
@@ -1,7 +1,7 @@
{
"name": "kitchensink-ts",
"private": true,
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "A Strapi application",
"scripts": {
"develop": "strapi develop",
@@ -10,9 +10,9 @@
"strapi": "strapi"
},
"dependencies": {
- "@strapi/plugin-i18n": "4.4.0",
- "@strapi/plugin-users-permissions": "4.4.0",
- "@strapi/strapi": "4.4.0",
+ "@strapi/plugin-i18n": "4.4.1",
+ "@strapi/plugin-users-permissions": "4.4.1",
+ "@strapi/strapi": "4.4.1",
"better-sqlite3": "7.4.6"
},
"author": {
diff --git a/examples/kitchensink/package.json b/examples/kitchensink/package.json
index 6358dfc9a0..870de577ea 100644
--- a/examples/kitchensink/package.json
+++ b/examples/kitchensink/package.json
@@ -1,7 +1,7 @@
{
"name": "kitchensink",
"private": true,
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "A Strapi application.",
"scripts": {
"develop": "strapi develop",
@@ -12,10 +12,10 @@
"strapi": "strapi"
},
"dependencies": {
- "@strapi/provider-email-mailgun": "4.4.0",
- "@strapi/provider-upload-aws-s3": "4.4.0",
- "@strapi/provider-upload-cloudinary": "4.4.0",
- "@strapi/strapi": "4.4.0",
+ "@strapi/provider-email-mailgun": "4.4.1",
+ "@strapi/provider-upload-aws-s3": "4.4.1",
+ "@strapi/provider-upload-cloudinary": "4.4.1",
+ "@strapi/strapi": "4.4.1",
"lodash": "4.17.21",
"mysql": "2.18.1",
"passport-google-oauth2": "0.2.0",
diff --git a/lerna.json b/lerna.json
index 9b5ba30327..098f68e995 100644
--- a/lerna.json
+++ b/lerna.json
@@ -1,5 +1,5 @@
{
- "version": "4.4.0",
+ "version": "4.4.1",
"packages": [
"packages/*",
"examples/*"
diff --git a/packages/admin-test-utils/package.json b/packages/admin-test-utils/package.json
index 07ebaa475d..93ce0919f7 100644
--- a/packages/admin-test-utils/package.json
+++ b/packages/admin-test-utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/admin-test-utils",
- "version": "4.4.0",
+ "version": "4.4.1",
"private": true,
"description": "Test utilities for the Strapi administration panel",
"license": "MIT",
diff --git a/packages/cli/create-strapi-app/package.json b/packages/cli/create-strapi-app/package.json
index fc7cb3a62b..3bb4b382e3 100644
--- a/packages/cli/create-strapi-app/package.json
+++ b/packages/cli/create-strapi-app/package.json
@@ -1,6 +1,6 @@
{
"name": "create-strapi-app",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Generate a new Strapi application.",
"keywords": [
"create-strapi-app",
@@ -38,7 +38,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
- "@strapi/generate-new": "4.4.0",
+ "@strapi/generate-new": "4.4.1",
"commander": "6.1.0",
"inquirer": "8.2.4"
},
diff --git a/packages/cli/create-strapi-starter/package.json b/packages/cli/create-strapi-starter/package.json
index 56cd90acc6..db40ace82f 100644
--- a/packages/cli/create-strapi-starter/package.json
+++ b/packages/cli/create-strapi-starter/package.json
@@ -1,6 +1,6 @@
{
"name": "create-strapi-starter",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Generate a new Strapi application.",
"keywords": [
"create-strapi-starter",
@@ -38,7 +38,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
- "@strapi/generate-new": "4.4.0",
+ "@strapi/generate-new": "4.4.1",
"chalk": "4.1.1",
"ci-info": "3.3.2",
"commander": "7.1.0",
diff --git a/packages/core/admin/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js b/packages/core/admin/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js
index bf87a1aad5..46b5db5104 100644
--- a/packages/core/admin/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js
+++ b/packages/core/admin/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js
@@ -69,8 +69,8 @@ const ModalForm = ({ queryName, onToggle }) => {
} catch (err) {
unlockApp();
- if (err?.response?.data.message === 'Email already taken') {
- setErrors({ email: err.response.data.message });
+ if (err?.response?.data?.error.message === 'Email already taken') {
+ setErrors({ email: err.response.data.error.message });
}
}
};
diff --git a/packages/core/admin/ee/server/controllers/user.js b/packages/core/admin/ee/server/controllers/user.js
index 79f8575d23..b416e30ba3 100644
--- a/packages/core/admin/ee/server/controllers/user.js
+++ b/packages/core/admin/ee/server/controllers/user.js
@@ -1,5 +1,6 @@
'use strict';
+const { get } = require('lodash');
const { pick } = require('lodash/fp');
const { ApplicationError } = require('@strapi/utils').errors;
const { validateUserCreationInput } = require('../validation/user');
@@ -10,11 +11,12 @@ const pickUserCreationAttributes = pick(['firstname', 'lastname', 'email', 'role
module.exports = {
async create(ctx) {
const { body } = ctx.request;
+ const cleanData = { ...body, email: get(body, `email`, ``).toLowerCase() };
- await validateUserCreationInput(body);
+ await validateUserCreationInput(cleanData);
- const attributes = pickUserCreationAttributes(body);
- const { useSSORegistration } = body;
+ const attributes = pickUserCreationAttributes(cleanData);
+ const { useSSORegistration } = cleanData;
const userAlreadyExists = await getService('user').exists({ email: attributes.email });
diff --git a/packages/core/admin/package.json b/packages/core/admin/package.json
index f3f11cef87..d2df24837e 100644
--- a/packages/core/admin/package.json
+++ b/packages/core/admin/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/admin",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Strapi Admin",
"repository": {
"type": "git",
@@ -51,13 +51,13 @@
"@fortawesome/free-solid-svg-icons": "^5.15.3",
"@fortawesome/react-fontawesome": "^0.2.0",
"@pmmmwh/react-refresh-webpack-plugin": "0.5.7",
- "@strapi/babel-plugin-switch-ee-ce": "4.4.0",
+ "@strapi/babel-plugin-switch-ee-ce": "4.4.1",
"@strapi/design-system": "1.2.3",
- "@strapi/helper-plugin": "4.4.0",
+ "@strapi/helper-plugin": "4.4.1",
"@strapi/icons": "1.2.3",
- "@strapi/permissions": "4.4.0",
- "@strapi/typescript-utils": "4.4.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/permissions": "4.4.1",
+ "@strapi/typescript-utils": "4.4.1",
+ "@strapi/utils": "4.4.1",
"axios": "0.27.2",
"babel-loader": "8.2.5",
"babel-plugin-styled-components": "2.0.2",
diff --git a/packages/core/admin/server/controllers/__tests__/user.test.js b/packages/core/admin/server/controllers/__tests__/user.test.js
index db33b0d622..f8845989a7 100644
--- a/packages/core/admin/server/controllers/__tests__/user.test.js
+++ b/packages/core/admin/server/controllers/__tests__/user.test.js
@@ -65,6 +65,38 @@ describe('User Controller', () => {
expect(sanitizeUser).toHaveBeenCalled();
expect(created).toHaveBeenCalled();
});
+
+ test('Create User Successfully with camelCase email', async () => {
+ const camelCaseBody = { ...body, email: 'kAiDoE@CamelCaSE.com' };
+ const create = jest.fn(() => Promise.resolve(camelCaseBody));
+ const exists = jest.fn(() => Promise.resolve(false));
+ const sanitizeUser = jest.fn((user) => Promise.resolve(user));
+ const created = jest.fn();
+ const ctx = createContext({ body: camelCaseBody }, { created });
+
+ global.strapi = {
+ admin: {
+ services: {
+ user: {
+ exists,
+ create,
+ sanitizeUser,
+ },
+ },
+ },
+ };
+
+ await userController.create(ctx);
+
+ const lowerEmail = camelCaseBody.email.toLowerCase();
+ expect(exists).toHaveBeenCalledWith({ email: lowerEmail });
+ expect(create).toHaveBeenCalledWith({
+ ...camelCaseBody,
+ email: lowerEmail,
+ });
+ expect(sanitizeUser).toHaveBeenCalled();
+ expect(created).toHaveBeenCalled();
+ });
});
describe('Find a user by its ID', () => {
diff --git a/packages/core/admin/server/controllers/admin.js b/packages/core/admin/server/controllers/admin.js
index d1e4493d65..980e513aca 100644
--- a/packages/core/admin/server/controllers/admin.js
+++ b/packages/core/admin/server/controllers/admin.js
@@ -4,6 +4,7 @@ const path = require('path');
const execa = require('execa');
const _ = require('lodash');
const { exists } = require('fs-extra');
+const { env } = require('@strapi/utils');
const { ValidationError } = require('@strapi/utils').errors;
const { isUsingTypeScript } = require('@strapi/typescript-utils');
// eslint-disable-next-line node/no-extraneous-require
@@ -93,11 +94,13 @@ module.exports = {
const useTypescriptOnAdmin = await isUsingTypeScript(
path.join(strapi.dirs.app.root, 'src', 'admin')
);
+ const isHostedOnStrapiCloud = env('STRAPI_HOSTING', null) === 'strapi.cloud';
return {
data: {
useTypescriptOnServer,
useTypescriptOnAdmin,
+ isHostedOnStrapiCloud,
},
};
},
diff --git a/packages/core/admin/server/controllers/user.js b/packages/core/admin/server/controllers/user.js
index 3fcf8912db..d117b60086 100644
--- a/packages/core/admin/server/controllers/user.js
+++ b/packages/core/admin/server/controllers/user.js
@@ -13,10 +13,11 @@ const { getService } = require('../utils');
module.exports = {
async create(ctx) {
const { body } = ctx.request;
+ const cleanData = { ...body, email: _.get(body, `email`, ``).toLowerCase() };
- await validateUserCreationInput(body);
+ await validateUserCreationInput(cleanData);
- const attributes = _.pick(body, [
+ const attributes = _.pick(cleanData, [
'firstname',
'lastname',
'email',
diff --git a/packages/core/admin/server/tests/admin-user.test.e2e.js b/packages/core/admin/server/tests/admin-user.test.e2e.js
index ba8c6d9c34..72abfd9b80 100644
--- a/packages/core/admin/server/tests/admin-user.test.e2e.js
+++ b/packages/core/admin/server/tests/admin-user.test.e2e.js
@@ -112,7 +112,7 @@ describe('Admin User CRUD (e2e)', () => {
test('2. Creates a user (successfully)', async () => {
const body = {
- email: 'user-tests@strapi-e2e.com',
+ email: 'uSer-tEsTs@strapi-e2e.com', // Tested with a camelCase email address
firstname: 'user_tests-firstname',
lastname: 'user_tests-lastname',
roles: [testData.role.id],
diff --git a/packages/core/content-manager/package.json b/packages/core/content-manager/package.json
index ae3980539f..aa4daa6406 100644
--- a/packages/core/content-manager/package.json
+++ b/packages/core/content-manager/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-content-manager",
- "version": "4.4.0",
+ "version": "4.4.1",
"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.4.0",
+ "@strapi/utils": "4.4.1",
"lodash": "4.17.21"
},
"engines": {
diff --git a/packages/core/content-type-builder/admin/src/components/FormModalSubHeader/index.js b/packages/core/content-type-builder/admin/src/components/FormModalSubHeader/index.js
index ba2c25b3de..6089137df3 100644
--- a/packages/core/content-type-builder/admin/src/components/FormModalSubHeader/index.js
+++ b/packages/core/content-type-builder/admin/src/components/FormModalSubHeader/index.js
@@ -1,9 +1,12 @@
import React from 'react';
import PropTypes from 'prop-types';
import { useIntl } from 'react-intl';
-import { Typography } from '@strapi/design-system/Typography';
import upperFirst from 'lodash/upperFirst';
+import { Stack } from '@strapi/design-system/Stack';
+import { Typography } from '@strapi/design-system/Typography';
+
import { getTrad } from '../../utils';
+
import getModalTitleSubHeader from './getModalTitleSubHeader';
const FormModalSubHeader = ({
@@ -23,25 +26,33 @@ const FormModalSubHeader = ({
: { id: getTrad(`attribute.${attributeType}`) };
return (
-
- {formatMessage(
- {
- id: getModalTitleSubHeader({
- actionType,
- forTarget,
- kind,
+
+
+ {formatMessage(
+ {
+ id: getModalTitleSubHeader({
+ actionType,
+ forTarget,
+ kind,
+ step,
+ modalType,
+ }),
+ defaultMessage: 'Add new field',
+ },
+ {
+ type: upperFirst(formatMessage(intlLabel)),
+ name: upperFirst(attributeName),
step,
- modalType,
- }),
- defaultMessage: 'Add new field',
- },
- {
- type: upperFirst(formatMessage(intlLabel)),
- name: upperFirst(attributeName),
- step,
- }
- )}
-
+ }
+ )}
+
+
+ {formatMessage({
+ id: getTrad(`attribute.${attributeType}.description`),
+ defaultMessage: 'A type for modeling data',
+ })}
+
+
);
};
diff --git a/packages/core/content-type-builder/package.json b/packages/core/content-type-builder/package.json
index 6c6bb87beb..0253b36b94 100644
--- a/packages/core/content-type-builder/package.json
+++ b/packages/core/content-type-builder/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-content-type-builder",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Strapi plugin to create content type",
"repository": {
"type": "git",
@@ -28,9 +28,9 @@
},
"dependencies": {
"@sindresorhus/slugify": "1.1.0",
- "@strapi/generators": "4.4.0",
- "@strapi/helper-plugin": "4.4.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/generators": "4.4.1",
+ "@strapi/helper-plugin": "4.4.1",
+ "@strapi/utils": "4.4.1",
"fs-extra": "10.0.0",
"lodash": "4.17.21",
"pluralize": "^8.0.0",
diff --git a/packages/core/database/package.json b/packages/core/database/package.json
index f071f5568c..42997bc4ca 100644
--- a/packages/core/database/package.json
+++ b/packages/core/database/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/database",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Strapi's database layer",
"homepage": "https://strapi.io",
"bugs": {
diff --git a/packages/core/email/package.json b/packages/core/email/package.json
index c1dff08bc9..f42e95e940 100644
--- a/packages/core/email/package.json
+++ b/packages/core/email/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-email",
- "version": "4.4.0",
+ "version": "4.4.1",
"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.4.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/provider-email-sendmail": "4.4.1",
+ "@strapi/utils": "4.4.1",
"lodash": "4.17.21"
},
"devDependencies": {
- "@strapi/helper-plugin": "4.4.0",
+ "@strapi/helper-plugin": "4.4.1",
"@testing-library/react": "12.1.4"
},
"engines": {
diff --git a/packages/core/helper-plugin/package.json b/packages/core/helper-plugin/package.json
index b728b87d29..b8b9d0bf2e 100644
--- a/packages/core/helper-plugin/package.json
+++ b/packages/core/helper-plugin/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/helper-plugin",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Helper for Strapi plugins development",
"repository": {
"type": "git",
diff --git a/packages/core/permissions/package.json b/packages/core/permissions/package.json
index 192878e96c..049234bdbc 100644
--- a/packages/core/permissions/package.json
+++ b/packages/core/permissions/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/permissions",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Strapi's permission layer.",
"repository": {
"type": "git",
@@ -25,7 +25,7 @@
},
"dependencies": {
"@casl/ability": "5.4.4",
- "@strapi/utils": "4.4.0",
+ "@strapi/utils": "4.4.1",
"lodash": "4.17.21",
"sift": "16.0.0"
},
diff --git a/packages/core/strapi/lib/services/metrics/sender.js b/packages/core/strapi/lib/services/metrics/sender.js
index 4a65497b3c..a92cba6ffa 100644
--- a/packages/core/strapi/lib/services/metrics/sender.js
+++ b/packages/core/strapi/lib/services/metrics/sender.js
@@ -7,6 +7,7 @@ const isDocker = require('is-docker');
const fetch = require('node-fetch');
const ciEnv = require('ci-info');
const { isUsingTypeScriptSync } = require('@strapi/typescript-utils');
+const { env } = require('@strapi/utils');
const ee = require('../../utils/ee');
const machineID = require('../../utils/machine-id');
const { generateAdminUserHash } = require('./admin-user-hash');
@@ -58,6 +59,7 @@ module.exports = (strapi) => {
useTypescriptOnServer: isUsingTypeScriptSync(serverRootPath),
useTypescriptOnAdmin: isUsingTypeScriptSync(adminRootPath),
projectId: uuid,
+ isHostedOnStrapiCloud: env('STRAPI_HOSTING', null) === 'strapi.cloud',
};
addPackageJsonStrapiMetadata(anonymousGroupProperties, strapi);
diff --git a/packages/core/strapi/package.json b/packages/core/strapi/package.json
index d32c0fae3f..ef9008e122 100644
--- a/packages/core/strapi/package.json
+++ b/packages/core/strapi/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/strapi",
- "version": "4.4.0",
+ "version": "4.4.1",
"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,18 +80,18 @@
"dependencies": {
"@koa/cors": "3.4.1",
"@koa/router": "10.1.1",
- "@strapi/admin": "4.4.0",
- "@strapi/database": "4.4.0",
- "@strapi/generate-new": "4.4.0",
- "@strapi/generators": "4.4.0",
- "@strapi/logger": "4.4.0",
- "@strapi/permissions": "4.4.0",
- "@strapi/plugin-content-manager": "4.4.0",
- "@strapi/plugin-content-type-builder": "4.4.0",
- "@strapi/plugin-email": "4.4.0",
- "@strapi/plugin-upload": "4.4.0",
- "@strapi/typescript-utils": "4.4.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/admin": "4.4.1",
+ "@strapi/database": "4.4.1",
+ "@strapi/generate-new": "4.4.1",
+ "@strapi/generators": "4.4.1",
+ "@strapi/logger": "4.4.1",
+ "@strapi/permissions": "4.4.1",
+ "@strapi/plugin-content-manager": "4.4.1",
+ "@strapi/plugin-content-type-builder": "4.4.1",
+ "@strapi/plugin-email": "4.4.1",
+ "@strapi/plugin-upload": "4.4.1",
+ "@strapi/typescript-utils": "4.4.1",
+ "@strapi/utils": "4.4.1",
"bcryptjs": "2.4.3",
"boxen": "5.1.2",
"chalk": "4.1.2",
diff --git a/packages/core/upload/package.json b/packages/core/upload/package.json
index 43c4fe8c68..3a21b524db 100644
--- a/packages/core/upload/package.json
+++ b/packages/core/upload/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-upload",
- "version": "4.4.0",
+ "version": "4.4.1",
"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.4.0",
- "@strapi/provider-upload-local": "4.4.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/helper-plugin": "4.4.1",
+ "@strapi/provider-upload-local": "4.4.1",
+ "@strapi/utils": "4.4.1",
"byte-size": "7.0.1",
"cropperjs": "1.5.12",
"date-fns": "2.29.2",
diff --git a/packages/core/utils/package.json b/packages/core/utils/package.json
index af4c5d84d4..af26908969 100644
--- a/packages/core/utils/package.json
+++ b/packages/core/utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/utils",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Shared utilities for the Strapi packages",
"keywords": [
"strapi",
diff --git a/packages/generators/app/lib/utils/usage.js b/packages/generators/app/lib/utils/usage.js
index 99ff5c03b0..0d8a1a076e 100644
--- a/packages/generators/app/lib/utils/usage.js
+++ b/packages/generators/app/lib/utils/usage.js
@@ -70,6 +70,7 @@ const getProperties = (scope, error) => {
useYarn: scope.useYarn,
useTypescriptOnServer: scope.useTypescript,
useTypescriptOnAdmin: scope.useTypescript,
+ isHostedOnStrapiCloud: process.env.STRAPI_HOSTING === 'strapi.cloud',
noRun: (scope.runQuickstartApp !== true).toString(),
projectId: scope.uuid,
};
diff --git a/packages/generators/app/package.json b/packages/generators/app/package.json
index 471c7e9c43..bdfb6d5b70 100644
--- a/packages/generators/app/package.json
+++ b/packages/generators/app/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/generate-new",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Generate a new Strapi application.",
"keywords": [
"generate",
diff --git a/packages/generators/generators/package.json b/packages/generators/generators/package.json
index 6c175693fe..eea722f190 100644
--- a/packages/generators/generators/package.json
+++ b/packages/generators/generators/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/generators",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Interactive API generator.",
"keywords": [
"strapi",
@@ -30,8 +30,8 @@
"main": "lib/index.js",
"dependencies": {
"@sindresorhus/slugify": "1.1.0",
- "@strapi/typescript-utils": "4.4.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/typescript-utils": "4.4.1",
+ "@strapi/utils": "4.4.1",
"chalk": "4.1.2",
"fs-extra": "10.0.0",
"node-plop": "0.26.3",
diff --git a/packages/plugins/color-picker/package.json b/packages/plugins/color-picker/package.json
index e814b7fd19..d01cb2577b 100644
--- a/packages/plugins/color-picker/package.json
+++ b/packages/plugins/color-picker/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-color-picker",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Strapi maintained Custom Fields",
"strapi": {
"name": "color-picker",
diff --git a/packages/plugins/documentation/package.json b/packages/plugins/documentation/package.json
index db48fe1f80..f1c44329f4 100644
--- a/packages/plugins/documentation/package.json
+++ b/packages/plugins/documentation/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-documentation",
- "version": "4.4.0",
+ "version": "4.4.1",
"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.4.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/helper-plugin": "4.4.1",
+ "@strapi/utils": "4.4.1",
"bcryptjs": "2.4.3",
"cheerio": "^1.0.0-rc.12",
"fs-extra": "10.0.0",
diff --git a/packages/plugins/graphql/package.json b/packages/plugins/graphql/package.json
index 8fdab5ebe1..d9980abf4f 100644
--- a/packages/plugins/graphql/package.json
+++ b/packages/plugins/graphql/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-graphql",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Adds GraphQL endpoint with default API methods.",
"repository": {
"type": "git",
@@ -29,7 +29,7 @@
"dependencies": {
"@graphql-tools/schema": "8.1.2",
"@graphql-tools/utils": "^8.10.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/utils": "4.4.1",
"apollo-server-core": "3.1.2",
"apollo-server-koa": "3.10.0",
"glob": "^7.1.7",
diff --git a/packages/plugins/i18n/package.json b/packages/plugins/i18n/package.json
index c02385b463..e04e257419 100644
--- a/packages/plugins/i18n/package.json
+++ b/packages/plugins/i18n/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-i18n",
- "version": "4.4.0",
+ "version": "4.4.1",
"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.4.0",
+ "@strapi/utils": "4.4.1",
"lodash": "4.17.21"
},
"devDependencies": {
diff --git a/packages/plugins/sentry/package.json b/packages/plugins/sentry/package.json
index 05dd023994..eed53338de 100644
--- a/packages/plugins/sentry/package.json
+++ b/packages/plugins/sentry/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-sentry",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Send Strapi error events to Sentry",
"repository": {
"type": "git",
diff --git a/packages/plugins/users-permissions/package.json b/packages/plugins/users-permissions/package.json
index edaa2393c8..1be29f79cd 100644
--- a/packages/plugins/users-permissions/package.json
+++ b/packages/plugins/users-permissions/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/plugin-users-permissions",
- "version": "4.4.0",
+ "version": "4.4.1",
"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.4.0",
- "@strapi/utils": "4.4.0",
+ "@strapi/helper-plugin": "4.4.1",
+ "@strapi/utils": "4.4.1",
"bcryptjs": "2.4.3",
"grant-koa": "5.4.8",
"jsonwebtoken": "^8.1.0",
diff --git a/packages/plugins/users-permissions/server/services/permission.js b/packages/plugins/users-permissions/server/services/permission.js
index 339a3ac67c..fbcdd2d25e 100644
--- a/packages/plugins/users-permissions/server/services/permission.js
+++ b/packages/plugins/users-permissions/server/services/permission.js
@@ -25,7 +25,7 @@ module.exports = ({ strapi }) => ({
*/
async findPublicPermissions() {
return strapi.entityService.findMany('plugin::users-permissions.permission', {
- where: PUBLIC_ROLE_FILTER,
+ filters: PUBLIC_ROLE_FILTER,
});
},
diff --git a/packages/plugins/users-permissions/tests/content-api/auth.test.e2e.js b/packages/plugins/users-permissions/tests/content-api/auth.test.e2e.js
index fca51e282c..10350ef66c 100644
--- a/packages/plugins/users-permissions/tests/content-api/auth.test.e2e.js
+++ b/packages/plugins/users-permissions/tests/content-api/auth.test.e2e.js
@@ -45,9 +45,9 @@ describe('Auth API', () => {
body: {},
});
- expect(res.statusCode).toBe(400);
- expect(res.body.error.name).toBe('ApplicationError');
- expect(res.body.error.message).toBe('You must be authenticated to reset your password');
+ expect(res.statusCode).toBe(403);
+ expect(res.body.error.name).toBe('ForbiddenError');
+ expect(res.body.error.message).toBe('Forbidden');
});
test('Fails on invalid confirmation password', async () => {
diff --git a/packages/providers/email-amazon-ses/package.json b/packages/providers/email-amazon-ses/package.json
index ae2cd461bf..b634ff7c41 100644
--- a/packages/providers/email-amazon-ses/package.json
+++ b/packages/providers/email-amazon-ses/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-amazon-ses",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Amazon SES provider for strapi email",
"keywords": [
"email",
@@ -36,7 +36,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
- "@strapi/utils": "4.4.0",
+ "@strapi/utils": "4.4.1",
"node-ses": "^3.0.3"
},
"engines": {
diff --git a/packages/providers/email-mailgun/package.json b/packages/providers/email-mailgun/package.json
index f396c98b55..4bf3421043 100644
--- a/packages/providers/email-mailgun/package.json
+++ b/packages/providers/email-mailgun/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-mailgun",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Mailgun provider for strapi email plugin",
"keywords": [
"email",
@@ -36,7 +36,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
- "@strapi/utils": "4.4.0",
+ "@strapi/utils": "4.4.1",
"form-data": "^4.0.0",
"mailgun.js": "5.2.2"
},
diff --git a/packages/providers/email-nodemailer/package.json b/packages/providers/email-nodemailer/package.json
index 59914e588e..0319441fbd 100644
--- a/packages/providers/email-nodemailer/package.json
+++ b/packages/providers/email-nodemailer/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-nodemailer",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Nodemailer provider for Strapi 3",
"keywords": [
"strapi",
diff --git a/packages/providers/email-sendgrid/package.json b/packages/providers/email-sendgrid/package.json
index 0eb5a6d603..61977de204 100644
--- a/packages/providers/email-sendgrid/package.json
+++ b/packages/providers/email-sendgrid/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-sendgrid",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Sendgrid provider for strapi email",
"keywords": [
"email",
@@ -37,7 +37,7 @@
},
"dependencies": {
"@sendgrid/mail": "7.7.0",
- "@strapi/utils": "4.4.0"
+ "@strapi/utils": "4.4.1"
},
"engines": {
"node": ">=14.19.1 <=18.x.x",
diff --git a/packages/providers/email-sendmail/package.json b/packages/providers/email-sendmail/package.json
index 01e2549618..34b1c8703e 100644
--- a/packages/providers/email-sendmail/package.json
+++ b/packages/providers/email-sendmail/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/provider-email-sendmail",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Sendmail provider for strapi email",
"keywords": [
"email",
@@ -35,7 +35,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
- "@strapi/utils": "4.4.0",
+ "@strapi/utils": "4.4.1",
"sendmail": "^1.6.1"
},
"engines": {
diff --git a/packages/providers/upload-aws-s3/package.json b/packages/providers/upload-aws-s3/package.json
index 7c0ef5d757..8e02bef458 100644
--- a/packages/providers/upload-aws-s3/package.json
+++ b/packages/providers/upload-aws-s3/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/provider-upload-aws-s3",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "AWS S3 provider for strapi upload",
"keywords": [
"upload",
diff --git a/packages/providers/upload-cloudinary/package.json b/packages/providers/upload-cloudinary/package.json
index efe3f79c7a..30e67d87c4 100644
--- a/packages/providers/upload-cloudinary/package.json
+++ b/packages/providers/upload-cloudinary/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/provider-upload-cloudinary",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Cloudinary provider for strapi upload",
"keywords": [
"upload",
@@ -36,7 +36,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
- "@strapi/utils": "4.4.0",
+ "@strapi/utils": "4.4.1",
"cloudinary": "^1.30.1",
"into-stream": "^5.1.0"
},
diff --git a/packages/providers/upload-local/package.json b/packages/providers/upload-local/package.json
index c8b6b24581..c0a929844a 100644
--- a/packages/providers/upload-local/package.json
+++ b/packages/providers/upload-local/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/provider-upload-local",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Local provider for strapi upload",
"keywords": [
"upload",
@@ -35,7 +35,7 @@
"test": "echo \"no tests yet\""
},
"dependencies": {
- "@strapi/utils": "4.4.0",
+ "@strapi/utils": "4.4.1",
"fs-extra": "10.0.0"
},
"engines": {
diff --git a/packages/utils/babel-plugin-switch-ee-ce/package.json b/packages/utils/babel-plugin-switch-ee-ce/package.json
index 516b7c79a1..2ee10cd492 100644
--- a/packages/utils/babel-plugin-switch-ee-ce/package.json
+++ b/packages/utils/babel-plugin-switch-ee-ce/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/babel-plugin-switch-ee-ce",
- "version": "4.4.0",
+ "version": "4.4.1",
"private": false,
"description": "Babel plugin to switch from CE to EE at runtime",
"repository": "git://github.com/strapi/strapi.git",
diff --git a/packages/utils/logger/package.json b/packages/utils/logger/package.json
index 87a1b7faa7..05436a424a 100644
--- a/packages/utils/logger/package.json
+++ b/packages/utils/logger/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/logger",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Strapi's logger",
"homepage": "https://strapi.io",
"bugs": {
diff --git a/packages/utils/typescript/package.json b/packages/utils/typescript/package.json
index 1fbc28d09b..fe0b96640b 100644
--- a/packages/utils/typescript/package.json
+++ b/packages/utils/typescript/package.json
@@ -1,6 +1,6 @@
{
"name": "@strapi/typescript-utils",
- "version": "4.4.0",
+ "version": "4.4.1",
"description": "Typescript support for Strapi",
"keywords": [
"strapi",
diff --git a/yarn.lock b/yarn.lock
index c33faa5a90..44f88645fd 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -22348,9 +22348,9 @@ vm-browserify@^1.0.1, vm-browserify@^1.1.2:
integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==
vm2@^3.9.8:
- version "3.9.10"
- resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.10.tgz#c66543096b5c44c8861a6465805c23c7cc996a44"
- integrity sha512-AuECTSvwu2OHLAZYhG716YzwodKCIJxB6u1zG7PgSQwIgAlEaoXH52bxdcvT8GkGjnYK7r7yWDW0m0sOsPuBjQ==
+ version "3.9.11"
+ resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.11.tgz#a880f510a606481719ec3f9803b940c5805a06fe"
+ integrity sha512-PFG8iJRSjvvBdisowQ7iVF580DXb1uCIiGaXgm7tynMR1uTBlv7UJlB1zdv5KJ+Tmq1f0Upnj3fayoEOPpCBKg==
dependencies:
acorn "^8.7.0"
acorn-walk "^8.2.0"