diff --git a/.eslintrc.back.js b/.eslintrc.back.js index f75e9cfbe3b..cbf9d117857 100644 --- a/.eslintrc.back.js +++ b/.eslintrc.back.js @@ -6,12 +6,31 @@ module.exports = { strapi: false, }, rules: { - 'node/no-unpublished-require': 'off', - 'no-process-exit': 'off', - 'node/exports-style': ['error', 'module.exports'], - 'node/no-new-require': 'error', - 'node/no-path-concat': 'error', - 'node/no-callback-literal': 'error', - 'node/handle-callback-err': 'error', + 'import/no-dynamic-require': 'off', + 'global-require': 'off', + 'import/no-extraneous-dependencies': [ + 'error', + { + devDependencies: [ + 'packages/admin-test-utils/**/*.js', + 'packages/generators/admin/**/*.js', + 'scripts/**/*.js', + '**/test/**/*.js', + '**/tests/**/*.js', + '**/__tests__/**/*.js', + '**/__mocks__/**/*.js', + ], + }, + ], + 'prefer-destructuring': ['error', { AssignmentExpression: { array: false } }], + eqeqeq: 'warn', + 'no-underscore-dangle': 'warn', + 'no-use-before-define': 'warn', + 'no-param-reassign': 'warn', + 'no-continue': 'warn', + 'no-process-exit': 'warn', + 'no-plusplus': 'warn', + 'no-loop-func': 'warn', + 'guard-for-in': 'warn', }, }; diff --git a/.eslintrc.front.js b/.eslintrc.front.js index 4dc9f78fd62..0ef1892b731 100644 --- a/.eslintrc.front.js +++ b/.eslintrc.front.js @@ -1,13 +1,6 @@ module.exports = { - parser: 'babel-eslint', - extends: [ - 'airbnb', - 'eslint:recommended', - 'plugin:react/recommended', - 'plugin:redux-saga/recommended', - 'prettier', - ], - plugins: ['react', 'redux-saga', 'react-hooks', 'import', 'jsx-a11y'], + parser: '@babel/eslint-parser', + extends: ['@strapi/eslint-config/front'], env: { browser: true, commonjs: true, @@ -16,11 +9,10 @@ module.exports = { mocha: true, }, parserOptions: { - ecmaVersion: 2018, - ecmaFeatures: { - jsx: true, + requireConfigFile: false, + babelOptions: { + presets: ['@babel/preset-react'], }, - sourceType: 'module', }, globals: { strapi: false, @@ -39,86 +31,7 @@ module.exports = { }, settings: { react: { - version: '16.5.2', + version: 'detect', }, }, - rules: { - 'import/no-unresolved': 0, - 'generator-star-spacing': 0, - 'no-console': 0, - 'require-atomic-updates': 0, - 'react-hooks/rules-of-hooks': 'error', - 'react-hooks/exhaustive-deps': 'error', - 'arrow-body-style': 0, - 'arrow-parens': 0, - camelcase: 0, - 'comma-dangle': 0, - 'consistent-return': [ - 2, - { - treatUndefinedAsUnspecified: true, - }, - ], - 'template-curly-spacing': 0, - 'func-names': ['error', 'never'], - 'function-paren-newline': 0, - 'implicit-arrow-linebreak': 0, - 'import/no-extraneous-dependencies': 0, - 'import/no-named-as-default': 0, - 'import/order': 2, - 'import/prefer-default-export': 'off', - 'jsx-a11y/click-events-have-key-events': 1, - 'max-len': [ - 2, - { - code: 120, - ignoreComments: true, - ignoreUrls: true, - ignoreTrailingComments: true, - ignoreStrings: true, - ignoreTemplateLiterals: true, - }, - ], - 'newline-before-return': 2, - 'no-confusing-arrow': 0, - 'no-else-return': 1, - 'no-nested-ternary': ['error'], - 'no-return-assign': 0, - 'no-param-reassign': 0, - 'no-plusplus': 0, - 'no-shadow': 0, - 'no-underscore-dangle': 0, - 'no-use-before-define': ['error', { functions: false, classes: false, variables: false }], - 'object-curly-newline': [2, { multiline: true, consistent: true }], - 'one-var': ['error', 'never'], - 'operator-linebreak': 0, - 'padding-line-between-statements': [ - 'error', - { blankLine: 'always', prev: '*', next: 'if' }, - { blankLine: 'any', prev: 'block-like', next: 'if' }, - ], - 'prefer-arrow-callback': 0, - 'prefer-const': 0, - 'prefer-destructuring': 0, - 'prefer-object-spread': 0, - 'prefer-spread': 0, - 'space-before-function-paren': [ - 'error', - { - anonymous: 'never', - named: 'never', - asyncArrow: 'always', - }, - ], - 'react/destructuring-assignment': 0, - 'react/jsx-filename-extension': [1, { extensions: ['.js', '.jsx'] }], - 'react/forbid-prop-types': 0, - 'react/no-unused-prop-types': 2, - 'react/jsx-props-no-spreading': 0, - 'react/jsx-one-expression-per-line': 0, - 'react/state-in-constructor': 0, - 'react/static-property-placement': 0, - 'react/display-name': 0, - 'react/jsx-wrap-multilines': 0, - }, }; diff --git a/.github/actions/check-pr-status/__tests__/action.test.js b/.github/actions/check-pr-status/__tests__/action.test.js index 3a32891a2e2..0e598ed55a7 100644 --- a/.github/actions/check-pr-status/__tests__/action.test.js +++ b/.github/actions/check-pr-status/__tests__/action.test.js @@ -6,7 +6,7 @@ jest.mock('@actions/core'); const github = require('@actions/github'); const core = require('@actions/core'); -test.each(action.BLOCKING_LABELS)('Test blocking labels %s', async label => { +test.each(action.BLOCKING_LABELS)('Test blocking labels %s', async (label) => { github.context = { payload: { pull_request: { diff --git a/.github/actions/check-pr-status/index.js b/.github/actions/check-pr-status/index.js index 86849c67501..099172b61e8 100644 --- a/.github/actions/check-pr-status/index.js +++ b/.github/actions/check-pr-status/index.js @@ -7,20 +7,20 @@ async function main() { try { const labels = github.context.payload.pull_request?.labels ?? []; - const blockingLabels = labels.filter(label => BLOCKING_LABELS.includes(label.name)); + const blockingLabels = labels.filter((label) => BLOCKING_LABELS.includes(label.name)); if (blockingLabels.length > 0) { core.setFailed( `The PR has been labelled with a blocking label (${blockingLabels - .map(label => label.name) + .map((label) => label.name) .join(', ')}).` ); return; } - const sourceLabelCount = labels.filter(label => label.name.startsWith('source: ')).length; - const issueLabelCount = labels.filter(label => label.name.startsWith('pr: ')).length; + const sourceLabelCount = labels.filter((label) => label.name.startsWith('source: ')).length; + const issueLabelCount = labels.filter((label) => label.name.startsWith('pr: ')).length; if (sourceLabelCount !== 1) { core.setFailed(`The PR must have one and only one 'source:' label.`); diff --git a/.prettierrc.js b/.prettierrc.js index 102e3fa4b23..1613e2a6efd 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -5,4 +5,5 @@ module.exports = { tabWidth: 2, trailingComma: 'es5', printWidth: 100, + arrowParens: 'always', }; diff --git a/examples/getstarted/config/src/response-handlers.js b/examples/getstarted/config/src/response-handlers.js index 72b34df02de..2ad17f9b8a7 100644 --- a/examples/getstarted/config/src/response-handlers.js +++ b/examples/getstarted/config/src/response-handlers.js @@ -1,7 +1,7 @@ 'use strict'; module.exports = { - '404': async (/* ctx */) => { + 404: async (/* ctx */) => { // return ctx.notFound('My custom message 404'); }, }; diff --git a/examples/getstarted/src/api/address/middlewares/address-middleware.js b/examples/getstarted/src/api/address/middlewares/address-middleware.js index baeae56c181..9e31b84eb3b 100644 --- a/examples/getstarted/src/api/address/middlewares/address-middleware.js +++ b/examples/getstarted/src/api/address/middlewares/address-middleware.js @@ -1,4 +1,4 @@ -module.exports = options => { +module.exports = (options) => { return (ctx, next) => { ctx.set('X-Strapi-Test', 'Address Middleware'); return next(); diff --git a/examples/getstarted/src/api/address/services/address.js b/examples/getstarted/src/api/address/services/address.js index c394b7fa869..f639b9695dd 100644 --- a/examples/getstarted/src/api/address/services/address.js +++ b/examples/getstarted/src/api/address/services/address.js @@ -4,7 +4,7 @@ module.exports = createCoreService('api::address.address', { async find(...args) { const { results, pagination } = await super.find(...args); - results.forEach(result => { + results.forEach((result) => { result.counter = 1; }); diff --git a/examples/getstarted/src/extensions/users-permissions/strapi-server.js b/examples/getstarted/src/extensions/users-permissions/strapi-server.js index 235100b090c..9ad0863dc0d 100644 --- a/examples/getstarted/src/extensions/users-permissions/strapi-server.js +++ b/examples/getstarted/src/extensions/users-permissions/strapi-server.js @@ -1,3 +1,3 @@ -module.exports = plugin => { +module.exports = (plugin) => { return plugin; }; diff --git a/examples/getstarted/src/plugins/myplugin/admin/src/index.js b/examples/getstarted/src/plugins/myplugin/admin/src/index.js index 44d19676d86..f00a4b51250 100644 --- a/examples/getstarted/src/plugins/myplugin/admin/src/index.js +++ b/examples/getstarted/src/plugins/myplugin/admin/src/index.js @@ -29,7 +29,7 @@ export default { bootstrap() {}, async registerTrads({ locales }) { const importedTrads = await Promise.all( - locales.map(locale => { + locales.map((locale) => { return import( /* webpackChunkName: "[pluginId]-[request]" */ `./translations/${locale}.json` ) diff --git a/examples/getstarted/src/plugins/myplugin/admin/src/utils/getTrad.js b/examples/getstarted/src/plugins/myplugin/admin/src/utils/getTrad.js index a2b8632a8d5..d0a071b26a6 100644 --- a/examples/getstarted/src/plugins/myplugin/admin/src/utils/getTrad.js +++ b/examples/getstarted/src/plugins/myplugin/admin/src/utils/getTrad.js @@ -1,5 +1,5 @@ import pluginId from '../pluginId'; -const getTrad = id => `${pluginId}.${id}`; +const getTrad = (id) => `${pluginId}.${id}`; export default getTrad; diff --git a/examples/getstarted/src/plugins/myplugin/server/config/index.js b/examples/getstarted/src/plugins/myplugin/server/config/index.js index 46517110c5b..d16884e338f 100644 --- a/examples/getstarted/src/plugins/myplugin/server/config/index.js +++ b/examples/getstarted/src/plugins/myplugin/server/config/index.js @@ -4,7 +4,7 @@ module.exports = { default: { testConf: 1, }, - validator: config => { + validator: (config) => { if (typeof config.testConf !== 'number') { throw new Error('testConfig has to be a number'); } diff --git a/examples/kitchensink/src/admin/app.example.js b/examples/kitchensink/src/admin/app.example.js index d4278b95e48..aa8cbb54a78 100644 --- a/examples/kitchensink/src/admin/app.example.js +++ b/examples/kitchensink/src/admin/app.example.js @@ -2,8 +2,7 @@ import theme from './extensions/theme'; const config = { auth: { - logo: - 'https://images.unsplash.com/photo-1593642634367-d91a135587b5?ixid=MnwxMjA3fDF8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=750&q=80', + logo: 'https://images.unsplash.com/photo-1593642634367-d91a135587b5?ixid=MnwxMjA3fDF8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=750&q=80', }, head: { favicon: @@ -12,8 +11,7 @@ const config = { }, locales: ['fr', 'de'], menu: { - logo: - 'https://images.unsplash.com/photo-1593642634367-d91a135587b5?ixid=MnwxMjA3fDF8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=750&q=80', + logo: 'https://images.unsplash.com/photo-1593642634367-d91a135587b5?ixid=MnwxMjA3fDF8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=750&q=80', }, theme, translations: { @@ -29,7 +27,7 @@ const config = { notifications: { release: false }, }; -const bootstrap = app => { +const bootstrap = (app) => { console.log(app); }; diff --git a/examples/kitchensink/src/admin/app.js b/examples/kitchensink/src/admin/app.js index 417194815e2..387cea3632c 100644 --- a/examples/kitchensink/src/admin/app.js +++ b/examples/kitchensink/src/admin/app.js @@ -2,8 +2,7 @@ import theme from './extensions/theme'; const config = { auth: { - logo: - 'https://images.unsplash.com/photo-1593642634367-d91a135587b5?ixid=MnwxMjA3fDF8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=750&q=80', + logo: 'https://images.unsplash.com/photo-1593642634367-d91a135587b5?ixid=MnwxMjA3fDF8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=750&q=80', }, head: { favicon: @@ -12,8 +11,7 @@ const config = { }, locales: ['fr', 'de'], menu: { - logo: - 'https://images.unsplash.com/photo-1593642634367-d91a135587b5?ixid=MnwxMjA3fDF8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=750&q=80', + logo: 'https://images.unsplash.com/photo-1593642634367-d91a135587b5?ixid=MnwxMjA3fDF8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=750&q=80', }, theme, translations: { @@ -29,7 +27,7 @@ const config = { notifications: { release: false }, }; -const bootstrap = app => { +const bootstrap = (app) => { console.log(app); }; diff --git a/package.json b/package.json index 5a2d09cac80..b0a70b16c23 100644 --- a/package.json +++ b/package.json @@ -71,6 +71,9 @@ "@babel/polyfill": "7.12.1" }, "devDependencies": { + "@babel/core": "7.18.10", + "@babel/eslint-parser": "7.18.9", + "@babel/preset-react": "7.18.6", "@strapi/eslint-config": "0.1.0", "@swc/core": "1.2.224", "@swc/jest": "0.2.22", @@ -84,20 +87,12 @@ "cross-env": "7.0.3", "dotenv": "14.2.0", "eslint": "8.21.0", - "eslint-config-airbnb-base": "15.0.0", - "eslint-config-prettier": "8.5.0", - "eslint-plugin-import": "2.26.0", - "eslint-plugin-jsdoc": "36.1.1", - "eslint-plugin-jsx-a11y": "6.6.1", - "eslint-plugin-node": "11.1.0", - "eslint-plugin-react": "7.30.1", - "eslint-plugin-react-hooks": "4.6.0", - "eslint-plugin-redux-saga": "1.3.2", "execa": "1.0.0", "fs-extra": "10.1.0", "get-port": "5.1.1", "glob": "7.2.3", "husky": "3.1.0", + "inquirer": "8.2.4", "istanbul": "~0.4.2", "jest": "26.6.3", "jest-circus": "26.6.3", @@ -110,7 +105,7 @@ "npm-run-all": "4.1.5", "nx": "14.4.2", "plop": "2.7.6", - "prettier": "1.19.1", + "prettier": "2.7.1", "qs": "6.11.0", "react-test-renderer": "17.0.2", "request": "2.88.2", diff --git a/packages/admin-test-utils/lib/fixtures/store/index.js b/packages/admin-test-utils/lib/fixtures/store/index.js index 4c9ac95f14a..4211451569f 100644 --- a/packages/admin-test-utils/lib/fixtures/store/index.js +++ b/packages/admin-test-utils/lib/fixtures/store/index.js @@ -1,6 +1,5 @@ 'use strict'; -// eslint-disable-next-line node/no-extraneous-require const { combineReducers, createStore } = require('redux'); const reducers = { diff --git a/packages/admin-test-utils/lib/setup/strapi.js b/packages/admin-test-utils/lib/setup/strapi.js index a6421d14cf4..3147b86eb6e 100644 --- a/packages/admin-test-utils/lib/setup/strapi.js +++ b/packages/admin-test-utils/lib/setup/strapi.js @@ -25,4 +25,4 @@ global.strapi = { global.prompt = jest.fn(); -global.URL.createObjectURL = file => `http://localhost:4000/assets/${file.name}`; +global.URL.createObjectURL = (file) => `http://localhost:4000/assets/${file.name}`; diff --git a/packages/admin-test-utils/lib/setup/test-bundler.js b/packages/admin-test-utils/lib/setup/test-bundler.js index 03207ab94a7..fb6c50c8e87 100644 --- a/packages/admin-test-utils/lib/setup/test-bundler.js +++ b/packages/admin-test-utils/lib/setup/test-bundler.js @@ -1,7 +1,6 @@ 'use strict'; // needed for regenerator-runtime -// (ES7 generator support is required by redux-saga) require('@babel/polyfill'); const noop = () => {}; diff --git a/packages/admin-test-utils/package.json b/packages/admin-test-utils/package.json index fa82dd43ebc..d921cafba4c 100644 --- a/packages/admin-test-utils/package.json +++ b/packages/admin-test-utils/package.json @@ -24,6 +24,9 @@ "@testing-library/jest-dom": "5.16.5", "jest-styled-components": "7.0.2" }, + "peerDependencies": { + "redux": "^4.0.1" + }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, diff --git a/packages/cli/create-strapi-app/create-strapi-app.js b/packages/cli/create-strapi-app/create-strapi-app.js index ce398787323..50188fb8b48 100644 --- a/packages/cli/create-strapi-app/create-strapi-app.js +++ b/packages/cli/create-strapi-app/create-strapi-app.js @@ -39,7 +39,7 @@ program .option('--template ', 'Specify a Strapi template') .option('--ts, --typescript', 'Use TypeScript to generate the project') .description('create a new application') - .action(directory => { + .action((directory) => { initProject(directory, program); }) .parse(process.argv); @@ -62,7 +62,7 @@ async function initProject(projectName, program) { await checkInstallPath(resolve(projectName)); } - const hasDatabaseOptions = databaseOptions.some(opt => program[opt]); + const hasDatabaseOptions = databaseOptions.some((opt) => program[opt]); if (program.quickstart && hasDatabaseOptions) { console.error( diff --git a/packages/cli/create-strapi-starter/create-strapi-starter.js b/packages/cli/create-strapi-starter/create-strapi-starter.js index 4e27261c30d..919349bf52a 100644 --- a/packages/cli/create-strapi-starter/create-strapi-starter.js +++ b/packages/cli/create-strapi-starter/create-strapi-starter.js @@ -57,7 +57,9 @@ function generateApp(projectArgs, programArgs) { } async function initProject(projectArgs, program) { - const hasIncompatibleQuickstartOptions = incompatibleQuickstartOptions.some(opt => program[opt]); + const hasIncompatibleQuickstartOptions = incompatibleQuickstartOptions.some( + (opt) => program[opt] + ); if (program.quickstart && hasIncompatibleQuickstartOptions) { console.error( @@ -96,7 +98,7 @@ async function initProject(projectArgs, program) { try { program.parse(process.argv); } catch (err) { - if (err.exitCode && err.exitCode != 0) { + if (err.exitCode && err.exitCode !== 0) { program.outputHelp(); } } diff --git a/packages/cli/create-strapi-starter/utils/build-starter.js b/packages/cli/create-strapi-starter/utils/build-starter.js index e76c084a894..8b01c42f083 100644 --- a/packages/cli/create-strapi-starter/utils/build-starter.js +++ b/packages/cli/create-strapi-starter/utils/build-starter.js @@ -72,10 +72,7 @@ async function installWithLogs(path, options) { const installPrefix = chalk.yellow('Installing dependencies:'); const loader = ora(installPrefix).start(); const logInstall = (chunk = '') => { - loader.text = `${installPrefix} ${chunk - .toString() - .split('\n') - .join(' ')}`; + loader.text = `${installPrefix} ${chunk.toString().split('\n').join(' ')}`; }; const runner = runInstall(path, options); @@ -94,7 +91,7 @@ async function installWithLogs(path, options) { * @param {boolean} options.useYarn Use yarn instead of npm */ async function getStarterInfo(starter, { useYarn } = {}) { - const isLocalStarter = ['./', '../', '/'].some(filePrefix => starter.startsWith(filePrefix)); + const isLocalStarter = ['./', '../', '/'].some((filePrefix) => starter.startsWith(filePrefix)); let starterPath; let starterParentPath; @@ -125,12 +122,8 @@ async function getStarterInfo(starter, { useYarn } = {}) { */ module.exports = async function buildStarter({ projectName, starter }, program) { const hasYarnInstalled = await hasYarn(); - const { - isLocalStarter, - starterPath, - starterParentPath, - starterPackageInfo, - } = await getStarterInfo(starter, { useYarn: hasYarnInstalled }); + const { isLocalStarter, starterPath, starterParentPath, starterPackageInfo } = + await getStarterInfo(starter, { useYarn: hasYarnInstalled }); // Project directory const rootPath = resolve(projectName); diff --git a/packages/core/admin/admin/src/StrapiApp.js b/packages/core/admin/admin/src/StrapiApp.js index fbc6a8e9c66..cca63eb7687 100644 --- a/packages/core/admin/admin/src/StrapiApp.js +++ b/packages/core/admin/admin/src/StrapiApp.js @@ -61,15 +61,15 @@ class StrapiApp { }; } - addComponents = components => { + addComponents = (components) => { if (Array.isArray(components)) { - components.map(compo => this.library.components.add(compo)); + components.map((compo) => this.library.components.add(compo)); } else { this.library.components.add(components); } }; - addCorePluginMenuLink = link => { + addCorePluginMenuLink = (link) => { const stringifiedLink = JSON.stringify(link); invariant(link.to, `link.to should be defined for ${stringifiedLink}`); @@ -89,15 +89,15 @@ class StrapiApp { this.menu.push(link); }; - addFields = fields => { + addFields = (fields) => { if (Array.isArray(fields)) { - fields.map(field => this.library.fields.add(field)); + fields.map((field) => this.library.fields.add(field)); } else { this.library.fields.add(fields); } }; - addMenuLink = link => { + addMenuLink = (link) => { const stringifiedLink = JSON.stringify(link); invariant(link.to, `link.to should be defined for ${stringifiedLink}`); @@ -121,14 +121,14 @@ class StrapiApp { this.menu.push(link); }; - addMiddlewares = middlewares => { - middlewares.forEach(middleware => { + addMiddlewares = (middlewares) => { + middlewares.forEach((middleware) => { this.middlewares.add(middleware); }); }; - addReducers = reducers => { - Object.keys(reducers).forEach(reducerName => { + addReducers = (reducers) => { + Object.keys(reducers).forEach((reducerName) => { this.reducers.add(reducerName, reducers[reducerName]); }); }; @@ -156,13 +156,13 @@ class StrapiApp { invariant(this.settings[sectionId], 'The section does not exist'); invariant(Array.isArray(links), 'TypeError expected links to be an array'); - links.forEach(link => { + links.forEach((link) => { this.addSettingsLink(sectionId, link); }); }; async bootstrap() { - Object.keys(this.appPlugins).forEach(plugin => { + Object.keys(this.appPlugins).forEach((plugin) => { const bootstrap = this.appPlugins[plugin].bootstrap; if (bootstrap) { @@ -208,7 +208,7 @@ class StrapiApp { if (this.customConfigurations?.locales) { this.configurations.locales = [ 'en', - ...this.customConfigurations.locales?.filter(loc => loc !== 'en'), + ...(this.customConfigurations.locales?.filter((loc) => loc !== 'en') || []), ]; } @@ -237,7 +237,7 @@ class StrapiApp { } }; - createHook = name => { + createHook = (name) => { this.hooksDict[name] = createHook(); }; @@ -253,7 +253,7 @@ class StrapiApp { this.settings[section.id] = { ...section, links: [] }; - links.forEach(link => { + links.forEach((link) => { this.addSettingsLink(section.id, link); }); }; @@ -274,12 +274,12 @@ class StrapiApp { } }; - getPlugin = pluginId => { + getPlugin = (pluginId) => { return this.plugins[pluginId]; }; async initialize() { - Object.keys(this.appPlugins).forEach(plugin => { + Object.keys(this.appPlugins).forEach((plugin) => { this.appPlugins[plugin].register({ addComponents: this.addComponents, addCorePluginMenuLink: this.addCorePluginMenuLink, @@ -319,7 +319,7 @@ class StrapiApp { * @returns {Object} The imported admin translations */ async loadAdminTrads() { - const arrayOfPromises = this.configurations.locales.map(locale => { + const arrayOfPromises = this.configurations.locales.map((locale) => { return import(/* webpackChunkName: "[request]" */ `./translations/${locale}.json`) .then(({ default: data }) => { return { data, locale }; @@ -350,7 +350,7 @@ class StrapiApp { const adminTranslations = await this.loadAdminTrads(); const arrayOfPromises = Object.keys(this.appPlugins) - .map(plugin => { + .map((plugin) => { const registerTrads = this.appPlugins[plugin].registerTrads; if (registerTrads) { @@ -359,7 +359,7 @@ class StrapiApp { return null; }) - .filter(a => a); + .filter((a) => a); const pluginsTrads = await Promise.all(arrayOfPromises); const mergedTrads = pluginsTrads.reduce((acc, currentPluginTrads) => { @@ -369,7 +369,7 @@ class StrapiApp { return acc1; }, {}); - Object.keys(pluginTrads).forEach(locale => { + Object.keys(pluginTrads).forEach((locale) => { acc[locale] = { ...acc[locale], ...pluginTrads[locale] }; }); @@ -399,7 +399,7 @@ class StrapiApp { this.hooksDict[name].register(fn); }; - registerPlugin = pluginConf => { + registerPlugin = (pluginConf) => { const plugin = Plugin(pluginConf); this.plugins[plugin.pluginId] = plugin; @@ -414,7 +414,7 @@ class StrapiApp { : this.hooksDict[name].runWaterfall(initialValue, store); }; - runHookParallel = name => this.hooksDict[name].runParallel(); + runHookParallel = (name) => this.hooksDict[name].runParallel(); render() { const store = this.createStore(); diff --git a/packages/core/admin/admin/src/components/AuthenticatedApp/index.js b/packages/core/admin/admin/src/components/AuthenticatedApp/index.js index bbe6da4a25e..04e7b3a1c5d 100644 --- a/packages/core/admin/admin/src/components/AuthenticatedApp/index.js +++ b/packages/core/admin/admin/src/components/AuthenticatedApp/index.js @@ -56,9 +56,10 @@ const AuthenticatedApp = () => { }, ]); - const shouldUpdateStrapi = useMemo(() => checkLatestStrapiVersion(strapiVersion, tag_name), [ - tag_name, - ]); + const shouldUpdateStrapi = useMemo( + () => checkLatestStrapiVersion(strapiVersion, tag_name), + [tag_name] + ); useEffect(() => { if (userRoles) { diff --git a/packages/core/admin/admin/src/components/AuthenticatedApp/tests/index.test.js b/packages/core/admin/admin/src/components/AuthenticatedApp/tests/index.test.js index 757b96b0659..476b32bc42d 100644 --- a/packages/core/admin/admin/src/components/AuthenticatedApp/tests/index.test.js +++ b/packages/core/admin/admin/src/components/AuthenticatedApp/tests/index.test.js @@ -35,9 +35,21 @@ jest.mock('../utils/api', () => ({ fetchUserRoles: jest.fn(), })); -jest.mock('../../PluginsInitializer', () => () =>
PluginsInitializer
); +jest.mock( + '../../PluginsInitializer', + () => + function () { + return
PluginsInitializer
; + } +); // eslint-disable-next-line react/prop-types -jest.mock('../../RBACProvider', () => ({ children }) =>
{children}
); +jest.mock( + '../../RBACProvider', + () => + function ({ children }) { + return
{children}
; + } +); const queryClient = new QueryClient({ defaultOptions: { diff --git a/packages/core/admin/admin/src/components/AuthenticatedApp/utils/api.js b/packages/core/admin/admin/src/components/AuthenticatedApp/utils/api.js index fab32081617..2f03015bb44 100644 --- a/packages/core/admin/admin/src/components/AuthenticatedApp/utils/api.js +++ b/packages/core/admin/admin/src/components/AuthenticatedApp/utils/api.js @@ -6,7 +6,7 @@ import packageJSON from '../../../../../package.json'; const strapiVersion = packageJSON.version; const showUpdateNotif = !JSON.parse(localStorage.getItem('STRAPI_UPDATE_NOTIF')); -const fetchStrapiLatestRelease = async toggleNotification => { +const fetchStrapiLatestRelease = async (toggleNotification) => { try { const { data: { tag_name }, diff --git a/packages/core/admin/admin/src/components/AutoReloadOverlayBlockerProvider/index.js b/packages/core/admin/admin/src/components/AutoReloadOverlayBlockerProvider/index.js index a0eddbb2543..9973715937a 100644 --- a/packages/core/admin/admin/src/components/AutoReloadOverlayBlockerProvider/index.js +++ b/packages/core/admin/admin/src/components/AutoReloadOverlayBlockerProvider/index.js @@ -13,7 +13,7 @@ const AutoReloadOverlayBlockerProvider = ({ children }) => { const lockAppWithAutoreload = (config = undefined) => { setIsOpen(true); setConfig(config); - setState(prev => ({ ...prev, start: Date.now() })); + setState((prev) => ({ ...prev, start: Date.now() })); }; const unlockAppWithAutoreload = () => { @@ -36,7 +36,7 @@ const AutoReloadOverlayBlockerProvider = ({ children }) => { return null; } - setState(prev => ({ ...prev, elapsed: Math.round(Date.now() - prev.start) / 1000 })); + setState((prev) => ({ ...prev, elapsed: Math.round(Date.now() - prev.start) / 1000 })); return null; }, 1000); diff --git a/packages/core/admin/admin/src/components/ConfigurationsProvider/reducer.js b/packages/core/admin/admin/src/components/ConfigurationsProvider/reducer.js index 5f2e5d59214..d0696530e7b 100644 --- a/packages/core/admin/admin/src/components/ConfigurationsProvider/reducer.js +++ b/packages/core/admin/admin/src/components/ConfigurationsProvider/reducer.js @@ -12,7 +12,7 @@ const initialState = { }; const reducer = (state = initialState, action) => - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case 'UPDATE_PROJECT_SETTINGS': { Object.assign(draftState, action.values); diff --git a/packages/core/admin/admin/src/components/GuidedTour/Homepage/components/Stepper.js b/packages/core/admin/admin/src/components/GuidedTour/Homepage/components/Stepper.js index f3409be7acc..a0c032d0b4f 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/Homepage/components/Stepper.js +++ b/packages/core/admin/admin/src/components/GuidedTour/Homepage/components/Stepper.js @@ -19,7 +19,7 @@ const getType = (activeSectionIndex, index) => { }; const StepperHomepage = ({ sections, currentSectionKey }) => { - const activeSectionIndex = sections.findIndex(section => section.key === currentSectionKey); + const activeSectionIndex = sections.findIndex((section) => section.key === currentSectionKey); return ( diff --git a/packages/core/admin/admin/src/components/GuidedTour/Homepage/components/tests/Stepper.test.js b/packages/core/admin/admin/src/components/GuidedTour/Homepage/components/tests/Stepper.test.js index 513af74fa2d..d42c860ff59 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/Homepage/components/tests/Stepper.test.js +++ b/packages/core/admin/admin/src/components/GuidedTour/Homepage/components/tests/Stepper.test.js @@ -31,7 +31,7 @@ const sections = [ }, ]; -const App = children => ( +const App = (children) => ( {children} diff --git a/packages/core/admin/admin/src/components/GuidedTour/Homepage/index.js b/packages/core/admin/admin/src/components/GuidedTour/Homepage/index.js index 367bb692933..d72871d541f 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/Homepage/index.js +++ b/packages/core/admin/admin/src/components/GuidedTour/Homepage/index.js @@ -29,12 +29,12 @@ const GuidedTourHomepage = () => { ), })); - const enrichedSections = sections.map(section => ({ + const enrichedSections = sections.map((section) => ({ isDone: Object.entries(guidedTourState[section.key]).every(([, value]) => value), ...section, })); - const activeSection = enrichedSections.find(section => !section.isDone)?.key; + const activeSection = enrichedSections.find((section) => !section.isDone)?.key; const handleSkip = () => { setSkipped(true); diff --git a/packages/core/admin/admin/src/components/GuidedTour/Modal/components/Content.js b/packages/core/admin/admin/src/components/GuidedTour/Modal/components/Content.js index be1ad8f7d26..09bcd0dafca 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/Modal/components/Content.js +++ b/packages/core/admin/admin/src/components/GuidedTour/Modal/components/Content.js @@ -18,7 +18,7 @@ const Content = ({ id, defaultMessage }) => { {formatMessage( { id, defaultMessage }, { - documentationLink: children => ( + documentationLink: (children) => ( { {children} ), - b: children => {children}, - p: children => {children}, - light: children => {children}, - ul: children => ( + b: (children) => {children}, + p: (children) => {children}, + light: (children) => {children}, + ul: (children) => (
    {children}
), - li: children => {children}, + li: (children) => {children}, } )} diff --git a/packages/core/admin/admin/src/components/GuidedTour/Modal/components/Modal.js b/packages/core/admin/admin/src/components/GuidedTour/Modal/components/Modal.js index e501a65ac03..f60f5b71dd1 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/Modal/components/Modal.js +++ b/packages/core/admin/admin/src/components/GuidedTour/Modal/components/Modal.js @@ -36,7 +36,7 @@ const Modal = ({ onClose, onSkip, children, hideSkip }) => { spacing={8} role="dialog" aria-modal - onClick={e => e.stopPropagation()} + onClick={(e) => e.stopPropagation()} > { setSkipped, } = useGuidedTour(); const [isVisible, setIsVisible] = useState(currentStep); - const [ - { stepContent, sectionIndex, stepIndex, hasSectionAfter, hasStepAfter }, - dispatch, - ] = useReducer(reducer, initialState); + const [{ stepContent, sectionIndex, stepIndex, hasSectionAfter, hasStepAfter }, dispatch] = + useReducer(reducer, initialState); const { trackUsage } = useTracking(); useEffect(() => { diff --git a/packages/core/admin/admin/src/components/GuidedTour/Modal/reducer.js b/packages/core/admin/admin/src/components/GuidedTour/Modal/reducer.js index e71250eb0a7..da50f47332a 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/Modal/reducer.js +++ b/packages/core/admin/admin/src/components/GuidedTour/Modal/reducer.js @@ -10,7 +10,7 @@ export const initialState = { }; const reducer = (state = initialState, action) => - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case 'UPDATE_MODAL': { draftState.stepContent = action.content; diff --git a/packages/core/admin/admin/src/components/GuidedTour/index.js b/packages/core/admin/admin/src/components/GuidedTour/index.js index c68af686a9c..cab615509c2 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/index.js +++ b/packages/core/admin/admin/src/components/GuidedTour/index.js @@ -15,7 +15,7 @@ const GuidedTour = ({ children }) => { init ); - const setCurrentStep = step => { + const setCurrentStep = (step) => { // if step is null it is intentional, we need to dispatch it if (step !== null) { const isStepAlreadyDone = get(guidedTourState, step); @@ -34,7 +34,7 @@ const GuidedTour = ({ children }) => { }); }; - const setGuidedTourVisibility = value => { + const setGuidedTourVisibility = (value) => { dispatch({ type: 'SET_GUIDED_TOUR_VISIBILITY', value, @@ -51,7 +51,7 @@ const GuidedTour = ({ children }) => { }); }; - const startSection = sectionName => { + const startSection = (sectionName) => { const sectionSteps = guidedTourState[sectionName]; if (sectionSteps) { @@ -67,7 +67,7 @@ const GuidedTour = ({ children }) => { return null; }; - const setSkipped = value => { + const setSkipped = (value) => { persistStateToLocaleStorage.setSkipped(value); dispatch({ diff --git a/packages/core/admin/admin/src/components/GuidedTour/init.js b/packages/core/admin/admin/src/components/GuidedTour/init.js index 176fe444f1a..4aadedce0be 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/init.js +++ b/packages/core/admin/admin/src/components/GuidedTour/init.js @@ -5,14 +5,14 @@ import persistStateToLocaleStorage, { SKIPPED, } from './utils/persistStateToLocaleStorage'; -const init = initialState => { +const init = (initialState) => { const copyInitialState = { ...initialState }; const guidedTourLocaleStorage = persistStateToLocaleStorage.get(COMPLETED_STEPS); const currentStepLocaleStorage = persistStateToLocaleStorage.get(CURRENT_STEP); const skippedLocaleStorage = persistStateToLocaleStorage.get(SKIPPED); if (guidedTourLocaleStorage) { - guidedTourLocaleStorage.forEach(step => { + guidedTourLocaleStorage.forEach((step) => { const [sectionName, stepName] = step.split('.'); set(copyInitialState, ['guidedTourState', sectionName, stepName], true); }); diff --git a/packages/core/admin/admin/src/components/GuidedTour/reducer.js b/packages/core/admin/admin/src/components/GuidedTour/reducer.js index 47ea171977e..7887e89b5b8 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/reducer.js +++ b/packages/core/admin/admin/src/components/GuidedTour/reducer.js @@ -22,7 +22,7 @@ export const initialState = { }; const reducer = (state = initialState, action) => - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case 'SET_CURRENT_STEP': { draftState.currentStep = action.step; diff --git a/packages/core/admin/admin/src/components/GuidedTour/utils/isGuidedTourCompleted.js b/packages/core/admin/admin/src/components/GuidedTour/utils/isGuidedTourCompleted.js index d48755d6a5c..2296ed7ef5d 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/utils/isGuidedTourCompleted.js +++ b/packages/core/admin/admin/src/components/GuidedTour/utils/isGuidedTourCompleted.js @@ -1,4 +1,4 @@ -const isGuidedTourCompleted = guidedTourState => +const isGuidedTourCompleted = (guidedTourState) => Object.entries(guidedTourState).every(([, section]) => Object.entries(section).every(([, step]) => step) ); diff --git a/packages/core/admin/admin/src/components/GuidedTour/utils/persistStateToLocaleStorage.js b/packages/core/admin/admin/src/components/GuidedTour/utils/persistStateToLocaleStorage.js index 71104a32a22..57b3dd7bb5c 100644 --- a/packages/core/admin/admin/src/components/GuidedTour/utils/persistStateToLocaleStorage.js +++ b/packages/core/admin/admin/src/components/GuidedTour/utils/persistStateToLocaleStorage.js @@ -9,7 +9,7 @@ const persistStateToLocaleStorage = { localStorage.removeItem(CURRENT_STEP); localStorage.removeItem(COMPLETED_STEPS); }, - addCompletedStep: completedStep => { + addCompletedStep(completedStep) { const currentSteps = parse(localStorage.getItem(COMPLETED_STEPS))?.slice() || []; const isAlreadyStored = currentSteps.includes(completedStep); @@ -20,13 +20,13 @@ const persistStateToLocaleStorage = { currentSteps.push(completedStep); localStorage.setItem(COMPLETED_STEPS, stringify(currentSteps)); }, - addCurrentStep: currentStep => { + addCurrentStep(currentStep) { localStorage.setItem(CURRENT_STEP, stringify(currentStep)); }, - setSkipped: value => { + setSkipped(value) { localStorage.setItem(SKIPPED, stringify(value)); }, - get: item => { + get(item) { return parse(localStorage.getItem(item)); }, }; diff --git a/packages/core/admin/admin/src/components/LanguageProvider/index.js b/packages/core/admin/admin/src/components/LanguageProvider/index.js index ac0b8b591f2..d94e792dc30 100644 --- a/packages/core/admin/admin/src/components/LanguageProvider/index.js +++ b/packages/core/admin/admin/src/components/LanguageProvider/index.js @@ -23,7 +23,7 @@ const LanguageProvider = ({ children, localeNames, messages }) => { window.localStorage.setItem(localStorageKey, locale); }, [locale]); - const changeLocale = locale => { + const changeLocale = (locale) => { dispatch({ type: 'CHANGE_LOCALE', locale, diff --git a/packages/core/admin/admin/src/components/LanguageProvider/init.js b/packages/core/admin/admin/src/components/LanguageProvider/init.js index 2e639374699..54d4f8b7d4d 100644 --- a/packages/core/admin/admin/src/components/LanguageProvider/init.js +++ b/packages/core/admin/admin/src/components/LanguageProvider/init.js @@ -1,6 +1,6 @@ import localStorageKey from './utils/localStorageKey'; -const init = localeNames => { +const init = (localeNames) => { const languageFromLocaleStorage = window.localStorage.getItem(localStorageKey); const appLanguage = localeNames[languageFromLocaleStorage] ? languageFromLocaleStorage : 'en'; diff --git a/packages/core/admin/admin/src/components/LeftMenu/index.js b/packages/core/admin/admin/src/components/LeftMenu/index.js index 79c21683afe..23b936b3b8e 100644 --- a/packages/core/admin/admin/src/components/LeftMenu/index.js +++ b/packages/core/admin/admin/src/components/LeftMenu/index.js @@ -62,18 +62,18 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => { const initials = userDisplayName .split(' ') - .map(name => name.substring(0, 1)) + .map((name) => name.substring(0, 1)) .join('') .substring(0, 2); - const handleToggleUserLinks = () => setUserLinksVisible(prev => !prev); + const handleToggleUserLinks = () => setUserLinksVisible((prev) => !prev); const handleLogout = () => { auth.clearAppStorage(); handleToggleUserLinks(); }; - const handleBlur = e => { + const handleBlur = (e) => { if ( !e.currentTarget.contains(e.relatedTarget) && e.relatedTarget?.parentElement?.id !== 'main-nav-user-button' @@ -121,7 +121,7 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => { defaultMessage: 'Plugins', })} > - {pluginsSectionLinks.map(link => { + {pluginsSectionLinks.map((link) => { const Icon = link.icon; return ( @@ -140,7 +140,7 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => { defaultMessage: 'General', })} > - {generalSectionLinks.map(link => { + {generalSectionLinks.map((link) => { const LinkIcon = link.icon; return ( @@ -201,7 +201,7 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => { )} - setCondensed(s => !s)}> + setCondensed((s) => !s)}> {condensed ? formatMessage({ id: 'app.components.LeftMenu.expand', diff --git a/packages/core/admin/admin/src/components/Notifications/Notification/index.js b/packages/core/admin/admin/src/components/Notifications/Notification/index.js index a2a4c4cf7e9..38b81388300 100644 --- a/packages/core/admin/admin/src/components/Notifications/Notification/index.js +++ b/packages/core/admin/admin/src/components/Notifications/Notification/index.js @@ -8,7 +8,8 @@ const Notification = ({ dispatch, notification }) => { const { formatMessage } = useIntl(); const { message, link, type, id, onClose, timeout, blockTransition } = notification; - const formattedMessage = msg => (typeof msg === 'string' ? msg : formatMessage(msg, msg.values)); + const formattedMessage = (msg) => + typeof msg === 'string' ? msg : formatMessage(msg, msg.values); const handleClose = useCallback(() => { if (onClose) { onClose(); @@ -66,9 +67,7 @@ const Notification = ({ dispatch, notification }) => { defaultMessage: link.label?.defaultMessage || link.label?.id || link.label, })} - ) : ( - undefined - ) + ) : undefined } onClose={handleClose} closeLabel="Close" diff --git a/packages/core/admin/admin/src/components/Notifications/index.js b/packages/core/admin/admin/src/components/Notifications/index.js index c8d6b68865f..598beef8428 100644 --- a/packages/core/admin/admin/src/components/Notifications/index.js +++ b/packages/core/admin/admin/src/components/Notifications/index.js @@ -8,7 +8,7 @@ import reducer, { initialState } from './reducer'; const Notifications = ({ children }) => { const [{ notifications }, dispatch] = useReducer(reducer, initialState); - const displayNotification = config => { + const displayNotification = (config) => { dispatch({ type: 'SHOW_NOTIFICATION', config, @@ -26,7 +26,7 @@ const Notifications = ({ children }) => { width={`${500 / 16}rem`} zIndex={10} > - {notifications.map(notification => { + {notifications.map((notification) => { return ( ); diff --git a/packages/core/admin/admin/src/components/Notifications/reducer.js b/packages/core/admin/admin/src/components/Notifications/reducer.js index 1d67d1696fe..fbbd816df5f 100644 --- a/packages/core/admin/admin/src/components/Notifications/reducer.js +++ b/packages/core/admin/admin/src/components/Notifications/reducer.js @@ -8,7 +8,7 @@ const initialState = { const notificationReducer = (state = initialState, action) => // eslint-disable-next-line consistent-return - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case 'SHOW_NOTIFICATION': { draftState.notifications.push({ @@ -28,7 +28,7 @@ const notificationReducer = (state = initialState, action) => break; } case 'HIDE_NOTIFICATION': { - const indexToRemove = state.notifications.findIndex(notif => notif.id === action.id); + const indexToRemove = state.notifications.findIndex((notif) => notif.id === action.id); if (indexToRemove !== -1) { draftState.notifications.splice(indexToRemove, 1); diff --git a/packages/core/admin/admin/src/components/Notifications/tests/index.test.js b/packages/core/admin/admin/src/components/Notifications/tests/index.test.js index 44ee3386e1d..6ff383a5a16 100644 --- a/packages/core/admin/admin/src/components/Notifications/tests/index.test.js +++ b/packages/core/admin/admin/src/components/Notifications/tests/index.test.js @@ -108,7 +108,7 @@ describe('', () => { expect(items).toHaveLength(1); await act(async () => { - await new Promise(resolve => setTimeout(resolve, 2500)); + await new Promise((resolve) => setTimeout(resolve, 2500)); }); const foundItems = screen.queryAllByText(/simple notif/); @@ -151,7 +151,7 @@ describe('', () => { expect(items).toHaveLength(1); await act(async () => { - await new Promise(resolve => setTimeout(resolve, 2500)); + await new Promise((resolve) => setTimeout(resolve, 2500)); }); const foundItems = screen.queryAllByText(/simple notif/); diff --git a/packages/core/admin/admin/src/components/PluginsInitializer/index.js b/packages/core/admin/admin/src/components/PluginsInitializer/index.js index 8a4c1abc50f..bd3a1b6c74e 100644 --- a/packages/core/admin/admin/src/components/PluginsInitializer/index.js +++ b/packages/core/admin/admin/src/components/PluginsInitializer/index.js @@ -8,11 +8,13 @@ import reducer, { initialState } from './reducer'; const PluginsInitializer = () => { const { plugins: appPlugins } = useStrapiApp(); const [{ plugins }, dispatch] = useReducer(reducer, initialState, () => init(appPlugins)); - const setPlugin = useRef(pluginId => { + const setPlugin = useRef((pluginId) => { dispatch({ type: 'SET_PLUGIN_READY', pluginId }); }); - const hasApluginNotReady = Object.keys(plugins).some(plugin => plugins[plugin].isReady === false); + const hasApluginNotReady = Object.keys(plugins).some( + (plugin) => plugins[plugin].isReady === false + ); if (hasApluginNotReady) { const initializers = Object.keys(plugins).reduce((acc, current) => { diff --git a/packages/core/admin/admin/src/components/PluginsInitializer/init.js b/packages/core/admin/admin/src/components/PluginsInitializer/init.js index 50429ad16f7..c73c65fa200 100644 --- a/packages/core/admin/admin/src/components/PluginsInitializer/init.js +++ b/packages/core/admin/admin/src/components/PluginsInitializer/init.js @@ -1,4 +1,4 @@ -const init = plugins => { +const init = (plugins) => { return { plugins: Object.keys(plugins).reduce((acc, current) => { acc[current] = { ...plugins[current] }; diff --git a/packages/core/admin/admin/src/components/PluginsInitializer/reducer.js b/packages/core/admin/admin/src/components/PluginsInitializer/reducer.js index d21382e5033..eb5826edc91 100644 --- a/packages/core/admin/admin/src/components/PluginsInitializer/reducer.js +++ b/packages/core/admin/admin/src/components/PluginsInitializer/reducer.js @@ -7,7 +7,7 @@ const initialState = { const reducer = (state = initialState, action) => /* eslint-disable-next-line consistent-return */ - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case 'SET_PLUGIN_READY': { set(draftState, ['plugins', action.pluginId, 'isReady'], true); diff --git a/packages/core/admin/admin/src/components/PluginsInitializer/tests/index.test.js b/packages/core/admin/admin/src/components/PluginsInitializer/tests/index.test.js index c983d60da99..80793e56179 100644 --- a/packages/core/admin/admin/src/components/PluginsInitializer/tests/index.test.js +++ b/packages/core/admin/admin/src/components/PluginsInitializer/tests/index.test.js @@ -3,7 +3,13 @@ import { StrapiAppProvider } from '@strapi/helper-plugin'; import { render } from '@testing-library/react'; import PluginsInitializer from '../index'; -jest.mock('../../../pages/Admin', () => () =>
ADMIN
); +jest.mock( + '../../../pages/Admin', + () => + function () { + return
ADMIN
; + } +); describe('ADMIN | COMPONENTS | PluginsInitializer', () => { it('should not crash', () => { diff --git a/packages/core/admin/admin/src/components/PrivateRoute/index.js b/packages/core/admin/admin/src/components/PrivateRoute/index.js index b5cc08bf1d3..9f99bff0e9a 100644 --- a/packages/core/admin/admin/src/components/PrivateRoute/index.js +++ b/packages/core/admin/admin/src/components/PrivateRoute/index.js @@ -20,7 +20,7 @@ const PrivateRoute = ({ component: Component, path, ...rest }) => { return ( + render={(props) => auth.getToken() !== null ? ( ) : ( diff --git a/packages/core/admin/admin/src/components/RBACProvider/actions.js b/packages/core/admin/admin/src/components/RBACProvider/actions.js index bb1629235f7..dfaba17b306 100644 --- a/packages/core/admin/admin/src/components/RBACProvider/actions.js +++ b/packages/core/admin/admin/src/components/RBACProvider/actions.js @@ -2,7 +2,7 @@ import { RESET_STORE, SET_PERMISSIONS } from './constants'; const resetStore = () => ({ type: RESET_STORE }); -const setPermissions = permissions => ({ +const setPermissions = (permissions) => ({ type: SET_PERMISSIONS, permissions, }); diff --git a/packages/core/admin/admin/src/components/RBACProvider/index.js b/packages/core/admin/admin/src/components/RBACProvider/index.js index e93e52a7d21..15ec3ed7e8d 100644 --- a/packages/core/admin/admin/src/components/RBACProvider/index.js +++ b/packages/core/admin/admin/src/components/RBACProvider/index.js @@ -5,7 +5,7 @@ import PropTypes from 'prop-types'; import { resetStore, setPermissions } from './actions'; const RBACProvider = ({ children, permissions, refetchPermissions }) => { - const { allPermissions } = useSelector(state => state.rbacProvider); + const { allPermissions } = useSelector((state) => state.rbacProvider); const dispatch = useDispatch(); diff --git a/packages/core/admin/admin/src/components/RBACProvider/reducer.js b/packages/core/admin/admin/src/components/RBACProvider/reducer.js index 9f28fd98711..1730c787518 100644 --- a/packages/core/admin/admin/src/components/RBACProvider/reducer.js +++ b/packages/core/admin/admin/src/components/RBACProvider/reducer.js @@ -18,12 +18,12 @@ const initialState = { const reducer = (state = initialState, action) => // eslint-disable-next-line consistent-return - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case SET_PERMISSIONS: { draftState.allPermissions = action.permissions; draftState.collectionTypesRelatedPermissions = action.permissions - .filter(perm => perm.subject) + .filter((perm) => perm.subject) .reduce((acc, current) => { const { subject, action } = current; diff --git a/packages/core/admin/admin/src/components/RBACProvider/tests/reducer.test.js b/packages/core/admin/admin/src/components/RBACProvider/tests/reducer.test.js index 06a104c953b..36232ee26b8 100644 --- a/packages/core/admin/admin/src/components/RBACProvider/tests/reducer.test.js +++ b/packages/core/admin/admin/src/components/RBACProvider/tests/reducer.test.js @@ -1,4 +1,4 @@ -import { permissions } from '../../../../../../../admin-test-utils/lib/fixtures'; +import { permissions } from '@strapi/admin-test-utils/lib/fixtures/fixtures'; import { setPermissions, resetStore } from '../actions'; import rbacProviderReducer, { initialState } from '../reducer'; diff --git a/packages/core/admin/admin/src/components/ThemeToggleProvider/index.js b/packages/core/admin/admin/src/components/ThemeToggleProvider/index.js index 4810780def0..b056ee090e3 100644 --- a/packages/core/admin/admin/src/components/ThemeToggleProvider/index.js +++ b/packages/core/admin/admin/src/components/ThemeToggleProvider/index.js @@ -20,7 +20,7 @@ const getDefaultTheme = () => { const ThemeToggleProvider = ({ children, themes }) => { const [currentTheme, setCurrentTheme] = useState(getDefaultTheme()); - const handleChangeTheme = nextTheme => { + const handleChangeTheme = (nextTheme) => { setCurrentTheme(nextTheme); localStorage.setItem(THEME_KEY, nextTheme); }; diff --git a/packages/core/admin/admin/src/components/UpgradePlanModal/index.js b/packages/core/admin/admin/src/components/UpgradePlanModal/index.js index 376889feb91..1768f7dcadb 100644 --- a/packages/core/admin/admin/src/components/UpgradePlanModal/index.js +++ b/packages/core/admin/admin/src/components/UpgradePlanModal/index.js @@ -73,7 +73,7 @@ const UpgradePlanModal = ({ onClose, isOpen }) => { e.stopPropagation()} + onClick={(e) => e.stopPropagation()} aria-labelledby="upgrade-plan" background="neutral0" hasRadius diff --git a/packages/core/admin/admin/src/content-manager/components/AttributeFilter/Filters.js b/packages/core/admin/admin/src/content-manager/components/AttributeFilter/Filters.js index 2e93de492d5..8a1f925675f 100644 --- a/packages/core/admin/admin/src/content-manager/components/AttributeFilter/Filters.js +++ b/packages/core/admin/admin/src/content-manager/components/AttributeFilter/Filters.js @@ -16,7 +16,7 @@ const Filters = ({ displayedFilters }) => { if (!isVisible) { trackUsage('willFilterEntries'); } - setIsVisible(prev => !prev); + setIsVisible((prev) => !prev); }; return ( diff --git a/packages/core/admin/admin/src/content-manager/components/AttributeFilter/hooks/useAllowedAttributes.js b/packages/core/admin/admin/src/content-manager/components/AttributeFilter/hooks/useAllowedAttributes.js index c623406496a..edfe3411015 100644 --- a/packages/core/admin/admin/src/content-manager/components/AttributeFilter/hooks/useAllowedAttributes.js +++ b/packages/core/admin/admin/src/content-manager/components/AttributeFilter/hooks/useAllowedAttributes.js @@ -17,7 +17,7 @@ const useAllowedAttributes = (contentType, slug) => { const readPermissionForAttr = get(readPermissionsForSlug, ['0', 'properties', 'fields'], []); const attributesArray = Object.keys(get(contentType, ['attributes']), {}); const allowedAttributes = attributesArray - .filter(attr => { + .filter((attr) => { const current = get(contentType, ['attributes', attr], {}); if (!current.type) { diff --git a/packages/core/admin/admin/src/content-manager/components/AttributeFilter/index.js b/packages/core/admin/admin/src/content-manager/components/AttributeFilter/index.js index 215c476090f..48f922124d7 100644 --- a/packages/core/admin/admin/src/content-manager/components/AttributeFilter/index.js +++ b/packages/core/admin/admin/src/content-manager/components/AttributeFilter/index.js @@ -7,7 +7,7 @@ import Filters from './Filters'; const AttributeFilter = ({ contentType, slug, metadatas }) => { const { formatMessage } = useIntl(); const allowedAttributes = useAllowedAttributes(contentType, slug); - const displayedFilters = allowedAttributes.map(name => { + const displayedFilters = allowedAttributes.map((name) => { const attribute = contentType.attributes[name]; const { type, enum: options } = attribute; diff --git a/packages/core/admin/admin/src/content-manager/components/Block/index.js b/packages/core/admin/admin/src/content-manager/components/Block/index.js index e398d0773bb..1e1a62f0276 100644 --- a/packages/core/admin/admin/src/content-manager/components/Block/index.js +++ b/packages/core/admin/admin/src/content-manager/components/Block/index.js @@ -8,7 +8,7 @@ import PropTypes from 'prop-types'; import { FormattedMessage } from 'react-intl'; import { Wrapper, Sub } from './components'; -const renderMsg = msg =>

{msg}

; +const renderMsg = (msg) =>

{msg}

; const Block = ({ children, description, style, title }) => (
diff --git a/packages/core/admin/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js b/packages/core/admin/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js index 11e89a54f0e..399ce2ddee4 100644 --- a/packages/core/admin/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +++ b/packages/core/admin/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js @@ -40,13 +40,8 @@ const CollectionTypeFormWrapper = ({ allLayoutData, children, slug, id, origin } const { push, replace } = useHistory(); const [{ rawQuery }] = useQueryParams(); const dispatch = useDispatch(); - const { - componentsDataStructure, - contentTypeDataStructure, - data, - isLoading, - status, - } = useSelector(selectCrudReducer); + const { componentsDataStructure, contentTypeDataStructure, data, isLoading, status } = + useSelector(selectCrudReducer); const redirectionLink = useFindRedirectionLink(slug); const isMounted = useRef(true); @@ -65,7 +60,7 @@ const CollectionTypeFormWrapper = ({ allLayoutData, children, slug, id, origin } }, [slug, id, isCreatingEntry, origin]); const cleanClonedData = useCallback( - data => { + (data) => { if (!origin) { return data; } @@ -81,7 +76,7 @@ const CollectionTypeFormWrapper = ({ allLayoutData, children, slug, id, origin } [origin] ); - const cleanReceivedData = useCallback(data => { + const cleanReceivedData = useCallback((data) => { const cleaned = removePasswordFieldsFromData( data, allLayoutDataRef.current.contentType, @@ -136,7 +131,7 @@ const CollectionTypeFormWrapper = ({ allLayoutData, children, slug, id, origin } const CancelToken = axios.CancelToken; const source = CancelToken.source(); - const fetchData = async source => { + const fetchData = async (source) => { dispatch(getData()); try { @@ -201,7 +196,7 @@ const CollectionTypeFormWrapper = ({ allLayoutData, children, slug, id, origin } ]); const displayErrors = useCallback( - err => { + (err) => { const errorPayload = err.response.data; let errorMessage = get(errorPayload, ['error', 'message'], 'Bad Request'); @@ -218,7 +213,7 @@ const CollectionTypeFormWrapper = ({ allLayoutData, children, slug, id, origin } ); const onDelete = useCallback( - async trackerProperty => { + async (trackerProperty) => { try { trackUsageRef.current('willDeleteEntry', trackerProperty); diff --git a/packages/core/admin/admin/src/content-manager/components/DragLayer/index.js b/packages/core/admin/admin/src/content-manager/components/DragLayer/index.js index 69ccb9a67ce..12fac50850f 100644 --- a/packages/core/admin/admin/src/content-manager/components/DragLayer/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DragLayer/index.js @@ -36,7 +36,7 @@ function getItemStyles(initialOffset, currentOffset, mouseOffset) { const CustomDragLayer = () => { const { itemType, isDragging, item, initialOffset, currentOffset, mouseOffset } = useDragLayer( - monitor => ({ + (monitor) => ({ item: monitor.getItem(), itemType: monitor.getItemType(), initialOffset: monitor.getInitialSourceClientOffset(), diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js index ace7d6a9377..52037e50cdd 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicTable/CellContent/RelationMultiple/index.js @@ -85,7 +85,7 @@ const RelationMultiple = ({ fieldSchema, metadatas, queryInfos, name, rowId, val {status === 'success' && ( <> - {data?.results.map(entry => ( + {data?.results.map((entry) => ( { return ( - {value.map(item => ( + {value.map((item) => ( diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicTable/CellContent/utils/tests/isSingleRelation.test.js b/packages/core/admin/admin/src/content-manager/components/DynamicTable/CellContent/utils/tests/isSingleRelation.test.js index eb9848be013..9392a7256ea 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicTable/CellContent/utils/tests/isSingleRelation.test.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicTable/CellContent/utils/tests/isSingleRelation.test.js @@ -1,7 +1,7 @@ import isSingleRelation from '../isSingleRelation'; describe('isSingleRelation', () => { - ['oneToOne', 'manyToOne', 'oneToOneMorph'].forEach(type => { + ['oneToOne', 'manyToOne', 'oneToOneMorph'].forEach((type) => { test(`is single relation: ${type}`, () => { expect(isSingleRelation(type)).toBeTruthy(); }); diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicTable/TableRows/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicTable/TableRows/index.js index 0e37acdd4f1..5d45eb2abc7 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicTable/TableRows/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicTable/TableRows/index.js @@ -38,7 +38,7 @@ const TableRows = ({ return ( {rows.map((data, index) => { - const isChecked = entriesToDelete.findIndex(id => id === data.id) !== -1; + const isChecked = entriesToDelete.findIndex((id) => id === data.id) !== -1; const itemLineText = formatMessage( { id: 'content-manager.components.DynamicTable.row-line', @@ -51,7 +51,7 @@ const TableRows = ({ { + fn() { trackUsage('willEditEntryFromList'); push({ pathname: `${pathname}/${data.id}`, @@ -170,8 +170,8 @@ TableRows.defaultProps = { canCreate: false, canDelete: false, entriesToDelete: [], - onClickDelete: () => {}, - onSelectRow: () => {}, + onClickDelete() {}, + onSelectRow() {}, rows: [], withBulkActions: false, withMainAction: false, diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicTable/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicTable/index.js index 7ca5563c802..37c60ac454e 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicTable/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicTable/index.js @@ -35,7 +35,7 @@ const DynamicTable = ({ layout, }); - const formattedHeaders = headers.displayedHeaders.map(header => { + const formattedHeaders = headers.displayedHeaders.map((header) => { if (header.fieldSchema.type === 'relation') { const sortFieldValue = `${header.name}.${header.metadatas.mainField.name}`; @@ -65,7 +65,7 @@ const DynamicTable = ({ searchable: false, sortable: true, }, - cellFormatter: cellData => { + cellFormatter(cellData) { const isPublished = !isEmpty(cellData.publishedAt); return ; diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/AddComponentButton/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/AddComponentButton/index.js index 0547ddbcf58..cd3cbf38007 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/AddComponentButton/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/AddComponentButton/index.js @@ -120,26 +120,24 @@ const AddComponentButton = ({ } return ( - <> - - - - - - - - - {buttonLabel} - - - - - - + + + + + + + + + {buttonLabel} + + + + + ); }; diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/Component/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/Component/index.js index 2cf23883c7b..d76d3bdc54c 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/Component/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/Component/index.js @@ -88,7 +88,7 @@ const Component = ({ const formErrorsKeys = Object.keys(formErrors); - const fieldsErrors = formErrorsKeys.filter(errorKey => { + const fieldsErrors = formErrorsKeys.filter((errorKey) => { const errorKeysArray = errorKey.split('.'); if (`${errorKeysArray[0]}.${errorKeysArray[1]}` === `${name}.${index}`) { diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/ComponentCard/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/ComponentCard/index.js index 820591beabb..6f9ab169a2f 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/ComponentCard/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/ComponentCard/index.js @@ -75,7 +75,7 @@ function ComponentCard({ componentUid, intlLabel, icon, onClick }) { ComponentCard.defaultProps = { icon: 'dice-d6', - onClick: () => {}, + onClick() {}, }; ComponentCard.propTypes = { diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/index.js index fb94816ac5a..50d480cf6b0 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/index.js @@ -16,7 +16,7 @@ const ComponentPicker = ({ components, isOpen, onClickAddComponent }) => { const [categoryToOpen, setCategoryToOpen] = useState(''); const dynamicComponentCategories = useMemo(() => { - const componentsWithInfo = components.map(componentUid => { + const componentsWithInfo = components.map((componentUid) => { const { category, info } = getComponentLayout(componentUid); return { componentUid, category, info }; @@ -38,7 +38,7 @@ const ComponentPicker = ({ components, isOpen, onClickAddComponent }) => { }, [isOpen, dynamicComponentCategories]); const handleAddComponentToDz = useCallback( - componentUid => { + (componentUid) => { onClickAddComponent(componentUid); setCategoryToOpen(''); }, @@ -46,7 +46,7 @@ const ComponentPicker = ({ components, isOpen, onClickAddComponent }) => { ); const handleClickToggle = useCallback( - categoryName => { + (categoryName) => { const nextCategoryToOpen = categoryToOpen === categoryName ? '' : categoryName; setCategoryToOpen(nextCategoryToOpen); diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicZone/index.js b/packages/core/admin/admin/src/content-manager/components/DynamicZone/index.js index ae8cfef989a..879369ccdb4 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicZone/index.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicZone/index.js @@ -16,7 +16,7 @@ import ComponentPicker from './components/ComponentPicker'; /* eslint-disable react/no-array-index-key */ -const createCollapses = arrayLength => +const createCollapses = (arrayLength) => Array.from({ length: arrayLength }).map(() => ({ isOpen: false })); const DynamicZone = ({ @@ -53,7 +53,7 @@ const DynamicZone = ({ useEffect(() => { if (shouldOpenAddedComponent) { - setComponentsCollapses(prev => + setComponentsCollapses((prev) => prev.map((collapse, index) => { if (index === prev.length - 1) { return { ...collapse, isOpen: true }; @@ -71,10 +71,10 @@ const DynamicZone = ({ const { max = Infinity, min = -Infinity } = fieldSchema; const dynamicZoneErrors = useMemo(() => { return Object.keys(formErrors) - .filter(key => { + .filter((key) => { return key === name; }) - .map(key => formErrors[key]); + .map((key) => formErrors[key]); }, [formErrors, name]); const dynamicZoneAvailableComponents = useMemo(() => fieldSchema.components || [], [fieldSchema]); @@ -89,7 +89,7 @@ const DynamicZone = ({ hasError && get(dynamicZoneErrors, [0, 'id'], '') === 'components.Input.error.validation.max'; const handleAddComponent = useCallback( - componentUid => { + (componentUid) => { setIsOpen(false); addComponentToDynamicZone(name, componentUid, hasError); @@ -100,7 +100,7 @@ const DynamicZone = ({ const handleClickOpenPicker = () => { if (dynamicDisplayedComponentsLength < max) { - setIsOpen(prev => !prev); + setIsOpen((prev) => !prev); } else { toggleNotification({ type: 'info', @@ -109,8 +109,8 @@ const DynamicZone = ({ } }; - const handleToggleComponent = indexToToggle => { - setComponentsCollapses(prev => + const handleToggleComponent = (indexToToggle) => { + setComponentsCollapses((prev) => prev.map(({ isOpen }, index) => { if (index === indexToToggle) { return { isOpen: !isOpen }; @@ -123,7 +123,7 @@ const DynamicZone = ({ const handleMoveComponentDown = (name, currentIndex) => { moveComponentDown(name, currentIndex); - setComponentsCollapses(prev => { + setComponentsCollapses((prev) => { return prev.map(({ isOpen }, index, refArray) => { if (index === currentIndex + 1) { return { isOpen: refArray[currentIndex].isOpen }; @@ -140,7 +140,7 @@ const DynamicZone = ({ const handleMoveComponentUp = (name, currentIndex) => { moveComponentUp(name, currentIndex); - setComponentsCollapses(prev => { + setComponentsCollapses((prev) => { return prev.map(({ isOpen }, index, refArray) => { if (index === currentIndex - 1) { return { isOpen: refArray[currentIndex].isOpen }; diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicZone/utils/connect.js b/packages/core/admin/admin/src/content-manager/components/DynamicZone/utils/connect.js index 238d60ef82f..b41217bc402 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicZone/utils/connect.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicZone/utils/connect.js @@ -1,7 +1,7 @@ import React from 'react'; function connect(WrappedComponent, select) { - return function(props) { + return function (props) { // eslint-disable-next-line react/prop-types const selectors = select(props.name); diff --git a/packages/core/admin/admin/src/content-manager/components/DynamicZone/utils/select.js b/packages/core/admin/admin/src/content-manager/components/DynamicZone/utils/select.js index aedcfd3e264..0b633ce9b1e 100644 --- a/packages/core/admin/admin/src/content-manager/components/DynamicZone/utils/select.js +++ b/packages/core/admin/admin/src/content-manager/components/DynamicZone/utils/select.js @@ -17,7 +17,7 @@ function useSelect(name) { } = useCMEditViewDataManager(); const dynamicDisplayedComponents = useMemo( - () => get(modifiedData, [name], []).map(data => data.__component), + () => get(modifiedData, [name], []).map((data) => data.__component), [modifiedData, name] ); diff --git a/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/index.js b/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/index.js index 0cb49908fde..4b6f6833379 100644 --- a/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +++ b/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/index.js @@ -264,7 +264,7 @@ const EditViewDataManagerProvider = ({ ); const createFormData = useCallback( - data => { + (data) => { // First we need to remove the added keys needed for the dnd const preparedData = removeKeyInObject(cloneDeep(data), '__temp_key__'); // Then we need to apply our helper @@ -288,7 +288,7 @@ const EditViewDataManagerProvider = ({ }, [hasDraftAndPublish, shouldNotRunValidations]); const handleSubmit = useCallback( - async e => { + async (e) => { e.preventDefault(); let errors = {}; @@ -358,8 +358,8 @@ const EditViewDataManagerProvider = ({ }, [allLayoutData, currentContentTypeLayout, isCreatingEntry, modifiedData, onPublish]); const shouldCheckDZErrors = useCallback( - dzName => { - const doesDZHaveError = Object.keys(formErrors).some(key => key.split('.')[0] === dzName); + (dzName) => { + const doesDZHaveError = Object.keys(formErrors).some((key) => key.split('.')[0] === dzName); const shouldCheckErrors = !isEmpty(formErrors) && doesDZHaveError; return shouldCheckErrors; @@ -413,7 +413,7 @@ const EditViewDataManagerProvider = ({ }); }, []); - const onRemoveRelation = useCallback(keys => { + const onRemoveRelation = useCallback((keys) => { dispatch({ type: 'REMOVE_RELATION', keys, @@ -526,7 +526,7 @@ const EditViewDataManagerProvider = ({ EditViewDataManagerProvider.defaultProps = { from: '/', initialValues: null, - redirectToPreviousPage: () => {}, + redirectToPreviousPage() {}, }; EditViewDataManagerProvider.propTypes = { diff --git a/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js b/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js index 04a2155db78..f93dd971e29 100644 --- a/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js +++ b/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/reducer.js @@ -18,7 +18,7 @@ const initialState = { const reducer = (state, action) => // eslint-disable-next-line consistent-return - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case 'ADD_NON_REPEATABLE_COMPONENT_TO_FIELD': { set( diff --git a/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js b/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js index 68e786ac21b..269057ec1b3 100644 --- a/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js +++ b/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/utils/cleanData.js @@ -32,7 +32,7 @@ const cleanData = (retrievedData, currentSchema, componentsSchema) => { } case 'media': if (getOtherInfos(schema, [current, 'multiple']) === true) { - cleanedData = value ? value.filter(file => !(file instanceof File)) : null; + cleanedData = value ? value.filter((file) => !(file instanceof File)) : null; } else { cleanedData = get(value, 0) instanceof File ? null : get(value, 'id', null); } @@ -40,7 +40,7 @@ const cleanData = (retrievedData, currentSchema, componentsSchema) => { case 'component': if (isRepeatable) { cleanedData = value - ? value.map(data => { + ? value.map((data) => { const subCleanedData = recursiveCleanData(data, componentsSchema[component]); return subCleanedData; @@ -52,7 +52,7 @@ const cleanData = (retrievedData, currentSchema, componentsSchema) => { break; case 'dynamiczone': - cleanedData = value.map(componentData => { + cleanedData = value.map((componentData) => { const subCleanedData = recursiveCleanData( componentData, componentsSchema[componentData.__component] @@ -77,7 +77,7 @@ const cleanData = (retrievedData, currentSchema, componentsSchema) => { export const helperCleanData = (value, key) => { if (isArray(value)) { - return value.map(obj => (obj[key] ? obj[key] : obj)); + return value.map((obj) => (obj[key] ? obj[key] : obj)); } if (isObject(value)) { return value[key]; diff --git a/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js b/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js index 0d846a4c093..976c5f4b8d3 100644 --- a/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js +++ b/packages/core/admin/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js @@ -9,12 +9,12 @@ import { translatedErrors as errorsTrads } from '@strapi/helper-plugin'; import isFieldTypeNumber from '../../../utils/isFieldTypeNumber'; -yup.addMethod(yup.mixed, 'defined', function() { - return this.test('defined', errorsTrads.required, value => value !== undefined); +yup.addMethod(yup.mixed, 'defined', function () { + return this.test('defined', errorsTrads.required, (value) => value !== undefined); }); -yup.addMethod(yup.array, 'notEmptyMin', function(min) { - return this.test('notEmptyMin', errorsTrads.min, value => { +yup.addMethod(yup.array, 'notEmptyMin', function (min) { + return this.test('notEmptyMin', errorsTrads.min, (value) => { if (isEmpty(value)) { return true; } @@ -23,8 +23,8 @@ yup.addMethod(yup.array, 'notEmptyMin', function(min) { }); }); -yup.addMethod(yup.string, 'isInferior', function(message, max) { - return this.test('isInferior', message, function(value) { +yup.addMethod(yup.string, 'isInferior', function (message, max) { + return this.test('isInferior', message, function (value) { if (!value) { return true; } @@ -37,8 +37,8 @@ yup.addMethod(yup.string, 'isInferior', function(message, max) { }); }); -yup.addMethod(yup.string, 'isSuperior', function(message, min) { - return this.test('isSuperior', message, function(value) { +yup.addMethod(yup.string, 'isSuperior', function (message, min) { + return this.test('isSuperior', message, function (value) { if (!value) { return true; } @@ -51,7 +51,7 @@ yup.addMethod(yup.string, 'isSuperior', function(message, min) { }); }); -const getAttributes = data => get(data, ['attributes'], {}); +const getAttributes = (data) => get(data, ['attributes'], {}); const createYupSchema = ( model, @@ -97,7 +97,7 @@ const createYupSchema = ( if (attribute.repeatable === true) { const { min, max, required } = attribute; - let componentSchema = yup.lazy(value => { + let componentSchema = yup.lazy((value) => { let baseSchema = yup.array().of(componentFieldSchema); if (min) { @@ -123,7 +123,7 @@ const createYupSchema = ( return acc; } - const componentSchema = yup.lazy(obj => { + const componentSchema = yup.lazy((obj) => { if (obj !== undefined) { return attribute.required === true && !options.isDraft ? componentFieldSchema.defined() @@ -154,7 +154,7 @@ const createYupSchema = ( if (min) { if (attribute.required) { dynamicZoneSchema = dynamicZoneSchema - .test('min', errorsTrads.min, value => { + .test('min', errorsTrads.min, (value) => { if (options.isCreatingEntry) { return value && value.length >= min; } @@ -165,7 +165,7 @@ const createYupSchema = ( return value !== null && value.length >= min; }) - .test('required', errorsTrads.required, value => { + .test('required', errorsTrads.required, (value) => { if (options.isCreatingEntry) { return value !== null || value !== undefined; } @@ -180,7 +180,7 @@ const createYupSchema = ( dynamicZoneSchema = dynamicZoneSchema.notEmptyMin(min); } } else if (attribute.required && !options.isDraft) { - dynamicZoneSchema = dynamicZoneSchema.test('required', errorsTrads.required, value => { + dynamicZoneSchema = dynamicZoneSchema.test('required', errorsTrads.required, (value) => { if (options.isCreatingEntry) { return value !== null || value !== undefined; } @@ -215,7 +215,7 @@ const createYupSchemaAttribute = (type, validations, options) => { if (type === 'json') { schema = yup .mixed(errorsTrads.json) - .test('isJSON', errorsTrads.json, value => { + .test('isJSON', errorsTrads.json, (value) => { if (value === undefined) { return true; } @@ -238,7 +238,7 @@ const createYupSchemaAttribute = (type, validations, options) => { if (['number', 'integer', 'float', 'decimal'].includes(type)) { schema = yup .number() - .transform(cv => (isNaN(cv) ? undefined : cv)) + .transform((cv) => (isNaN(cv) ? undefined : cv)) .typeError(); } @@ -250,7 +250,7 @@ const createYupSchemaAttribute = (type, validations, options) => { schema = yup.date(); } - Object.keys(validations).forEach(validation => { + Object.keys(validations).forEach((validation) => { const validationValue = validations[validation]; if ( @@ -269,7 +269,7 @@ const createYupSchemaAttribute = (type, validations, options) => { if (options.isCreatingEntry) { schema = schema.required(errorsTrads.required); } else { - schema = schema.test('required', errorsTrads.required, value => { + schema = schema.test('required', errorsTrads.required, (value) => { // Field is not touched and the user is editing the entry if (value === undefined && !options.isFromComponent) { return true; diff --git a/packages/core/admin/admin/src/content-manager/components/FieldComponent/utils/connect.js b/packages/core/admin/admin/src/content-manager/components/FieldComponent/utils/connect.js index 648a3d30e43..f1027b59e3a 100644 --- a/packages/core/admin/admin/src/content-manager/components/FieldComponent/utils/connect.js +++ b/packages/core/admin/admin/src/content-manager/components/FieldComponent/utils/connect.js @@ -1,7 +1,7 @@ import React from 'react'; function connect(WrappedComponent, select) { - return function(props) { + return function (props) { // eslint-disable-next-line react/prop-types const selectors = select(props); diff --git a/packages/core/admin/admin/src/content-manager/components/FieldComponent/utils/select.js b/packages/core/admin/admin/src/content-manager/components/FieldComponent/utils/select.js index 661180525d6..284dc1a44dc 100644 --- a/packages/core/admin/admin/src/content-manager/components/FieldComponent/utils/select.js +++ b/packages/core/admin/admin/src/content-manager/components/FieldComponent/utils/select.js @@ -22,7 +22,7 @@ function useSelect({ isFromDynamicZone, name }) { const allDynamicZoneFields = useMemo(() => { const attributes = get(contentType, ['attributes'], {}); - const dynamicZoneFields = Object.keys(attributes).filter(attrName => { + const dynamicZoneFields = Object.keys(attributes).filter((attrName) => { return get(attributes, [attrName, 'type'], '') === 'dynamiczone'; }); @@ -43,17 +43,17 @@ function useSelect({ isFromDynamicZone, name }) { return true; } - const includedDynamicZoneFields = allowedFields.filter(name => name === compoName[0]); + const includedDynamicZoneFields = allowedFields.filter((name) => name === compoName[0]); if (includedDynamicZoneFields.length > 0) { return true; } const relatedChildrenAllowedFields = allowedFields - .map(fieldName => { + .map((fieldName) => { return fieldName.split('.'); }) - .filter(fieldName => { + .filter((fieldName) => { if (fieldName.length < compoName.length) { return false; } @@ -78,10 +78,10 @@ function useSelect({ isFromDynamicZone, name }) { const allowedFields = isCreatingEntry ? [] : readActionAllowedFields; const relatedChildrenAllowedFields = allowedFields - .map(fieldName => { + .map((fieldName) => { return fieldName.split('.'); }) - .filter(fieldName => { + .filter((fieldName) => { if (fieldName.length < compoName.length) { return false; } diff --git a/packages/core/admin/admin/src/content-manager/components/FormTitle/index.js b/packages/core/admin/admin/src/content-manager/components/FormTitle/index.js index e6b8cfc06e8..bf5c46f6946 100644 --- a/packages/core/admin/admin/src/content-manager/components/FormTitle/index.js +++ b/packages/core/admin/admin/src/content-manager/components/FormTitle/index.js @@ -5,7 +5,7 @@ import { FormattedMessage } from 'react-intl'; const FormTitle = ({ description, title }) => ( <> {!!title && } - {!!description && {msg =>

{msg}

}
} + {!!description && {(msg) =>

{msg}

}
} ); diff --git a/packages/core/admin/admin/src/content-manager/components/InjectionZoneList/index.js b/packages/core/admin/admin/src/content-manager/components/InjectionZoneList/index.js index 2b97bc695d7..7738d2b1406 100644 --- a/packages/core/admin/admin/src/content-manager/components/InjectionZoneList/index.js +++ b/packages/core/admin/admin/src/content-manager/components/InjectionZoneList/index.js @@ -13,7 +13,7 @@ const InjectionZoneList = ({ area, ...props }) => { // TODO return (
    - {compos.map(compo => { + {compos.map((compo) => { const component = compo.Component(props); if (component) { diff --git a/packages/core/admin/admin/src/content-manager/components/InputJSON/index.js b/packages/core/admin/admin/src/content-manager/components/InputJSON/index.js index bd604a1f32a..182dc736a24 100644 --- a/packages/core/admin/admin/src/content-manager/components/InputJSON/index.js +++ b/packages/core/admin/admin/src/content-manager/components/InputJSON/index.js @@ -87,11 +87,10 @@ class InputJSON extends React.Component { setSize = () => this.codeMirror.setSize('100%', 'auto'); - getContentAtLine = line => this.codeMirror.getLine(line); + getContentAtLine = (line) => this.codeMirror.getLine(line); - getEditorOption = opt => this.codeMirror.getOption(opt); - - getValue = () => this.codeMirror.getValue(); + // getEditorOption = (opt) => this.codeMirror.getOption(opt); + // getValue = () => this.codeMirror.getValue(); markSelection = ({ message }) => { let line = parseInt(message.split(':')[0].split('line ')[1], 10) - 1; @@ -142,7 +141,7 @@ class InputJSON extends React.Component { this.timer = setTimeout(() => this.testJSON(doc.getValue()), WAIT); }; - testJSON = value => { + testJSON = (value) => { try { jsonlint.parse(value); } catch (err) { @@ -189,7 +188,7 @@ InputJSON.defaultProps = { error: undefined, intlLabel: undefined, labelAction: undefined, - onChange: () => {}, + onChange() {}, value: null, required: false, }; diff --git a/packages/core/admin/admin/src/content-manager/components/InputJSON/jsonlint.js b/packages/core/admin/admin/src/content-manager/components/InputJSON/jsonlint.js index fdf51fda7cc..7bf146de323 100644 --- a/packages/core/admin/admin/src/content-manager/components/InputJSON/jsonlint.js +++ b/packages/core/admin/admin/src/content-manager/components/InputJSON/jsonlint.js @@ -1,6 +1,6 @@ /* Jison generated parser */ /* eslint-disable */ -var jsonlint = (function() { +var jsonlint = (function () { var parser = { trace: function trace() {}, yy: {}, @@ -453,7 +453,7 @@ var jsonlint = (function() { }, }; /* Jison generated lexer */ - var lexer = (function() { + var lexer = (function () { var lexer = { EOF: 1, parseError: function parseError(str, hash) { @@ -463,7 +463,7 @@ var jsonlint = (function() { throw new Error(str); } }, - setInput: function(input) { + setInput: function (input) { this._input = input; this._more = this._less = this.done = false; this.yylineno = this.yyleng = 0; @@ -472,7 +472,7 @@ var jsonlint = (function() { this.yylloc = { first_line: 1, first_column: 0, last_line: 1, last_column: 0 }; return this; }, - input: function() { + input: function () { var ch = this._input[0]; this.yytext += ch; this.yyleng++; @@ -483,34 +483,34 @@ var jsonlint = (function() { this._input = this._input.slice(1); return ch; }, - unput: function(ch) { + unput: function (ch) { this._input = ch + this._input; return this; }, - more: function() { + more: function () { this._more = true; return this; }, - less: function(n) { + less: function (n) { this._input = this.match.slice(n) + this._input; }, - pastInput: function() { + pastInput: function () { var past = this.matched.substr(0, this.matched.length - this.match.length); return (past.length > 20 ? '...' : '') + past.substr(-20).replace(/\n/g, ''); }, - upcomingInput: function() { + upcomingInput: function () { var next = this.match; if (next.length < 20) { next += this._input.substr(0, 20 - next.length); } return (next.substr(0, 20) + (next.length > 20 ? '...' : '')).replace(/\n/g, ''); }, - showPosition: function() { + showPosition: function () { var pre = this.pastInput(); var c = new Array(pre.length + 1).join('-'); return pre + this.upcomingInput() + '\n' + c + '^'; }, - next: function() { + next: function () { if (this.done) { return this.EOF; } @@ -587,7 +587,7 @@ var jsonlint = (function() { _currentRules: function _currentRules() { return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; }, - topState: function() { + topState: function () { return this.conditionStack[this.conditionStack.length - 2]; }, pushState: function begin(condition) { @@ -669,7 +669,7 @@ var jsonlint = (function() { })(); if (typeof require !== 'undefined' && typeof exports !== 'undefined') { exports.parser = jsonlint; - exports.parse = function() { + exports.parse = function () { return jsonlint.parse.apply(jsonlint, arguments); }; exports.main = function commonjsMain(args) { diff --git a/packages/core/admin/admin/src/content-manager/components/InputUID/index.js b/packages/core/admin/admin/src/content-manager/components/InputUID/index.js index 40b1128f2b0..ea443a13821 100644 --- a/packages/core/admin/admin/src/content-manager/components/InputUID/index.js +++ b/packages/core/admin/admin/src/content-manager/components/InputUID/index.js @@ -174,7 +174,7 @@ const InputUID = ({ setRegenerateLabel(null); }; - const handleChange = e => { + const handleChange = (e) => { if (e.target.value && isCreation) { setIsCustomized(true); } diff --git a/packages/core/admin/admin/src/content-manager/components/Inputs/index.js b/packages/core/admin/admin/src/content-manager/components/Inputs/index.js index 15a75e80fc2..3f59cd56cfa 100644 --- a/packages/core/admin/admin/src/content-manager/components/Inputs/index.js +++ b/packages/core/admin/admin/src/content-manager/components/Inputs/index.js @@ -157,10 +157,10 @@ function Inputs({ return disabled; }, [disabled, isCreatingEntry, isUserAllowedToEditField, isUserAllowedToReadField]); - const options = useMemo(() => generateOptions(fieldSchema.enum || [], isRequired), [ - fieldSchema, - isRequired, - ]); + const options = useMemo( + () => generateOptions(fieldSchema.enum || [], isRequired), + [fieldSchema, isRequired] + ); const { label, description, placeholder, visible } = metadatas; diff --git a/packages/core/admin/admin/src/content-manager/components/Inputs/utils/connect.js b/packages/core/admin/admin/src/content-manager/components/Inputs/utils/connect.js index 51685b4411d..f7d486eb661 100644 --- a/packages/core/admin/admin/src/content-manager/components/Inputs/utils/connect.js +++ b/packages/core/admin/admin/src/content-manager/components/Inputs/utils/connect.js @@ -1,7 +1,7 @@ import React from 'react'; function connect(WrappedComponent, select) { - return function(props) { + return function (props) { // eslint-disable-next-line react/prop-types const selectors = select(props.keys); diff --git a/packages/core/admin/admin/src/content-manager/components/Inputs/utils/generateOptions.js b/packages/core/admin/admin/src/content-manager/components/Inputs/utils/generateOptions.js index 3ba48d8f652..c6058a333ed 100644 --- a/packages/core/admin/admin/src/content-manager/components/Inputs/utils/generateOptions.js +++ b/packages/core/admin/admin/src/content-manager/components/Inputs/utils/generateOptions.js @@ -12,7 +12,7 @@ const generateOptions = (options, isRequired = false) => { key: '__enum_option_null', value: '', }, - ...options.map(option => { + ...options.map((option) => { return { metadatas: { intlLabel: { diff --git a/packages/core/admin/admin/src/content-manager/components/Inputs/utils/getStep.js b/packages/core/admin/admin/src/content-manager/components/Inputs/utils/getStep.js index 900f25b4837..7c6653aee0e 100644 --- a/packages/core/admin/admin/src/content-manager/components/Inputs/utils/getStep.js +++ b/packages/core/admin/admin/src/content-manager/components/Inputs/utils/getStep.js @@ -1,4 +1,4 @@ -const getStep = type => { +const getStep = (type) => { let step; if (type === 'float' || type === 'decimal') { diff --git a/packages/core/admin/admin/src/content-manager/components/LayoutDndProvider/index.js b/packages/core/admin/admin/src/content-manager/components/LayoutDndProvider/index.js index 9c80e9af3ef..bb50f2b79fb 100644 --- a/packages/core/admin/admin/src/content-manager/components/LayoutDndProvider/index.js +++ b/packages/core/admin/admin/src/content-manager/components/LayoutDndProvider/index.js @@ -44,16 +44,16 @@ function LayoutDndProvider({ LayoutDndProvider.defaultProps = { attributes: {}, buttonData: [], - goTo: () => {}, + goTo() {}, layout: [], metadatas: {}, - moveItem: () => {}, - moveRow: () => {}, - onAddData: () => {}, + moveItem() {}, + moveRow() {}, + onAddData() {}, relationsLayout: [], - removeField: () => {}, + removeField() {}, selectedItemName: null, - setEditFieldToSelect: () => {}, + setEditFieldToSelect() {}, }; LayoutDndProvider.propTypes = { diff --git a/packages/core/admin/admin/src/content-manager/components/NonRepeatableComponent/index.js b/packages/core/admin/admin/src/content-manager/components/NonRepeatableComponent/index.js index 9137cc610a9..f85cc13e72a 100644 --- a/packages/core/admin/admin/src/content-manager/components/NonRepeatableComponent/index.js +++ b/packages/core/admin/admin/src/content-manager/components/NonRepeatableComponent/index.js @@ -12,10 +12,10 @@ import Inputs from '../Inputs'; const NonRepeatableComponent = ({ componentUid, isFromDynamicZone, isNested, name }) => { const { getComponentLayout } = useContentTypeLayout(); - const componentLayoutData = useMemo(() => getComponentLayout(componentUid), [ - componentUid, - getComponentLayout, - ]); + const componentLayoutData = useMemo( + () => getComponentLayout(componentUid), + [componentUid, getComponentLayout] + ); const fields = componentLayoutData.layouts.edit; return ( diff --git a/packages/core/admin/admin/src/content-manager/components/PreviewWysiwyg/utils/mdRenderer.js b/packages/core/admin/admin/src/content-manager/components/PreviewWysiwyg/utils/mdRenderer.js index 002fe85bad9..b8c2cf212b5 100644 --- a/packages/core/admin/admin/src/content-manager/components/PreviewWysiwyg/utils/mdRenderer.js +++ b/packages/core/admin/admin/src/content-manager/components/PreviewWysiwyg/utils/mdRenderer.js @@ -25,7 +25,7 @@ const md = new Markdown({ linkify: true, typographer: true, // Code from: https://github.com/markdown-it/markdown-it/blob/master/support/demo_template/index.js#L83 - highlight: (str, lang) => { + highlight(str, lang) { if (lang && lang !== 'auto' && getLanguage(lang)) { return ( '
     e.stopPropagation()}
    +                      onClick={(e) => e.stopPropagation()}
                         >
                           
                         
    @@ -294,8 +288,8 @@ const DraggedItem = ({
     DraggedItem.defaultProps = {
       isDraggingSibling: false,
       isOpen: false,
    -  setIsDraggingSibling: () => {},
    -  toggleCollapses: () => {},
    +  setIsDraggingSibling() {},
    +  toggleCollapses() {},
     };
     
     DraggedItem.propTypes = {
    diff --git a/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/DraggedItem/utils/connect.js b/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/DraggedItem/utils/connect.js
    index 563d58b445f..e9c07d0f24c 100644
    --- a/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/DraggedItem/utils/connect.js
    +++ b/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/DraggedItem/utils/connect.js
    @@ -1,7 +1,7 @@
     import React from 'react';
     
     function connect(WrappedComponent, select) {
    -  return function(props) {
    +  return function (props) {
         const selectors = select(props);
     
         return ;
    diff --git a/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/index.js b/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/index.js
    index b6d31cff453..2b7c6931ab8 100644
    --- a/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/index.js
    +++ b/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/index.js
    @@ -49,10 +49,10 @@ const RepeatableComponent = ({
       const [isDraggingSibling, setIsDraggingSibling] = useState(false);
       const [, drop] = useDrop({ accept: ItemTypes.COMPONENT });
       const { getComponentLayout } = useContentTypeLayout();
    -  const componentLayoutData = useMemo(() => getComponentLayout(componentUid), [
    -    componentUid,
    -    getComponentLayout,
    -  ]);
    +  const componentLayoutData = useMemo(
    +    () => getComponentLayout(componentUid),
    +    [componentUid, getComponentLayout]
    +  );
     
       const nextTempKey = useMemo(() => {
         return getMaxTempKey(componentValue || []) + 1;
    @@ -113,7 +113,7 @@ const RepeatableComponent = ({
       }
     
       const doesRepComponentHasChildError = componentErrorKeys.some(
    -    error => error.split('.').length > 1
    +    (error) => error.split('.').length > 1
       );
     
       if (doesRepComponentHasChildError && !hasMinError) {
    diff --git a/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/utils/connect.js b/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/utils/connect.js
    index 563d58b445f..e9c07d0f24c 100644
    --- a/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/utils/connect.js
    +++ b/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/utils/connect.js
    @@ -1,7 +1,7 @@
     import React from 'react';
     
     function connect(WrappedComponent, select) {
    -  return function(props) {
    +  return function (props) {
         const selectors = select(props);
     
         return ;
    diff --git a/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/utils/getComponentErrorKeys.js b/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/utils/getComponentErrorKeys.js
    index d12c3e8eb31..59081b74b94 100644
    --- a/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/utils/getComponentErrorKeys.js
    +++ b/packages/core/admin/admin/src/content-manager/components/RepeatableComponent/utils/getComponentErrorKeys.js
    @@ -1,7 +1,7 @@
     export default function getComponentErrorKeys(name, formErrors) {
       return Object.keys(formErrors)
    -    .filter(errorKey => errorKey.startsWith(name))
    -    .map(errorKey =>
    +    .filter((errorKey) => errorKey.startsWith(name))
    +    .map((errorKey) =>
           errorKey
             .split('.')
             .slice(0, name.split('.').length + 1)
    diff --git a/packages/core/admin/admin/src/content-manager/components/SectionTitle/index.js b/packages/core/admin/admin/src/content-manager/components/SectionTitle/index.js
    index c8c870dd2fa..7eed2469e27 100644
    --- a/packages/core/admin/admin/src/content-manager/components/SectionTitle/index.js
    +++ b/packages/core/admin/admin/src/content-manager/components/SectionTitle/index.js
    @@ -10,7 +10,7 @@ const SectionTitle = ({ isSettings }) => {
     
       return (
         
    - {msg => {msg}} + {(msg) => {msg}}
    ); }; diff --git a/packages/core/admin/admin/src/content-manager/components/SelectMany/ListItem.js b/packages/core/admin/admin/src/content-manager/components/SelectMany/ListItem.js index 5a25b242d0a..2eb9ab9a831 100644 --- a/packages/core/admin/admin/src/content-manager/components/SelectMany/ListItem.js +++ b/packages/core/admin/admin/src/content-manager/components/SelectMany/ListItem.js @@ -79,7 +79,7 @@ function ListItem({ } ListItem.defaultProps = { - onRemove: () => {}, + onRemove() {}, searchToPersist: null, targetModel: '', }; diff --git a/packages/core/admin/admin/src/content-manager/components/SelectMany/index.js b/packages/core/admin/admin/src/content-manager/components/SelectMany/index.js index 9dea24cc85f..7d8459a89f2 100644 --- a/packages/core/admin/admin/src/content-manager/components/SelectMany/index.js +++ b/packages/core/admin/admin/src/content-manager/components/SelectMany/index.js @@ -46,7 +46,7 @@ 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; diff --git a/packages/core/admin/admin/src/content-manager/components/SelectOne/SingleValue.js b/packages/core/admin/admin/src/content-manager/components/SelectOne/SingleValue.js index 50e0c51f8fc..6427a13328d 100644 --- a/packages/core/admin/admin/src/content-manager/components/SelectOne/SingleValue.js +++ b/packages/core/admin/admin/src/content-manager/components/SelectOne/SingleValue.js @@ -22,7 +22,7 @@ const StyledBullet = styled.div` cursor: pointer; `; -const SingleValue = props => { +const SingleValue = (props) => { const { formatMessage } = useIntl(); const Component = components.SingleValue; const hasDraftAndPublish = has(get(props, 'data.value'), 'publishedAt'); diff --git a/packages/core/admin/admin/src/content-manager/components/SelectWrapper/Option.js b/packages/core/admin/admin/src/content-manager/components/SelectWrapper/Option.js index ea175ed8392..23ddd224f76 100644 --- a/packages/core/admin/admin/src/content-manager/components/SelectWrapper/Option.js +++ b/packages/core/admin/admin/src/content-manager/components/SelectWrapper/Option.js @@ -20,7 +20,7 @@ const StyledBullet = styled.div` cursor: pointer; `; -const Option = props => { +const Option = (props) => { const { formatMessage } = useIntl(); const Component = components.Option; const hasDraftAndPublish = has(get(props, 'data.value'), 'publishedAt'); diff --git a/packages/core/admin/admin/src/content-manager/components/SelectWrapper/index.js b/packages/core/admin/admin/src/content-manager/components/SelectWrapper/index.js index 1c1870212dc..ef5810095ba 100644 --- a/packages/core/admin/admin/src/content-manager/components/SelectWrapper/index.js +++ b/packages/core/admin/admin/src/content-manager/components/SelectWrapper/index.js @@ -64,13 +64,8 @@ function SelectWrapper({ const [{ query }] = useQueryParams(); // Disable the input in case of a polymorphic relation const isMorph = useMemo(() => relationType.toLowerCase().includes('morph'), [relationType]); - const { - addRelation, - modifiedData, - moveRelation, - onChange, - onRemoveRelation, - } = useCMEditViewDataManager(); + const { addRelation, modifiedData, moveRelation, onChange, onRemoveRelation } = + useCMEditViewDataManager(); const { pathname } = useLocation(); const value = get(modifiedData, name, null); @@ -80,11 +75,11 @@ function SelectWrapper({ const [isOpen, setIsOpen] = useState(false); const filteredOptions = useMemo(() => { - return options.filter(option => { + return options.filter((option) => { if (!isEmpty(value)) { // SelectMany if (Array.isArray(value)) { - return findIndex(value, o => o.id === option.value.id) === -1; + return findIndex(value, (o) => o.id === option.value.id) === -1; } // SelectOne @@ -95,13 +90,8 @@ function SelectWrapper({ }); }, [options, value]); - const { - endPoint, - containsKey, - defaultParams, - shouldDisplayRelationLink, - paramsToKeep, - } = queryInfos; + const { endPoint, containsKey, defaultParams, shouldDisplayRelationLink, paramsToKeep } = + queryInfos; const isSingle = ['oneWay', 'oneToOne', 'manyToOne', 'oneToManyMorph', 'oneToOneMorph'].includes( relationType @@ -116,11 +106,11 @@ function SelectWrapper({ return [value.id]; } - return value.map(val => val.id); + return value.map((val) => val.id); }, [isSingle, value]); const getData = useCallback( - async source => { + async (source) => { // Currently polymorphic relations are not handled if (isMorph) { setIsLoading(false); @@ -149,19 +139,19 @@ function SelectWrapper({ { params, cancelToken: source.token } ); - const formattedData = data.map(obj => { + const formattedData = data.map((obj) => { return { value: obj, label: obj[mainField.name] }; }); - setOptions(prevState => + setOptions((prevState) => prevState.concat(formattedData).filter((obj, index) => { - const objIndex = prevState.findIndex(el => el.value.id === obj.value.id); + const objIndex = prevState.findIndex((el) => el.value.id === obj.value.id); if (objIndex === -1) { return true; } - return prevState.findIndex(el => el.value.id === obj.value.id) === index; + return prevState.findIndex((el) => el.value.id === obj.value.id) === index; }) ); setIsLoading(false); @@ -197,7 +187,7 @@ function SelectWrapper({ const handleInputChange = (inputValue, { action }) => { if (action === 'input-change') { - setState(prevState => { + setState((prevState) => { if (prevState.contains === inputValue) { return prevState; } @@ -210,7 +200,7 @@ function SelectWrapper({ }; const handleMenuScrollToBottom = () => { - setState(prevState => ({ + setState((prevState) => ({ ...prevState, start: prevState.start + 20, })); @@ -221,11 +211,11 @@ function SelectWrapper({ setIsOpen(false); }; - const handleChange = value => { + const handleChange = (value) => { onChange({ target: { name, value: value ? value.value : value } }); }; - const handleAddRelation = value => { + const handleAddRelation = (value) => { if (!isEmpty(value)) { addRelation({ target: { name, value } }); } diff --git a/packages/core/admin/admin/src/content-manager/components/SelectWrapper/utils/connect.js b/packages/core/admin/admin/src/content-manager/components/SelectWrapper/utils/connect.js index 648a3d30e43..f1027b59e3a 100644 --- a/packages/core/admin/admin/src/content-manager/components/SelectWrapper/utils/connect.js +++ b/packages/core/admin/admin/src/content-manager/components/SelectWrapper/utils/connect.js @@ -1,7 +1,7 @@ import React from 'react'; function connect(WrappedComponent, select) { - return function(props) { + return function (props) { // eslint-disable-next-line react/prop-types const selectors = select(props); diff --git a/packages/core/admin/admin/src/content-manager/components/SingleTypeFormWrapper/index.js b/packages/core/admin/admin/src/content-manager/components/SingleTypeFormWrapper/index.js index 72dadec8f37..63cf0dee7e5 100644 --- a/packages/core/admin/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +++ b/packages/core/admin/admin/src/content-manager/components/SingleTypeFormWrapper/index.js @@ -38,16 +38,11 @@ const SingleTypeFormWrapper = ({ allLayoutData, children, slug }) => { const toggleNotification = useNotification(); const dispatch = useDispatch(); - const { - componentsDataStructure, - contentTypeDataStructure, - data, - isLoading, - status, - } = useSelector(selectCrudReducer); + const { componentsDataStructure, contentTypeDataStructure, data, isLoading, status } = + useSelector(selectCrudReducer); const cleanReceivedData = useCallback( - data => { + (data) => { const cleaned = removePasswordFieldsFromData( data, allLayoutData.contentType, @@ -100,7 +95,7 @@ const SingleTypeFormWrapper = ({ allLayoutData, children, slug }) => { const CancelToken = axios.CancelToken; const source = CancelToken.source(); - const fetchData = async source => { + const fetchData = async (source) => { dispatch(getData()); setIsCreatingEntry(true); @@ -142,7 +137,7 @@ const SingleTypeFormWrapper = ({ allLayoutData, children, slug }) => { }, [cleanReceivedData, push, slug, dispatch, searchToSend, rawQuery, toggleNotification]); const displayErrors = useCallback( - err => { + (err) => { const errorPayload = err.response.data; let errorMessage = get(errorPayload, ['error', 'message'], 'Bad Request'); @@ -159,7 +154,7 @@ const SingleTypeFormWrapper = ({ allLayoutData, children, slug }) => { ); const onDelete = useCallback( - async trackerProperty => { + async (trackerProperty) => { try { trackUsageRef.current('willDeleteEntry', trackerProperty); diff --git a/packages/core/admin/admin/src/content-manager/components/SingleTypeFormWrapper/utils/getRequestUrl.js b/packages/core/admin/admin/src/content-manager/components/SingleTypeFormWrapper/utils/getRequestUrl.js index 4b108c472b7..8ad02f911de 100644 --- a/packages/core/admin/admin/src/content-manager/components/SingleTypeFormWrapper/utils/getRequestUrl.js +++ b/packages/core/admin/admin/src/content-manager/components/SingleTypeFormWrapper/utils/getRequestUrl.js @@ -1,5 +1,5 @@ import { getRequestUrl } from '../../../utils'; -const requestURL = path => getRequestUrl(`single-types/${path}`); +const requestURL = (path) => getRequestUrl(`single-types/${path}`); export default requestURL; diff --git a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/Editor.js b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/Editor.js index c82a7d86490..cd52003914d 100644 --- a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/Editor.js +++ b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/Editor.js @@ -37,7 +37,7 @@ const Editor = ({ }); CodeMirror.commands.newlineAndIndentContinueMarkdownList = newlineAndIndentContinueMarkdownList; - editorRef.current.on('change', doc => { + editorRef.current.on('change', (doc) => { onChangeRef.current({ target: { name, value: doc.getValue(), type: 'wysiwyg' } }); }); }, [editorRef, textareaRef, name, placeholder]); diff --git a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/EditorLayout.js b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/EditorLayout.js index bd3e262e786..8e4b0e5c691 100644 --- a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/EditorLayout.js +++ b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/EditorLayout.js @@ -78,7 +78,7 @@ export const EditorLayout = ({ children, isExpandMode, error, previewContent, on overflow="hidden" width="70%" height="70%" - onClick={e => e.stopPropagation()} + onClick={(e) => e.stopPropagation()} > diff --git a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/WysiwygFooter.js b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/WysiwygFooter.js index 92509c7f793..480ae839bcf 100644 --- a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/WysiwygFooter.js +++ b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/WysiwygFooter.js @@ -28,7 +28,7 @@ const WysiwygFooter = ({ onToggleExpand }) => { }; WysiwygFooter.defaultProps = { - onToggleExpand: () => {}, + onToggleExpand() {}, }; WysiwygFooter.propTypes = { diff --git a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/WysiwygNav.js b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/WysiwygNav.js index 9cb75b0fc7a..192abab5764 100644 --- a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/WysiwygNav.js +++ b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/WysiwygNav.js @@ -45,7 +45,7 @@ const WysiwygNav = ({ const buttonMoreRef = useRef(); const handleTogglePopover = () => { - setVisiblePopover(prev => !prev); + setVisiblePopover((prev) => !prev); }; if (disabled || isPreviewMode) { @@ -110,7 +110,7 @@ const WysiwygNav = ({ id="selectTitle" placeholder={selectPlaceholder} size="S" - onChange={value => onActionClick(value, editorRef)} + onChange={(value) => onActionClick(value, editorRef)} > @@ -233,8 +233,8 @@ const WysiwygNav = ({ WysiwygNav.defaultProps = { isPreviewMode: false, - onActionClick: () => {}, - onToggleMediaLib: () => {}, + onActionClick() {}, + onToggleMediaLib() {}, onTogglePreviewMode: undefined, }; diff --git a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/index.js b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/index.js index 185b99df04e..d8fdbe8e3ca 100644 --- a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/index.js +++ b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/index.js @@ -52,11 +52,11 @@ const Wysiwyg = ({ const MediaLibraryDialog = components['media-library']; - const handleToggleMediaLib = () => setMediaLibVisible(prev => !prev); - const handleTogglePreviewMode = () => setIsPreviewMode(prev => !prev); + const handleToggleMediaLib = () => setMediaLibVisible((prev) => !prev); + const handleTogglePreviewMode = () => setIsPreviewMode((prev) => !prev); const handleToggleExpand = () => { setIsPreviewMode(false); - setIsExpandMode(prev => !prev); + setIsExpandMode((prev) => !prev); }; const handleActionClick = (value, currentEditorRef, togglePopover) => { @@ -100,8 +100,8 @@ const Wysiwyg = ({ } }; - const handleSelectAssets = files => { - const formattedFiles = files.map(f => ({ + const handleSelectAssets = (files) => { + const formattedFiles = files.map((f) => ({ alt: f.alternativeText || f.name, url: prefixFileUrlWithBackendUrl(f.url), mime: f.mime, diff --git a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/tests/index.test.js b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/tests/index.test.js index 1b30d01df44..3ae8fe6bccf 100644 --- a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/tests/index.test.js +++ b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/tests/index.test.js @@ -29,7 +29,7 @@ describe('Wysiwyg render and actions buttons', () => { let returnedValue; beforeEach(() => { - const onChange = jest.fn(e => { + const onChange = jest.fn((e) => { returnedValue = e.target.value; }); @@ -1402,9 +1402,9 @@ describe('Wysiwyg render and actions buttons', () => { fireEvent.click(renderedContainer.querySelector('#Underline')); const hasUnderlineMarkdown = getContainerByText((content, node) => { - const hasText = node => node.textContent === 'Underline'; + const hasText = (node) => node.textContent === 'Underline'; const nodeHasText = hasText(node); - const childrenDontHaveText = Array.from(node.children).every(child => !hasText(child)); + const childrenDontHaveText = Array.from(node.children).every((child) => !hasText(child)); return nodeHasText && childrenDontHaveText; }); @@ -1560,9 +1560,9 @@ Code fireEvent.click(renderedContainer.querySelector('#Underline')); const hasUnderlineMarkdown = containerQueryByText((content, node) => { - const hasText = node => node.textContent === 'Underline'; + const hasText = (node) => node.textContent === 'Underline'; const nodeHasText = hasText(node); - const childrenDontHaveText = Array.from(node.children).every(child => !hasText(child)); + const childrenDontHaveText = Array.from(node.children).every((child) => !hasText(child)); return nodeHasText && childrenDontHaveText; }); @@ -1646,7 +1646,7 @@ describe('Wysiwyg render actions with initial value', () => { let returnedValue = 'hello world'; beforeEach(() => { - const onChange = jest.fn(e => { + const onChange = jest.fn((e) => { returnedValue += e.target.value; }); diff --git a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/utils/utils.js b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/utils/utils.js index 1c6410a7cf7..8540505899f 100644 --- a/packages/core/admin/admin/src/content-manager/components/Wysiwyg/utils/utils.js +++ b/packages/core/admin/admin/src/content-manager/components/Wysiwyg/utils/utils.js @@ -30,7 +30,7 @@ export const replaceText = (markdownName, textToChange) => { return editedText; }; -export const insertText = markdownName => { +export const insertText = (markdownName) => { let editedText; // object to calculate text that will be selected after insert of markdown let selection = { start: markdownName.length, end: 0 }; @@ -75,7 +75,7 @@ export const insertText = markdownName => { return { editedText, selection }; }; -export const insertListOrTitle = markdown => { +export const insertListOrTitle = (markdown) => { let textToInsert; switch (markdown) { @@ -140,8 +140,8 @@ export const listHandler = (editor, listType) => { const selections = doc.listSelections(); let remove = null; - editor.current.operation(function() { - selections.forEach(function(selection) { + editor.current.operation(function () { + selections.forEach(function (selection) { const pos = [selection.head.line, selection.anchor.line].sort(); // Remove if the first text starts with it diff --git a/packages/core/admin/admin/src/content-manager/hooks/useContentTypeLayout/index.js b/packages/core/admin/admin/src/content-manager/hooks/useContentTypeLayout/index.js index 39b705960d9..ea15a1211b9 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useContentTypeLayout/index.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useContentTypeLayout/index.js @@ -7,7 +7,7 @@ const useContentTypeLayout = () => { const currentLayout = useSelector(selectLayout); const getComponentLayout = useCallback( - componentUid => { + (componentUid) => { return get(currentLayout, ['components', componentUid], {}); }, [currentLayout] diff --git a/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js b/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js index e1128e37405..f479b4b3c0f 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/index.js @@ -7,10 +7,10 @@ import reducer, { initialState } from './reducer'; import { makeSelectModelAndComponentSchemas } from '../../pages/App/selectors'; import { getRequestUrl } from '../../utils'; -const useFetchContentTypeLayout = contentTypeUID => { +const useFetchContentTypeLayout = (contentTypeUID) => { const [{ error, isLoading, layout, layouts }, dispatch] = useReducer(reducer, initialState); const schemasSelector = useMemo(makeSelectModelAndComponentSchemas, []); - const { schemas } = useSelector(state => schemasSelector(state), shallowEqual); + const { schemas } = useSelector((state) => schemasSelector(state), shallowEqual); const isMounted = useRef(true); const getData = useCallback( @@ -68,7 +68,7 @@ const useFetchContentTypeLayout = contentTypeUID => { }, [contentTypeUID, getData]); const updateLayout = useCallback( - data => { + (data) => { dispatch({ type: 'UPDATE_LAYOUT', newLayout: formatLayouts(data, schemas), diff --git a/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/reducer.js b/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/reducer.js index 145f36eb023..fd496b281b6 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/reducer.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/reducer.js @@ -9,7 +9,7 @@ export const initialState = { }; const reducer = (state, action) => - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case 'GET_DATA': { draftState.isLoading = true; diff --git a/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/tests/reducer.test.js b/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/tests/reducer.test.js index 4f520d199bf..ce10c200096 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/tests/reducer.test.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/tests/reducer.test.js @@ -23,7 +23,7 @@ describe('CONTENT MANAGER | hooks | useFetchContentTypeLayout | reducer', () => const action = { type: 'GET_DATA' }; - const expected = produce(state, draft => { + const expected = produce(state, (draft) => { draft.isLoading = true; draft.error = null; }); @@ -37,7 +37,7 @@ describe('CONTENT MANAGER | hooks | useFetchContentTypeLayout | reducer', () => data: { contentType: { uid: 'test' } }, }; - const expected = produce(state, draft => { + const expected = produce(state, (draft) => { draft.isLoading = false; draft.layout = { contentType: { uid: 'test' } }; draft.layouts = { test: { contentType: { uid: 'test' } } }; @@ -52,7 +52,7 @@ describe('CONTENT MANAGER | hooks | useFetchContentTypeLayout | reducer', () => error: true, }; - const expected = produce(state, draft => { + const expected = produce(state, (draft) => { draft.isLoading = false; draft.error = true; }); diff --git a/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js b/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js index 6ae3d0e015e..cec42ece631 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js @@ -1,7 +1,7 @@ import { cloneDeep, get, set } from 'lodash'; import { getRequestUrl, mergeMetasWithSchema } from '../../../utils'; -const getRelationModel = (targetModel, models) => models.find(model => model.uid === targetModel); +const getRelationModel = (targetModel, models) => models.find((model) => model.uid === targetModel); // editRelations is an array of strings... const formatEditRelationsLayoutWithMetas = (contentTypeConfiguration, models) => { @@ -46,7 +46,7 @@ const formatLayouts = (initialData, models) => { set(data, ['contentType', 'layouts', 'editRelations'], formattedEditRelationsLayout); set(data, ['contentType', 'layouts', 'list'], formattedListLayout); - Object.keys(data.components).forEach(compoUID => { + Object.keys(data.components).forEach((compoUID) => { const formattedCompoEditLayout = formatLayoutWithMetas( data.components[compoUID], ctUid, @@ -63,7 +63,7 @@ const createMetasSchema = (initialData, models) => { const data = mergeMetasWithSchema(cloneDeep(initialData), models, 'contentType'); const { components, contentType } = data; - const formatMetadatas = targetSchema => { + const formatMetadatas = (targetSchema) => { return Object.keys(targetSchema.metadatas).reduce((acc, current) => { const schema = get(targetSchema, ['attributes', current], {}); let metadatas = targetSchema.metadatas[current]; @@ -96,7 +96,7 @@ const createMetasSchema = (initialData, models) => { set(data, ['contentType', 'metadatas'], formatMetadatas(contentType)); - Object.keys(components).forEach(compoUID => { + Object.keys(components).forEach((compoUID) => { const currentCompo = components[compoUID]; const updatedMetas = formatMetadatas(currentCompo); @@ -108,7 +108,7 @@ const createMetasSchema = (initialData, models) => { const formatLayoutWithMetas = (contentTypeConfiguration, ctUid, models) => { const formatted = contentTypeConfiguration.layouts.edit.reduce((acc, current) => { - const row = current.map(attribute => { + const row = current.map((attribute) => { const fieldSchema = get(contentTypeConfiguration, ['attributes', attribute.name], {}); const data = { @@ -241,8 +241,8 @@ const generateRelationQueryInfosForComponents = ( return queryInfos; }; -const getDisplayedModels = models => - models.filter(model => model.isDisplayed).map(({ uid }) => uid); +const getDisplayedModels = (models) => + models.filter((model) => model.isDisplayed).map(({ uid }) => uid); export default formatLayouts; export { diff --git a/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/index.js b/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/index.js index 7d0a316be58..124fa0a7a16 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/index.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/index.js @@ -3,7 +3,7 @@ import { useQueryParams } from '@strapi/helper-plugin'; import selectMenuLinks from './selectors'; import getRedirectionLink from './utils/getRedirectionLink'; -const useFindRedirectionLink = slug => { +const useFindRedirectionLink = (slug) => { const [{ rawQuery }] = useQueryParams(); const collectionTypesMenuLinks = useSelector(selectMenuLinks); const redirectionLink = getRedirectionLink(collectionTypesMenuLinks, slug, rawQuery); diff --git a/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/selectors.js b/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/selectors.js index e9b9f094148..881cadb7747 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/selectors.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/selectors.js @@ -1,4 +1,4 @@ -const selectMenuLinks = state => { +const selectMenuLinks = (state) => { const cmState = state['content-manager_app']; return cmState.collectionTypeLinks; diff --git a/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/tests/selectors.test.js b/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/tests/selectors.test.js index 7a95e0f7b02..05a12c4c5b1 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/tests/selectors.test.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useFindRedirectionLink/tests/selectors.test.js @@ -1,5 +1,5 @@ +import { fixtures } from '@strapi/admin-test-utils/lib'; import selectMenuLinks from '../selectors'; -import { fixtures } from '../../../../../../../../admin-test-utils'; describe('CONTENT MANAGER | Containers | CollectionTypeFormWrapper | selectors', () => { let store; diff --git a/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/reducer.js b/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/reducer.js index 307ead6ccae..42a3cad550d 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/reducer.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/reducer.js @@ -12,7 +12,7 @@ export const initialState = { const rbacManagerReducer = (state = initialState, action) => // eslint-disable-next-line consistent-return - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case SET_PERMISSIONS: { draftState.permissions = Object.entries(action.permissions).reduce((acc, current) => { diff --git a/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/selectors.js b/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/selectors.js index ce8505f9f42..ffbd4ee762b 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/selectors.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/selectors.js @@ -1,4 +1,4 @@ -export const selectPermissions = state => state['content-manager_rbacManager'].permissions; +export const selectPermissions = (state) => state['content-manager_rbacManager'].permissions; -export const selectCollectionTypePermissions = state => +export const selectCollectionTypePermissions = (state) => state.rbacProvider.collectionTypesRelatedPermissions; diff --git a/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/tests/selectors.test.js b/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/tests/selectors.test.js index 416c47c0315..92134b8a5e7 100644 --- a/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/tests/selectors.test.js +++ b/packages/core/admin/admin/src/content-manager/hooks/useSyncRbac/tests/selectors.test.js @@ -1,4 +1,4 @@ -import { fixtures } from '../../../../../../../../admin-test-utils/lib'; +import { fixtures } from '@strapi/admin-test-utils/lib/lib'; import { selectPermissions, selectCollectionTypePermissions } from '../selectors'; describe('Admin | content manager | hooks | useSyncRbac | selectors', () => { diff --git a/packages/core/admin/admin/src/content-manager/pages/App/LeftMenu/index.js b/packages/core/admin/admin/src/content-manager/pages/App/LeftMenu/index.js index 851b75fc577..b7e0ddcd2cd 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/LeftMenu/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/LeftMenu/index.js @@ -22,19 +22,19 @@ import getTrad from '../../../utils/getTrad'; import { makeSelectModelLinks } from '../selectors'; const matchByTitle = (links, search) => - matchSorter(links, toLower(search), { keys: [item => toLower(item.title)] }); + matchSorter(links, toLower(search), { keys: [(item) => toLower(item.title)] }); const LeftMenu = () => { const [search, setSearch] = useState(''); const { formatMessage } = useIntl(); const modelLinksSelector = useMemo(makeSelectModelLinks, []); const { collectionTypeLinks, singleTypeLinks } = useSelector( - state => modelLinksSelector(state), + (state) => modelLinksSelector(state), shallowEqual ); - const toIntl = links => - links.map(link => { + const toIntl = (links) => + links.map((link) => { return { ...link, title: formatMessage({ id: link.title, defaultMessage: link.title }), @@ -52,7 +52,7 @@ const LeftMenu = () => { defaultMessage: 'Collection Types', }, searchable: true, - links: sortBy(matchByTitle(intlCollectionTypeLinks, search), object => + links: sortBy(matchByTitle(intlCollectionTypeLinks, search), (object) => object.title.toLowerCase() ), }, @@ -63,7 +63,7 @@ const LeftMenu = () => { defaultMessage: 'Single Types', }, searchable: true, - links: sortBy(matchByTitle(intlSingleTypeLinks, search), object => + links: sortBy(matchByTitle(intlSingleTypeLinks, search), (object) => object.title.toLowerCase() ), }, @@ -96,7 +96,7 @@ const LeftMenu = () => { })} /> - {menu.map(section => { + {menu.map((section) => { const label = formatMessage( { id: section.title.id, defaultMessage: section.title.defaultMessage }, section.title.values @@ -108,7 +108,7 @@ const LeftMenu = () => { label={label} badgeLabel={section.links.length.toString()} > - {section.links.map(link => { + {section.links.map((link) => { const search = link.search ? `?${link.search}` : ''; return ( diff --git a/packages/core/admin/admin/src/content-manager/pages/App/index.js b/packages/core/admin/admin/src/content-manager/pages/App/index.js index 0868edded1e..9621b9d2702 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/index.js @@ -28,7 +28,7 @@ const cmPermissions = permissions.contentManager; const App = () => { const contentTypeMatch = useRouteMatch(`/content-manager/:kind/:uid`); const { status, collectionTypeLinks, singleTypeLinks, models, refetchData } = useModels(); - const authorisedModels = sortBy([...collectionTypeLinks, ...singleTypeLinks], model => + const authorisedModels = sortBy([...collectionTypeLinks, ...singleTypeLinks], (model) => model.title.toLowerCase() ); const { pathname } = useLocation(); @@ -114,7 +114,7 @@ const App = () => { export { App }; -export default () => { +export default function () { const { formatMessage } = useIntl(); return ( @@ -125,4 +125,4 @@ export default () => { ); -}; +} diff --git a/packages/core/admin/admin/src/content-manager/pages/App/reducer.js b/packages/core/admin/admin/src/content-manager/pages/App/reducer.js index 3551a3f0bb1..f50aff92c31 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/reducer.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/reducer.js @@ -15,7 +15,7 @@ const initialState = { }; const mainReducer = (state = initialState, action) => - produce(state, draftState => { + produce(state, (draftState) => { switch (action.type) { case GET_DATA: { draftState.status = 'loading'; diff --git a/packages/core/admin/admin/src/content-manager/pages/App/selectors.js b/packages/core/admin/admin/src/content-manager/pages/App/selectors.js index d05191c5eb8..e5b433387ed 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/selectors.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/selectors.js @@ -1,19 +1,19 @@ import { createSelector } from 'reselect'; import { initialState } from './reducer'; -const selectAppDomain = () => state => { +const selectAppDomain = () => (state) => { return state['content-manager_app'] || initialState; }; const makeSelectApp = () => - createSelector(selectAppDomain(), substate => { + createSelector(selectAppDomain(), (substate) => { return substate; }); -const makeSelectModels = () => createSelector(selectAppDomain(), state => state.models); +const makeSelectModels = () => createSelector(selectAppDomain(), (state) => state.models); const makeSelectModelLinks = () => - createSelector(selectAppDomain(), state => ({ + createSelector(selectAppDomain(), (state) => ({ collectionTypeLinks: state.collectionTypeLinks, singleTypeLinks: state.singleTypeLinks, })); diff --git a/packages/core/admin/admin/src/content-manager/pages/App/tests/index.test.js b/packages/core/admin/admin/src/content-manager/pages/App/tests/index.test.js index fabcc8532e2..218522a548b 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/tests/index.test.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/tests/index.test.js @@ -25,7 +25,13 @@ jest.mock('@fortawesome/react-fontawesome', () => ({ FontAwesomeIcon: () => null, })); -jest.mock('../../NoContentType', () => () =>
    NoContentType
    ); +jest.mock( + '../../NoContentType', + () => + function () { + return
    NoContentType
    ; + } +); jest.mock('@strapi/helper-plugin', () => ({ ...jest.requireActual('@strapi/helper-plugin'), diff --git a/packages/core/admin/admin/src/content-manager/pages/App/tests/reducer.test.js b/packages/core/admin/admin/src/content-manager/pages/App/tests/reducer.test.js index e8eac787781..7817b091070 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/tests/reducer.test.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/tests/reducer.test.js @@ -22,7 +22,7 @@ describe('Content Manager | App | reducer', () => { it('should handle the getData action correctly', () => { state.status = 'resolved'; - const expected = produce(state, draft => { + const expected = produce(state, (draft) => { draft.status = 'loading'; }); @@ -50,7 +50,7 @@ describe('Content Manager | App | reducer', () => { isDisplayed: true, }, ]; - const expected = produce(state, draft => { + const expected = produce(state, (draft) => { draft.status = 'resolved'; draft.components = ['test']; draft.models = ['test']; diff --git a/packages/core/admin/admin/src/content-manager/pages/App/tests/selectors.test.js b/packages/core/admin/admin/src/content-manager/pages/App/tests/selectors.test.js index 2329e7c4d97..7c266f69d0f 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/tests/selectors.test.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/tests/selectors.test.js @@ -1,4 +1,4 @@ -import { fixtures } from '../../../../../../../../admin-test-utils'; +import { fixtures } from '@strapi/admin-test-utils/lib'; import { makeSelectModels } from '../selectors'; describe('Content Manager | App | selectors', () => { diff --git a/packages/core/admin/admin/src/content-manager/pages/App/useModels.js b/packages/core/admin/admin/src/content-manager/pages/App/useModels.js index 30ceea5a56e..382114690af 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/useModels.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/useModels.js @@ -35,7 +35,7 @@ const useModels = () => { data: { data: models }, }, ] = await Promise.all( - ['components', 'content-types'].map(endPoint => + ['components', 'content-types'].map((endPoint) => axiosInstance.get(getRequestUrl(endPoint), { cancelToken: source.token }) ) ); diff --git a/packages/core/admin/admin/src/content-manager/pages/App/utils/generateModelsLinks.js b/packages/core/admin/admin/src/content-manager/pages/App/utils/generateModelsLinks.js index b36dee0fa62..8030c258299 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/utils/generateModelsLinks.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/utils/generateModelsLinks.js @@ -3,8 +3,8 @@ import { stringify } from 'qs'; const generateLinks = (links, type, configurations = []) => { return links - .filter(link => link.isDisplayed) - .map(link => { + .filter((link) => link.isDisplayed) + .map((link) => { const collectionTypesPermissions = [ { action: 'plugin::content-manager.explorer.create', subject: link.uid }, { action: 'plugin::content-manager.explorer.read', subject: link.uid }, diff --git a/packages/core/admin/admin/src/content-manager/pages/App/utils/tests/getContentTypeLinks.js b/packages/core/admin/admin/src/content-manager/pages/App/utils/tests/getContentTypeLinks.js index 65e993734d9..37dae5842d7 100644 --- a/packages/core/admin/admin/src/content-manager/pages/App/utils/tests/getContentTypeLinks.js +++ b/packages/core/admin/admin/src/content-manager/pages/App/utils/tests/getContentTypeLinks.js @@ -70,7 +70,7 @@ describe('checkPermissions', () => { }, ]; - request.mockImplementation(url => { + request.mockImplementation((url) => { if (url === '/content-manager/content-types') { return Promise.resolve({ data }); } diff --git a/packages/core/admin/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js b/packages/core/admin/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js index f5a8ae16541..0fbed8d7fb4 100644 --- a/packages/core/admin/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js @@ -81,7 +81,7 @@ const CollectionTypeRecursivePath = ({ { path: ':id', comp: EditViewLayoutManager }, { path: '', comp: ListViewLayout }, ].map(({ path, comp }) => ( - renderRoute(props, comp)} /> + renderRoute(props, comp)} /> )); return ( diff --git a/packages/core/admin/admin/src/content-manager/pages/ComponentSetttingsView/index.js b/packages/core/admin/admin/src/content-manager/pages/ComponentSetttingsView/index.js index dbba86ff3cb..8480c5f2db7 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ComponentSetttingsView/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/ComponentSetttingsView/index.js @@ -16,14 +16,14 @@ const cmPermissions = permissions.contentManager; const ComponentSettingsView = () => { const [{ isLoading, data: layout }, dispatch] = useReducer(crudReducer, crudInitialState); const schemasSelector = useMemo(makeSelectModelAndComponentSchemas, []); - const { schemas } = useSelector(state => schemasSelector(state), shallowEqual); + const { schemas } = useSelector((state) => schemasSelector(state), shallowEqual); const { uid } = useParams(); useEffect(() => { const CancelToken = axios.CancelToken; const source = CancelToken.source(); - const fetchData = async source => { + const fetchData = async (source) => { try { dispatch(getData()); diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js index d7df4f7ccbc..73ce0365174 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js @@ -22,7 +22,7 @@ const ComponentFieldList = ({ componentUid }) => { {componentLayout.map((row, index) => ( // eslint-disable-next-line react/no-array-index-key - {row.map(rowContent => ( + {row.map((rowContent) => ( ({ + collect: (monitor) => ({ canDrop: monitor.canDrop(), clientOffset: monitor.getClientOffset(), isOver: monitor.isOver(), @@ -225,7 +225,7 @@ const DisplayedFieldButton = ({ }); const [{ isDragging, getItem }, drag, dragPreview] = useDrag({ type: ItemTypes.EDIT_FIELD, - item: () => { + item() { setIsDraggingSibling(true); return { @@ -244,11 +244,11 @@ const DisplayedFieldButton = ({ // We will need to add a 12 size _TEMP_ div to offer a drop target between each existing row. return name !== '_TEMP_'; }, - collect: monitor => ({ + collect: (monitor) => ({ isDragging: monitor.isDragging(), getItem: monitor.getItem(), }), - end: () => { + end() { setIsDraggingSibling(false); }, }); @@ -344,7 +344,7 @@ const DisplayedFieldButton = ({ as="span" type="button" ref={refs.dragRef} - onClick={e => e.stopPropagation()} + onClick={(e) => e.stopPropagation()} alignItems="center" paddingLeft={3} paddingRight={3} diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js index 4f6c8d43fcb..97d8753bf50 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js @@ -57,7 +57,7 @@ const DisplayedFields = ({ editLayout, editLayoutRemainingFields, onRemoveField, variant="secondary" disabled={editLayoutRemainingFields.length === 0} > - {editLayoutRemainingFields.map(field => ( + {editLayoutRemainingFields.map((field) => ( onAddField(field)}> {field} diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js index e1e02251a72..901dd1e03a5 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js @@ -46,7 +46,7 @@ const DynamicZoneList = ({ components }) => { return ( - {components.map(componentUid => ( + {components.map((componentUid) => ( { + onChange={(e) => { onChange({ target: { name, value: e.target.checked } }); }} checked={value} @@ -37,10 +37,10 @@ const GenericInput = ({ type, options, onChange, value, name, ...inputProps }) = { + onChange={(value) => { onSizeChange({ name: selectedField, value }); }} label={formatMessage({ diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/RelationalFieldButton.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/RelationalFieldButton.js index 39a462ec914..eb8446f5f0b 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/RelationalFieldButton.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/RelationalFieldButton.js @@ -56,10 +56,10 @@ const RelationalFieldButton = ({ const [{ isDragging }, drag, dragPreview] = useDrag({ type: ItemTypes.EDIT_RELATION, - item: () => { + item() { return { index, labelField: children, name }; }, - collect: monitor => ({ + collect: (monitor) => ({ isDragging: monitor.isDragging(), }), }); @@ -94,7 +94,7 @@ const RelationalFieldButton = ({ as="span" type="button" ref={dragButtonRef} - onClick={e => e.stopPropagation()} + onClick={(e) => e.stopPropagation()} alignItems="center" paddingLeft={3} paddingRight={3} diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/RelationalFields.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/RelationalFields.js index 524912d4d95..e2eb5fbc362 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/RelationalFields.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/components/RelationalFields.js @@ -77,7 +77,7 @@ const RelationalFields = ({ variant="secondary" disabled={editRelationsLayoutRemainingFields.length === 0} > - {editRelationsLayoutRemainingFields.map(remainingRelation => ( + {editRelationsLayoutRemainingFields.map((remainingRelation) => ( { + const entryTitleOptions = Object.keys(attributes).filter((attr) => { const type = get(attributes, [attr, 'type'], ''); return ( @@ -68,22 +68,22 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd const editLayout = get(modifiedData, ['layouts', 'edit'], []); const displayedFields = flatMap(editLayout, 'rowContent'); const editLayoutRemainingFields = Object.keys(modifiedData.attributes) - .filter(attr => { + .filter((attr) => { if (!isContentTypeView) { return true; } return get(modifiedData, ['attributes', attr, 'type'], '') !== 'relation'; }) - .filter(attr => get(modifiedData, ['metadatas', attr, 'edit', 'visible'], false) === true) - .filter(attr => { - return displayedFields.findIndex(el => el.name === attr) === -1; + .filter((attr) => get(modifiedData, ['metadatas', attr, 'edit', 'visible'], false) === true) + .filter((attr) => { + return displayedFields.findIndex((el) => el.name === attr) === -1; }) .sort(); const relationsLayout = get(modifiedData, ['layouts', 'editRelations'], []); const editRelationsLayoutRemainingFields = Object.keys(attributes) - .filter(attr => attributes[attr].type === 'relation') - .filter(attr => relationsLayout.indexOf(attr) === -1); + .filter((attr) => attributes[attr].type === 'relation') + .filter((attr) => relationsLayout.indexOf(attr) === -1); const handleChange = ({ target: { name, value } }) => { dispatch({ @@ -94,11 +94,11 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd }; const handleToggleModal = () => { - setIsModalFormOpen(prev => !prev); + setIsModalFormOpen((prev) => !prev); }; const toggleConfirmDialog = () => { - setIsConfirmDialogOpen(prev => !prev); + setIsConfirmDialogOpen((prev) => !prev); }; const handleMetaChange = ({ target: { name, value } }) => { @@ -117,7 +117,7 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd }); }; - const handleMetaSubmit = e => { + const handleMetaSubmit = (e) => { e.preventDefault(); dispatch({ type: 'SUBMIT_META_FORM', @@ -125,17 +125,17 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd handleToggleModal(); }; - const handleSubmit = e => { + const handleSubmit = (e) => { e.preventDefault(); toggleConfirmDialog(); }; const submitMutation = useMutation( - body => { + (body) => { return putCMSettingsEV(body, slug, isContentTypeView); }, { - onSuccess: ({ data }) => { + onSuccess({ data }) { if (updateLayout) { updateLayout(data.data); } @@ -145,7 +145,7 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd toggleConfirmDialog(); trackUsage('didEditEditSettings'); }, - onError: () => { + onError() { toggleNotification({ type: 'warning', message: { id: 'notification.error' } }); }, } @@ -215,7 +215,7 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd onMoveField={handleMoveField} moveRow={moveRow} moveItem={moveItem} - setEditFieldToSelect={name => { + setEditFieldToSelect={(name) => { dispatch({ type: 'SET_FIELD_TO_EDIT', name, @@ -242,7 +242,7 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd navigationAction={ } - onClick={e => { + onClick={(e) => { e.preventDefault(); goBack(); }} @@ -292,7 +292,7 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd id: getTrad('containers.SettingPage.editSettings.entry.title.description'), defaultMessage: 'Set the display field of your entry', })} - onChange={value => { + onChange={(value) => { handleChange({ target: { name: 'settings.mainField', @@ -302,7 +302,7 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd }} value={modifiedData.settings.mainField} > - {entryTitleOptions.map(attribute => ( + {entryTitleOptions.map((attribute) => ( @@ -325,7 +325,7 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd attributes={attributes} editLayout={editLayout} editLayoutRemainingFields={editLayoutRemainingFields} - onAddField={field => { + onAddField={(field) => { dispatch({ type: 'ON_ADD_FIELD', name: field, @@ -345,8 +345,8 @@ const EditSettingsView = ({ mainLayout, components, isContentTypeView, slug, upd dispatch({ type: 'ADD_RELATION', name })} - onRemoveField={index => dispatch({ type: 'REMOVE_RELATION', index })} + onAddField={(name) => dispatch({ type: 'ADD_RELATION', name })} + onRemoveField={(index) => dispatch({ type: 'REMOVE_RELATION', index })} /> )} diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/reducer.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/reducer.js index 0d582ab6eda..e505d2f87e9 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/reducer.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/reducer.js @@ -17,7 +17,7 @@ const initialState = { const reducer = (state = initialState, action) => // eslint-disable-next-line consistent-return - produce(state, draftState => { + produce(state, (draftState) => { const layoutPathEdit = ['modifiedData', 'layouts', 'edit']; const layoutPathRelations = ['modifiedData', 'layouts', 'editRelations']; diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/createPossibleMainFieldsForModelsAndComponents.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/createPossibleMainFieldsForModelsAndComponents.js index 5676922a5ba..06fd9dd28f2 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/createPossibleMainFieldsForModelsAndComponents.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/createPossibleMainFieldsForModelsAndComponents.js @@ -1,9 +1,9 @@ import { get } from 'lodash'; -const createPossibleMainFieldsForModelsAndComponents = array => { +const createPossibleMainFieldsForModelsAndComponents = (array) => { return array.reduce((acc, current) => { const attributes = get(current, ['attributes'], {}); - const possibleMainFields = Object.keys(attributes).filter(attr => { + const possibleMainFields = Object.keys(attributes).filter((attr) => { return ![ 'boolean', 'component', diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/getInputProps.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/getInputProps.js index 5f089c124d4..bd662394955 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/getInputProps.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/getInputProps.js @@ -1,6 +1,6 @@ import { getTrad } from '../../../utils'; -const getInputProps = fieldName => { +const getInputProps = (fieldName) => { let type; switch (fieldName) { diff --git a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/layout.js b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/layout.js index 9acb0d70494..2b655b64765 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/layout.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditSettingsView/utils/layout.js @@ -1,7 +1,7 @@ /* eslint-disable indent */ -const getRowSize = arr => arr.reduce((sum, value) => sum + value.size, 0); +const getRowSize = (arr) => arr.reduce((sum, value) => sum + value.size, 0); -const createLayout = arr => { +const createLayout = (arr) => { return arr.reduce((acc, current, index) => { const row = { rowId: index, rowContent: current }; @@ -9,7 +9,7 @@ const createLayout = arr => { }, []); }; -const formatLayout = arr => { +const formatLayout = (arr) => { return arr .reduce((acc, current) => { let toPush = []; @@ -33,7 +33,7 @@ const formatLayout = arr => { ? 0 : Math.max.apply( Math, - acc.map(o => o.rowId) + acc.map((o) => o.rowId) ) + 1; const currentRowSize = getRowSize(currentRow); @@ -57,8 +57,8 @@ const formatLayout = arr => { return acc; }, []) - .filter(row => row.rowContent.length > 0) - .filter(row => { + .filter((row) => row.rowContent.length > 0) + .filter((row) => { if (row.rowContent.length === 1) { return row.rowContent[0].name !== '_TEMP_'; } @@ -67,15 +67,15 @@ const formatLayout = arr => { }); }; -const unformatLayout = arr => { +const unformatLayout = (arr) => { return arr.reduce((acc, current) => { - const currentRow = current.rowContent.filter(content => content.name !== '_TEMP_'); + const currentRow = current.rowContent.filter((content) => content.name !== '_TEMP_'); return acc.concat([currentRow]); }, []); }; -const getDefaultInputSize = type => { +const getDefaultInputSize = (type) => { switch (type) { case 'boolean': case 'date': @@ -97,7 +97,7 @@ const getDefaultInputSize = type => { const getFieldSize = (name, layouts = []) => { return layouts.reduce((acc, { rowContent }) => { - const size = rowContent.find(row => row.name === name)?.size ?? null; + const size = rowContent.find((row) => row.name === name)?.size ?? null; if (size) { acc = size; @@ -108,8 +108,8 @@ const getFieldSize = (name, layouts = []) => { }; const setFieldSize = (name, size, layouts = []) => { - return layouts.map(row => { - row.rowContent = row.rowContent.map(column => { + return layouts.map((row) => { + row.rowContent = row.rowContent.map((column) => { if (column.name === name) { return { ...column, diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/DeleteLink/index.js b/packages/core/admin/admin/src/content-manager/pages/EditView/DeleteLink/index.js index 85402afe756..73b0b985a21 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/DeleteLink/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/DeleteLink/index.js @@ -15,7 +15,7 @@ const DeleteLink = ({ isCreatingEntry, onDelete, onDeleteSucceeded, trackerPrope const { formatMessage } = useIntl(); const toggleNotification = useNotification(); - const toggleWarningDelete = () => setWarningDelete(prevState => !prevState); + const toggleWarningDelete = () => setWarningDelete((prevState) => !prevState); const handleConfirmDelete = async () => { try { diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/DeleteLink/utils/connect.js b/packages/core/admin/admin/src/content-manager/pages/EditView/DeleteLink/utils/connect.js index b7735feb995..e42d7e8a287 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/DeleteLink/utils/connect.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/DeleteLink/utils/connect.js @@ -1,7 +1,7 @@ import React from 'react'; function connect(WrappedComponent, select) { - return function(props) { + return function (props) { // eslint-disable-next-line react/prop-types const selectors = select(); diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/tests/index.test.js b/packages/core/admin/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/tests/index.test.js index 478b36a4d67..b430e7c999e 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/tests/index.test.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/tests/index.test.js @@ -12,7 +12,7 @@ import { ThemeProvider, lightTheme } from '@strapi/design-system'; import { IntlProvider } from 'react-intl'; import { DraftAndPublishBadge } from '../index'; -const makeApp = props => ( +const makeApp = (props) => ( diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/utils/connect.js b/packages/core/admin/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/utils/connect.js index b7735feb995..e42d7e8a287 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/utils/connect.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/utils/connect.js @@ -1,7 +1,7 @@ import React from 'react'; function connect(WrappedComponent, select) { - return function(props) { + return function (props) { // eslint-disable-next-line react/prop-types const selectors = select(); diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/Header/index.js b/packages/core/admin/admin/src/content-manager/pages/EditView/Header/index.js index b3e5d9b96d9..ca1c1f4974f 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/Header/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/Header/index.js @@ -134,8 +134,8 @@ const Header = ({ ); } - const toggleWarningUnpublish = () => setWarningUnpublish(prevState => !prevState); - const toggleWarningDraftRelation = () => setShowWarningDraftRelation(prevState => !prevState); + const toggleWarningUnpublish = () => setWarningUnpublish((prevState) => !prevState); + const toggleWarningDraftRelation = () => setShowWarningDraftRelation((prevState) => !prevState); const handlePublish = () => { toggleWarningDraftRelation(); @@ -165,7 +165,7 @@ const Header = ({ // Needed in order to redirect the user with the correct search params // Since parts is using a link from react-router-dom the best way to do it is to disable the // event - onClick={e => { + onClick={(e) => { e.preventDefault(); goBack(); }} @@ -254,7 +254,7 @@ const Header = ({ }, { br: () =>
    , - b: chunks => {chunks}, + b: (chunks) => {chunks}, count: draftRelationsCountRef.current, } )} diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/Header/utils/connect.js b/packages/core/admin/admin/src/content-manager/pages/EditView/Header/utils/connect.js index b7735feb995..e42d7e8a287 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/Header/utils/connect.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/Header/utils/connect.js @@ -1,7 +1,7 @@ import React from 'react'; function connect(WrappedComponent, select) { - return function(props) { + return function (props) { // eslint-disable-next-line react/prop-types const selectors = select(); diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/Header/utils/getDraftRelations.js b/packages/core/admin/admin/src/content-manager/pages/EditView/Header/utils/getDraftRelations.js index 523266a145b..e57b1f83de1 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/Header/utils/getDraftRelations.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/Header/utils/getDraftRelations.js @@ -14,7 +14,7 @@ const getDraftRelations = (data, ctSchema, components) => { } if (type === 'dynamiczone') { - currentData.forEach(curr => { + currentData.forEach((curr) => { const compoSchema = get(components, curr.__component, {}); acc += getDraftRelationsCount(curr, compoSchema); @@ -27,7 +27,7 @@ const getDraftRelations = (data, ctSchema, components) => { const compoSchema = get(components, compoUID, {}); if (isRepeatable) { - currentData.forEach(curr => { + currentData.forEach((curr) => { acc += getDraftRelationsCount(curr, compoSchema); }); } else { @@ -43,7 +43,7 @@ const getDraftRelations = (data, ctSchema, components) => { acc += 1; } } else { - currentData.forEach(value => { + currentData.forEach((value) => { if (has(value, 'publishedAt') && isEmpty(value.publishedAt)) { acc += 1; } diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/Informations/utils/getUnits.js b/packages/core/admin/admin/src/content-manager/pages/EditView/Informations/utils/getUnits.js index 89ad6f06c77..b8f2bda420b 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/Informations/utils/getUnits.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/Informations/utils/getUnits.js @@ -4,7 +4,7 @@ const msPerDay = msPerHour * 24; const msPerMonth = msPerDay * 30; const msPerYear = msPerDay * 365; -const getUnits = value => { +const getUnits = (value) => { if (value < msPerMinute) { return { unit: 'second', value: -Math.round(value / 1000) }; } diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/index.js b/packages/core/admin/admin/src/content-manager/pages/EditView/index.js index 0e6669cb00f..8ff1f2851d4 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/index.js @@ -44,13 +44,10 @@ const EditView = ({ }) => { const { trackUsage } = useTracking(); const { formatMessage } = useIntl(); - const { - createActionAllowedFields, - readActionAllowedFields, - updateActionAllowedFields, - } = useMemo(() => { - return getFieldsActionMatchingPermissions(userPermissions, slug); - }, [userPermissions, slug]); + const { createActionAllowedFields, readActionAllowedFields, updateActionAllowedFields } = + useMemo(() => { + return getFieldsActionMatchingPermissions(userPermissions, slug); + }, [userPermissions, slug]); const configurationPermissions = useMemo(() => { return isSingleType @@ -70,9 +67,9 @@ const EditView = ({ ); // Check if a block is a dynamic zone - const isDynamicZone = useCallback(block => { - return block.every(subBlock => { - return subBlock.every(obj => obj.fieldSchema.type === 'dynamiczone'); + const isDynamicZone = useCallback((block) => { + return block.every((subBlock) => { + return subBlock.every((obj) => obj.fieldSchema.type === 'dynamiczone'); }); }, []); diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/utils/createAttributesLayout.js b/packages/core/admin/admin/src/content-manager/pages/EditView/utils/createAttributesLayout.js index 4a870983cf1..793d5b93bd5 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/utils/createAttributesLayout.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/utils/createAttributesLayout.js @@ -4,7 +4,7 @@ import { get, isEmpty } from 'lodash'; /* eslint-disable no-unused-vars */ const createAttributesLayout = (currentLayout, attributes) => { - const getType = name => get(attributes, [name, 'type'], ''); + const getType = (name) => get(attributes, [name, 'type'], ''); let currentRowIndex = 0; const newLayout = []; @@ -29,7 +29,7 @@ const createAttributesLayout = (currentLayout, attributes) => { } } - return newLayout.filter(arr => arr.length > 0); + return newLayout.filter((arr) => arr.length > 0); }; export default createAttributesLayout; diff --git a/packages/core/admin/admin/src/content-manager/pages/EditView/utils/getFieldsActionMatchingPermissions.js b/packages/core/admin/admin/src/content-manager/pages/EditView/utils/getFieldsActionMatchingPermissions.js index 7a38071e657..a50ffa348a2 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditView/utils/getFieldsActionMatchingPermissions.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditView/utils/getFieldsActionMatchingPermissions.js @@ -2,7 +2,7 @@ import { uniq, flatMap } from 'lodash'; import { findMatchingPermissions } from '@strapi/helper-plugin'; const getFieldsActionMatchingPermissions = (userPermissions, slug) => { - const getMatchingPermissions = action => { + const getMatchingPermissions = (action) => { const matched = findMatchingPermissions(userPermissions, [ { action: `plugin::content-manager.explorer.${action}`, diff --git a/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/Permissions.js b/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/Permissions.js index fb0b632721d..8d4d4eb715a 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/Permissions.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/Permissions.js @@ -5,7 +5,7 @@ import isEqual from 'react-fast-compare'; import EditView from '../EditView'; import { generatePermissionsObject } from '../../utils'; -const Permissions = props => { +const Permissions = (props) => { const viewPermissions = useMemo(() => generatePermissionsObject(props.slug), [props.slug]); const { isLoading, allowedActions } = useRBAC(viewPermissions, props.userPermissions); diff --git a/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/reducer.js b/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/reducer.js index 7b6427fc94c..a33dc0c8e1c 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/reducer.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/reducer.js @@ -12,7 +12,7 @@ export const initialState = { const editViewManagerReducer = (state = initialState, action) => // eslint-disable-next-line consistent-return - produce(state, drafState => { + produce(state, (drafState) => { switch (action.type) { case RESET_PROPS: { drafState.currentLayout = null; diff --git a/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/selectors.js b/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/selectors.js index 23ef166c458..df96465c24a 100644 --- a/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/selectors.js +++ b/packages/core/admin/admin/src/content-manager/pages/EditViewLayoutManager/selectors.js @@ -1,3 +1,3 @@ -const selectLayout = state => state['content-manager_editViewLayoutManager'].currentLayout; +const selectLayout = (state) => state['content-manager_editViewLayoutManager'].currentLayout; export default selectLayout; diff --git a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js index 0391a1f0129..b412db94bc6 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js @@ -141,13 +141,13 @@ const DraggableCard = ({ const [{ isDragging }, drag, preview] = useDrag({ type: ItemTypes.FIELD, - item: () => { + item() { return { index, labelField, name }; }, - collect: monitor => ({ + collect: (monitor) => ({ isDragging: monitor.isDragging(), }), - end: () => { + end() { setIsDraggingSibling(false); }, }); @@ -167,7 +167,7 @@ const DraggableCard = ({ // anymore, this hack forces a rerender in order to apply the dragRef useEffect(() => { if (!isDraggingSibling) { - forceRerenderAfterDnd(prev => !prev); + forceRerenderAfterDnd((prev) => !prev); } }, [isDraggingSibling]); @@ -203,7 +203,7 @@ const DraggableCard = ({ }, { item: name } )} - onClick={e => e.stopPropagation()} + onClick={(e) => e.stopPropagation()} ref={refs.dragRef} type="button" > @@ -214,7 +214,7 @@ const DraggableCard = ({ { + onClick={(e) => { e.stopPropagation(); onClickEditField(name); }} diff --git a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/EditFieldForm.js b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/EditFieldForm.js index 7be70bd6f41..3c6dc2ce85e 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/EditFieldForm.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/EditFieldForm.js @@ -72,7 +72,7 @@ const EditFieldForm = ({ defaultMessage: 'Label', })} name="label" - onChange={e => onChangeEditLabel(e)} + onChange={(e) => onChangeEditLabel(e)} value={fieldForm.label} hint={formatMessage({ id: getTrad('form.Input.label.inputDescription'), @@ -90,8 +90,9 @@ const EditFieldForm = ({ defaultMessage: 'Enable sort on this field', })} name="sortable" - onChange={e => - onChangeEditLabel({ target: { name: 'sortable', value: e.target.checked } })} + onChange={(e) => + onChangeEditLabel({ target: { name: 'sortable', value: e.target.checked } }) + } onLabel={formatMessage({ id: 'app.components.ToggleCheckbox.on-label', defaultMessage: 'on', diff --git a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/Settings.js b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/Settings.js index 9f929d5eb42..f190f1ad1d3 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/Settings.js @@ -34,7 +34,7 @@ const Settings = ({ modifiedData, onChange, sortOptions }) => { id: getTrad('form.Input.search'), defaultMessage: 'Enable search', })} - onChange={e => { + onChange={(e) => { onChange({ target: { name: 'settings.searchable', value: e.target.checked } }); }} onLabel={formatMessage({ @@ -53,7 +53,7 @@ const Settings = ({ modifiedData, onChange, sortOptions }) => { id: getTrad('form.Input.filters'), defaultMessage: 'Enable filters', })} - onChange={e => { + onChange={(e) => { onChange({ target: { name: 'settings.filterable', value: e.target.checked } }); }} onLabel={formatMessage({ @@ -72,7 +72,7 @@ const Settings = ({ modifiedData, onChange, sortOptions }) => { id: getTrad('form.Input.bulkActions'), defaultMessage: 'Enable bulk actions', })} - onChange={e => { + onChange={(e) => { onChange({ target: { name: 'settings.bulkable', value: e.target.checked } }); }} onLabel={formatMessage({ @@ -99,11 +99,11 @@ const Settings = ({ modifiedData, onChange, sortOptions }) => { defaultMessage: 'Note: You can override this value in the Collection Type settings page.', })} - onChange={value => onChange({ target: { name: 'settings.pageSize', value } })} + onChange={(value) => onChange({ target: { name: 'settings.pageSize', value } })} name="settings.pageSize" value={modifiedData.settings.pageSize || ''} > - {[10, 20, 50, 100].map(pageSize => ( + {[10, 20, 50, 100].map((pageSize) => ( @@ -116,11 +116,11 @@ const Settings = ({ modifiedData, onChange, sortOptions }) => { id: getTrad('form.Input.defaultSort'), defaultMessage: 'Default sort attribute', })} - onChange={value => onChange({ target: { name: 'settings.defaultSortBy', value } })} + onChange={(value) => onChange({ target: { name: 'settings.defaultSortBy', value } })} name="settings.defaultSortBy" value={modifiedData.settings.defaultSortBy || ''} > - {sortOptions.map(sortBy => ( + {sortOptions.map((sortBy) => ( @@ -133,11 +133,11 @@ const Settings = ({ modifiedData, onChange, sortOptions }) => { id: getTrad('form.Input.sort.order'), defaultMessage: 'Default sort order', })} - onChange={value => onChange({ target: { name: 'settings.defaultSortOrder', value } })} + onChange={(value) => onChange({ target: { name: 'settings.defaultSortOrder', value } })} name="settings.defaultSortOrder" value={modifiedData.settings.defaultSortOrder || ''} > - {['ASC', 'DESC'].map(order => ( + {['ASC', 'DESC'].map((order) => ( diff --git a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js index e90eac7cce1..64b35d75b6b 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js @@ -83,7 +83,7 @@ const SortDisplayedFields = ({ isDraggingSibling={isDraggingSibling} onMoveField={onMoveField} onClickEditField={onClickEditField} - onRemoveField={e => handleRemoveField(e, index)} + onRemoveField={(e) => handleRemoveField(e, index)} name={field} labelField={metadatas[field].list.label || field} setIsDraggingSibling={setIsDraggingSibling} @@ -102,7 +102,7 @@ const SortDisplayedFields = ({ disabled={listRemainingFields.length <= 0} data-testid="add-field" > - {listRemainingFields.map(field => ( + {listRemainingFields.map((field) => ( handleAddField(field)}> {field} diff --git a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/index.js b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/index.js index 2a3099860b2..eb05ba73ab6 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/index.js @@ -34,9 +34,9 @@ const ListSettingsView = ({ layout, slug }) => { const { refetchData } = useContext(ModelsContext); const [showWarningSubmit, setWarningSubmit] = useState(false); - const toggleWarningSubmit = () => setWarningSubmit(prevState => !prevState); + const toggleWarningSubmit = () => setWarningSubmit((prevState) => !prevState); const [isModalFormOpen, setIsModalFormOpen] = useState(false); - const toggleModalForm = () => setIsModalFormOpen(prevState => !prevState); + const toggleModalForm = () => setIsModalFormOpen((prevState) => !prevState); const [reducerState, dispatch] = useReducer(reducer, initialState, () => init(initialState, layout) ); @@ -76,7 +76,7 @@ const ListSettingsView = ({ layout, slug }) => { submitMutation.mutate(body); }; - const handleAddField = item => { + const handleAddField = (item) => { dispatch({ type: 'ADD_FIELD', item, @@ -99,13 +99,13 @@ const ListSettingsView = ({ layout, slug }) => { } }; - const handleSubmit = e => { + const handleSubmit = (e) => { e.preventDefault(); toggleWarningSubmit(); trackUsage('willSaveContentTypeLayout'); }; - const handleClickEditField = fieldToEdit => { + const handleClickEditField = (fieldToEdit) => { dispatch({ type: 'SET_FIELD_TO_EDIT', fieldToEdit, @@ -120,7 +120,7 @@ const ListSettingsView = ({ layout, slug }) => { toggleModalForm(); }; - const handleSubmitFieldEdit = e => { + const handleSubmitFieldEdit = (e) => { e.preventDefault(); toggleModalForm(); dispatch({ @@ -128,12 +128,12 @@ const ListSettingsView = ({ layout, slug }) => { }); }; - const submitMutation = useMutation(body => putCMSettingsLV(body, slug), { - onSuccess: () => { + const submitMutation = useMutation((body) => putCMSettingsLV(body, slug), { + onSuccess() { trackUsage('didEditListSettings'); refetchData(); }, - onError: () => { + onError() { toggleNotification({ type: 'warning', message: { id: 'notification.error' }, diff --git a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/reducer.js b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/reducer.js index 4fd33f238dc..cb9d38ef123 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/reducer.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/reducer.js @@ -12,7 +12,7 @@ const initialState = { const reducer = (state = initialState, action) => // eslint-disable-next-line consistent-return - produce(state, draftState => { + produce(state, (draftState) => { const layoutFieldListPath = ['modifiedData', 'layouts', 'list']; switch (action.type) { case 'ADD_FIELD': { diff --git a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/tests/index.test.js b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/tests/index.test.js index d35a58d1801..916caa4d58c 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/tests/index.test.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/tests/index.test.js @@ -92,7 +92,7 @@ const layout = { uid: 'api::restaurant.restaurant', }; -const makeApp = history => ( +const makeApp = (history) => ( diff --git a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/utils/ellipsisCardTitle.js b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/utils/ellipsisCardTitle.js index 512d1579fd4..66bd666cf9d 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/utils/ellipsisCardTitle.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListSettingsView/utils/ellipsisCardTitle.js @@ -1,4 +1,4 @@ -const ellipsisCardTitle = title => { +const ellipsisCardTitle = (title) => { const formatedTitle = title.length > 20 ? `${title.substring(0, 20)}...` : title; return formatedTitle; diff --git a/packages/core/admin/admin/src/content-manager/pages/ListView/FieldPicker/index.js b/packages/core/admin/admin/src/content-manager/pages/ListView/FieldPicker/index.js index 414d50238c9..d653b932f89 100644 --- a/packages/core/admin/admin/src/content-manager/pages/ListView/FieldPicker/index.js +++ b/packages/core/admin/admin/src/content-manager/pages/ListView/FieldPicker/index.js @@ -16,7 +16,7 @@ const FieldPicker = ({ layout }) => { const { trackUsage } = useTracking(); const { formatMessage } = useIntl(); - const allAllowedHeaders = getAllAllowedHeaders(layout.contentType.attributes).map(attrName => { + const allAllowedHeaders = getAllAllowedHeaders(layout.contentType.attributes).map((attrName) => { const metadatas = layout.contentType.metadatas[attrName].list; return { @@ -26,18 +26,18 @@ const FieldPicker = ({ layout }) => { }); const values = displayedHeaders.map(({ name }) => name); - const handleChange = updatedValues => { + const handleChange = (updatedValues) => { trackUsage('didChangeDisplayedFields'); // removing a header if (updatedValues.length < values.length) { - const removedHeader = values.filter(value => { + const removedHeader = values.filter((value) => { return updatedValues.indexOf(value) === -1; }); dispatch(onChangeListHeaders({ name: removedHeader[0], value: true })); } else { - const addedHeader = updatedValues.filter(value => { + const addedHeader = updatedValues.filter((value) => { return values.indexOf(value) === -1; }); @@ -51,18 +51,19 @@ const FieldPicker = ({ layout }) => { aria-label="change displayed fields" value={values} onChange={handleChange} - customizeContent={values => + customizeContent={(values) => formatMessage( { id: getTrad('select.currently.selected'), defaultMessage: '{count} currently selected', }, { count: values.length } - )} + ) + } multi size="S" > - {allAllowedHeaders.map(header => { + {allAllowedHeaders.map((header) => { return (