diff --git a/packages/generators/generators/src/files/js/plugin/.gitattributes b/packages/generators/generators/src/files/js/plugin/.gitattributes deleted file mode 100644 index 065a11c71d..0000000000 --- a/packages/generators/generators/src/files/js/plugin/.gitattributes +++ /dev/null @@ -1,103 +0,0 @@ -# From https://github.com/Danimoth/gitattributes/blob/master/Web.gitattributes - -# Handle line endings automatically for files detected as text -# and leave all files detected as binary untouched. -* text=auto - -# -# The above will handle all files NOT found below -# - -# -## These files are text and should be normalized (Convert crlf => lf) -# - -# source code -*.php text -*.css text -*.sass text -*.scss text -*.less text -*.styl text -*.js text eol=lf -*.coffee text -*.json text -*.htm text -*.html text -*.xml text -*.svg text -*.txt text -*.ini text -*.inc text -*.pl text -*.rb text -*.py text -*.scm text -*.sql text -*.sh text -*.bat text - -# templates -*.ejs text -*.hbt text -*.jade text -*.haml text -*.hbs text -*.dot text -*.tmpl text -*.phtml text - -# git config -.gitattributes text -.gitignore text -.gitconfig text - -# code analysis config -.jshintrc text -.jscsrc text -.jshintignore text -.csslintrc text - -# misc config -*.yaml text -*.yml text -.editorconfig text - -# build config -*.npmignore text -*.bowerrc text - -# Heroku -Procfile text -.slugignore text - -# Documentation -*.md text -LICENSE text -AUTHORS text - - -# -## These files are binary and should be left untouched -# - -# (binary is a macro for -text -diff) -*.png binary -*.jpg binary -*.jpeg binary -*.gif binary -*.ico binary -*.mov binary -*.mp4 binary -*.mp3 binary -*.flv binary -*.fla binary -*.swf binary -*.gz binary -*.zip binary -*.7z binary -*.ttf binary -*.eot binary -*.woff binary -*.pyc binary -*.pdf binary diff --git a/packages/generators/generators/src/files/js/plugin/.gitignore b/packages/generators/generators/src/files/js/plugin/.gitignore deleted file mode 100644 index afe256bf30..0000000000 --- a/packages/generators/generators/src/files/js/plugin/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -# Don't check auto-generated stuff into git -coverage -node_modules -stats.json -package-lock.json - -# Cruft -.DS_Store -npm-debug.log -.idea diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/components/Initializer/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/components/Initializer/index.js deleted file mode 100644 index 71dc50e94c..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/components/Initializer/index.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * - * Initializer - * - */ - -import { useEffect, useRef } from 'react'; -import PropTypes from 'prop-types'; -import pluginId from '../../pluginId'; - -const Initializer = ({ setPlugin }) => { - const ref = useRef(); - ref.current = setPlugin; - - useEffect(() => { - ref.current(pluginId); - }, []); - - return null; -}; - -Initializer.propTypes = { - setPlugin: PropTypes.func.isRequired, -}; - -export default Initializer; diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/components/PluginIcon/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/components/PluginIcon/index.js deleted file mode 100644 index e2bb2d5922..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/components/PluginIcon/index.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * - * PluginIcon - * - */ - -import React from 'react'; -import { Puzzle } from '@strapi/icons'; - -const PluginIcon = () => ; - -export default PluginIcon; diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/index.js deleted file mode 100644 index 267b3a7f16..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/index.js +++ /dev/null @@ -1,61 +0,0 @@ -import { prefixPluginTranslations } from './utils/prefixPluginTranslations'; -import pluginPkg from '../../package.json'; -import pluginId from './pluginId'; -import Initializer from './components/Initializer'; -import PluginIcon from './components/PluginIcon'; - -const name = pluginPkg.strapi.name; - -export default { - register(app) { - app.addMenuLink({ - to: `plugins/${pluginId}`, - icon: PluginIcon, - intlLabel: { - id: `${pluginId}.plugin.name`, - defaultMessage: name, - }, - Component: async () => { - const component = await import('./pages/App'); - - return component; - }, - permissions: [ - // Uncomment to set the permissions of the plugin here - // { - // action: '', // the action name should be plugin::plugin-name.actionType - // subject: null, - // }, - ], - }); - app.registerPlugin({ - id: pluginId, - initializer: Initializer, - isReady: false, - name, - }); - }, - - bootstrap(app) {}, - async registerTrads({ locales }) { - const importedTrads = await Promise.all( - locales.map((locale) => { - return import(`./translations/${locale}.json`) - .then(({ default: data }) => { - return { - data: prefixPluginTranslations(data, pluginId), - locale, - }; - }) - .catch(() => { - return { - data: {}, - locale, - }; - }); - }) - ); - - return Promise.resolve(importedTrads); - }, -}; diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/pages/App/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/pages/App/index.js deleted file mode 100644 index 92e8152c32..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/pages/App/index.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * - * This component is the skeleton around the actual pages, and should only - * contain code that should be seen on all pages. (e.g. navigation bar) - * - */ - -import React from 'react'; -import { Switch, Route } from 'react-router-dom'; -import { AnErrorOccurred } from '@strapi/helper-plugin'; -import pluginId from '../../pluginId'; -import HomePage from '../HomePage'; - -const App = () => { - return ( -
- - } /> - } /> - -
- ); -}; - -export default App; diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/pages/HomePage/index.js b/packages/generators/generators/src/files/js/plugin/admin/src/pages/HomePage/index.js deleted file mode 100644 index d8077665b8..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/pages/HomePage/index.js +++ /dev/null @@ -1,20 +0,0 @@ -/* - * - * HomePage - * - */ - -import React from 'react'; -// import PropTypes from 'prop-types'; -import pluginId from '../../pluginId'; - -const HomePage = () => { - return ( -
-

{pluginId}'s HomePage

-

Happy coding

-
- ); -}; - -export default HomePage; diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/pluginId.js b/packages/generators/generators/src/files/js/plugin/admin/src/pluginId.js deleted file mode 100644 index 695317c0bd..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/pluginId.js +++ /dev/null @@ -1,5 +0,0 @@ -import pluginPkg from '../../package.json'; - -const pluginId = pluginPkg.name.replace(/^(@[^-,.][\w,-]+\/|strapi-)plugin-/i, ''); - -export default pluginId; diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/translations/en.json b/packages/generators/generators/src/files/js/plugin/admin/src/translations/en.json deleted file mode 100644 index 0967ef424b..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/translations/en.json +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/translations/fr.json b/packages/generators/generators/src/files/js/plugin/admin/src/translations/fr.json deleted file mode 100644 index 0967ef424b..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/translations/fr.json +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/utils/getTrad.js b/packages/generators/generators/src/files/js/plugin/admin/src/utils/getTrad.js deleted file mode 100644 index d0a071b26a..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/utils/getTrad.js +++ /dev/null @@ -1,5 +0,0 @@ -import pluginId from '../pluginId'; - -const getTrad = (id) => `${pluginId}.${id}`; - -export default getTrad; diff --git a/packages/generators/generators/src/files/js/plugin/admin/src/utils/prefixPluginTranslations.js b/packages/generators/generators/src/files/js/plugin/admin/src/utils/prefixPluginTranslations.js deleted file mode 100644 index b7b93b23f9..0000000000 --- a/packages/generators/generators/src/files/js/plugin/admin/src/utils/prefixPluginTranslations.js +++ /dev/null @@ -1,11 +0,0 @@ -const prefixPluginTranslations = (trad, pluginId) => { - if (!pluginId) { - throw new TypeError("pluginId can't be empty"); - } - return Object.keys(trad).reduce((acc, current) => { - acc[`${pluginId}.${current}`] = trad[current]; - return acc; - }, {}); -}; - -export { prefixPluginTranslations }; diff --git a/packages/generators/generators/src/files/js/plugin/server/bootstrap.js b/packages/generators/generators/src/files/js/plugin/server/bootstrap.js deleted file mode 100644 index 2aa48af4b3..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/bootstrap.js +++ /dev/null @@ -1,5 +0,0 @@ -'use strict'; - -module.exports = ({ strapi }) => { - // bootstrap phase -}; diff --git a/packages/generators/generators/src/files/js/plugin/server/config/index.js b/packages/generators/generators/src/files/js/plugin/server/config/index.js deleted file mode 100644 index 56b5ae6a46..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/config/index.js +++ /dev/null @@ -1,6 +0,0 @@ -'use strict'; - -module.exports = { - default: {}, - validator() {}, -}; diff --git a/packages/generators/generators/src/files/js/plugin/server/content-types/index.js b/packages/generators/generators/src/files/js/plugin/server/content-types/index.js deleted file mode 100644 index 8b46fbbaad..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/content-types/index.js +++ /dev/null @@ -1,3 +0,0 @@ -'use strict'; - -module.exports = {}; diff --git a/packages/generators/generators/src/files/js/plugin/server/controllers/index.js b/packages/generators/generators/src/files/js/plugin/server/controllers/index.js deleted file mode 100644 index c8c47b5bdd..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/controllers/index.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -const myController = require('./my-controller'); - -module.exports = { - myController, -}; diff --git a/packages/generators/generators/src/files/js/plugin/server/controllers/my-controller.js.hbs b/packages/generators/generators/src/files/js/plugin/server/controllers/my-controller.js.hbs deleted file mode 100644 index 727d24d471..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/controllers/my-controller.js.hbs +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; - -module.exports = ({ strapi }) => ({ - index(ctx) { - ctx.body = strapi - .plugin('{{ pluginName }}') - .service('myService') - .getWelcomeMessage(); - }, -}); diff --git a/packages/generators/generators/src/files/js/plugin/server/destroy.js b/packages/generators/generators/src/files/js/plugin/server/destroy.js deleted file mode 100644 index 75f32f48c3..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/destroy.js +++ /dev/null @@ -1,5 +0,0 @@ -'use strict'; - -module.exports = ({ strapi }) => { - // destroy phase -}; diff --git a/packages/generators/generators/src/files/js/plugin/server/index.js b/packages/generators/generators/src/files/js/plugin/server/index.js deleted file mode 100644 index 5b524b1aff..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/index.js +++ /dev/null @@ -1,25 +0,0 @@ -'use strict'; - -const register = require('./register'); -const bootstrap = require('./bootstrap'); -const destroy = require('./destroy'); -const config = require('./config'); -const contentTypes = require('./content-types'); -const controllers = require('./controllers'); -const routes = require('./routes'); -const middlewares = require('./middlewares'); -const policies = require('./policies'); -const services = require('./services'); - -module.exports = { - register, - bootstrap, - destroy, - config, - controllers, - routes, - services, - contentTypes, - policies, - middlewares, -}; diff --git a/packages/generators/generators/src/files/js/plugin/server/middlewares/index.js b/packages/generators/generators/src/files/js/plugin/server/middlewares/index.js deleted file mode 100644 index 8b46fbbaad..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/middlewares/index.js +++ /dev/null @@ -1,3 +0,0 @@ -'use strict'; - -module.exports = {}; diff --git a/packages/generators/generators/src/files/js/plugin/server/policies/index.js b/packages/generators/generators/src/files/js/plugin/server/policies/index.js deleted file mode 100644 index 8b46fbbaad..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/policies/index.js +++ /dev/null @@ -1,3 +0,0 @@ -'use strict'; - -module.exports = {}; diff --git a/packages/generators/generators/src/files/js/plugin/server/register.js b/packages/generators/generators/src/files/js/plugin/server/register.js deleted file mode 100644 index 031ab6852f..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/register.js +++ /dev/null @@ -1,5 +0,0 @@ -'use strict'; - -module.exports = ({ strapi }) => { - // register phase -}; diff --git a/packages/generators/generators/src/files/js/plugin/server/routes/index.js b/packages/generators/generators/src/files/js/plugin/server/routes/index.js deleted file mode 100644 index 4158ea39b1..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/routes/index.js +++ /dev/null @@ -1,10 +0,0 @@ -module.exports = [ - { - method: 'GET', - path: '/', - handler: 'myController.index', - config: { - policies: [], - }, - }, -]; diff --git a/packages/generators/generators/src/files/js/plugin/server/services/index.js b/packages/generators/generators/src/files/js/plugin/server/services/index.js deleted file mode 100644 index 8d643e9d53..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/services/index.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -const myService = require('./my-service'); - -module.exports = { - myService, -}; diff --git a/packages/generators/generators/src/files/js/plugin/server/services/my-service.js b/packages/generators/generators/src/files/js/plugin/server/services/my-service.js deleted file mode 100644 index f565002462..0000000000 --- a/packages/generators/generators/src/files/js/plugin/server/services/my-service.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -module.exports = ({ strapi }) => ({ - getWelcomeMessage() { - return 'Welcome to Strapi 🚀'; - }, -}); diff --git a/packages/generators/generators/src/files/js/plugin/strapi-admin.js b/packages/generators/generators/src/files/js/plugin/strapi-admin.js deleted file mode 100644 index 2d1a3d93ac..0000000000 --- a/packages/generators/generators/src/files/js/plugin/strapi-admin.js +++ /dev/null @@ -1,3 +0,0 @@ -'use strict'; - -module.exports = require('./admin/src').default; diff --git a/packages/generators/generators/src/files/js/plugin/strapi-server.js b/packages/generators/generators/src/files/js/plugin/strapi-server.js deleted file mode 100644 index 8a908be91d..0000000000 --- a/packages/generators/generators/src/files/js/plugin/strapi-server.js +++ /dev/null @@ -1,3 +0,0 @@ -'use strict'; - -module.exports = require('./server'); diff --git a/packages/generators/generators/src/files/ts/plugin/.gitattributes b/packages/generators/generators/src/files/ts/plugin/.gitattributes deleted file mode 100644 index 065a11c71d..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/.gitattributes +++ /dev/null @@ -1,103 +0,0 @@ -# From https://github.com/Danimoth/gitattributes/blob/master/Web.gitattributes - -# Handle line endings automatically for files detected as text -# and leave all files detected as binary untouched. -* text=auto - -# -# The above will handle all files NOT found below -# - -# -## These files are text and should be normalized (Convert crlf => lf) -# - -# source code -*.php text -*.css text -*.sass text -*.scss text -*.less text -*.styl text -*.js text eol=lf -*.coffee text -*.json text -*.htm text -*.html text -*.xml text -*.svg text -*.txt text -*.ini text -*.inc text -*.pl text -*.rb text -*.py text -*.scm text -*.sql text -*.sh text -*.bat text - -# templates -*.ejs text -*.hbt text -*.jade text -*.haml text -*.hbs text -*.dot text -*.tmpl text -*.phtml text - -# git config -.gitattributes text -.gitignore text -.gitconfig text - -# code analysis config -.jshintrc text -.jscsrc text -.jshintignore text -.csslintrc text - -# misc config -*.yaml text -*.yml text -.editorconfig text - -# build config -*.npmignore text -*.bowerrc text - -# Heroku -Procfile text -.slugignore text - -# Documentation -*.md text -LICENSE text -AUTHORS text - - -# -## These files are binary and should be left untouched -# - -# (binary is a macro for -text -diff) -*.png binary -*.jpg binary -*.jpeg binary -*.gif binary -*.ico binary -*.mov binary -*.mp4 binary -*.mp3 binary -*.flv binary -*.fla binary -*.swf binary -*.gz binary -*.zip binary -*.7z binary -*.ttf binary -*.eot binary -*.woff binary -*.pyc binary -*.pdf binary diff --git a/packages/generators/generators/src/files/ts/plugin/.gitignore b/packages/generators/generators/src/files/ts/plugin/.gitignore deleted file mode 100644 index afe256bf30..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/.gitignore +++ /dev/null @@ -1,10 +0,0 @@ -# Don't check auto-generated stuff into git -coverage -node_modules -stats.json -package-lock.json - -# Cruft -.DS_Store -npm-debug.log -.idea diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/components/Initializer/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/components/Initializer/index.tsx deleted file mode 100644 index efa7752ac0..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/components/Initializer/index.tsx +++ /dev/null @@ -1,24 +0,0 @@ -/** - * - * Initializer - * - */ - -import { useEffect, useRef } from 'react'; -import pluginId from '../../pluginId'; - -type InitializerProps = { - setPlugin: (id: string) => void; -}; - -const Initializer = ({ setPlugin }: InitializerProps) => { - const ref = useRef(setPlugin); - - useEffect(() => { - ref.current(pluginId); - }, []); - - return null; -}; - -export default Initializer; diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/components/PluginIcon/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/components/PluginIcon/index.tsx deleted file mode 100644 index e2bb2d5922..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/components/PluginIcon/index.tsx +++ /dev/null @@ -1,12 +0,0 @@ -/** - * - * PluginIcon - * - */ - -import React from 'react'; -import { Puzzle } from '@strapi/icons'; - -const PluginIcon = () => ; - -export default PluginIcon; diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/index.tsx deleted file mode 100644 index 215d4b6073..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/index.tsx +++ /dev/null @@ -1,67 +0,0 @@ -import { prefixPluginTranslations } from './utils/prefixPluginTranslations'; - -import pluginPkg from '../../package.json'; -import pluginId from './pluginId'; -import Initializer from './components/Initializer'; -import PluginIcon from './components/PluginIcon'; - -const name = pluginPkg.strapi.name; - -export default { - register(app: any) { - app.addMenuLink({ - to: `plugins/${pluginId}`, - icon: PluginIcon, - intlLabel: { - id: `${pluginId}.plugin.name`, - defaultMessage: name, - }, - Component: async () => { - const component = await import('./pages/App'); - - return component; - }, - permissions: [ - // Uncomment to set the permissions of the plugin here - // { - // action: '', // the action name should be plugin::plugin-name.actionType - // subject: null, - // }, - ], - }); - const plugin = { - id: pluginId, - initializer: Initializer, - isReady: false, - name, - }; - - app.registerPlugin(plugin); - }, - - bootstrap(app: any) {}, - - async registerTrads(app: any) { - const { locales } = app; - - const importedTrads = await Promise.all( - (locales as any[]).map((locale) => { - return import(`./translations/${locale}.json`) - .then(({ default: data }) => { - return { - data: prefixPluginTranslations(data, pluginId), - locale, - }; - }) - .catch(() => { - return { - data: {}, - locale, - }; - }); - }) - ); - - return Promise.resolve(importedTrads); - }, -}; diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/pages/App/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/pages/App/index.tsx deleted file mode 100644 index 4cd878ad12..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/pages/App/index.tsx +++ /dev/null @@ -1,25 +0,0 @@ -/** - * - * This component is the skeleton around the actual pages, and should only - * contain code that should be seen on all pages. (e.g. navigation bar) - * - */ - -import React from 'react'; -import { Routes, Route } from 'react-router-dom'; -import { AnErrorOccurred } from '@strapi/helper-plugin'; -import pluginId from '../../pluginId'; -import HomePage from '../HomePage'; - -const App = () => { - return ( -
- - } /> - } /> - -
- ); -}; - -export default App; diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/pages/HomePage/index.tsx b/packages/generators/generators/src/files/ts/plugin/admin/src/pages/HomePage/index.tsx deleted file mode 100644 index d7aa708f9e..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/pages/HomePage/index.tsx +++ /dev/null @@ -1,19 +0,0 @@ -/* - * - * HomePage - * - */ - -import React from 'react'; -import pluginId from '../../pluginId'; - -const HomePage = () => { - return ( -
-

{pluginId}'s HomePage

-

Happy coding

-
- ); -}; - -export default HomePage; diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/pluginId.ts b/packages/generators/generators/src/files/ts/plugin/admin/src/pluginId.ts deleted file mode 100644 index 695317c0bd..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/pluginId.ts +++ /dev/null @@ -1,5 +0,0 @@ -import pluginPkg from '../../package.json'; - -const pluginId = pluginPkg.name.replace(/^(@[^-,.][\w,-]+\/|strapi-)plugin-/i, ''); - -export default pluginId; diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/translations/en.json b/packages/generators/generators/src/files/ts/plugin/admin/src/translations/en.json deleted file mode 100644 index 0967ef424b..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/translations/en.json +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/translations/fr.json b/packages/generators/generators/src/files/ts/plugin/admin/src/translations/fr.json deleted file mode 100644 index 0967ef424b..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/translations/fr.json +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/utils/getTrad.ts b/packages/generators/generators/src/files/ts/plugin/admin/src/utils/getTrad.ts deleted file mode 100644 index a539a50151..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/utils/getTrad.ts +++ /dev/null @@ -1,5 +0,0 @@ -import pluginId from '../pluginId'; - -const getTrad = (id: string) => `${pluginId}.${id}`; - -export default getTrad; diff --git a/packages/generators/generators/src/files/ts/plugin/admin/src/utils/prefixPluginTranslations.ts b/packages/generators/generators/src/files/ts/plugin/admin/src/utils/prefixPluginTranslations.ts deleted file mode 100644 index db1d7a536d..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/admin/src/utils/prefixPluginTranslations.ts +++ /dev/null @@ -1,13 +0,0 @@ -type TradOptions = Record; - -const prefixPluginTranslations = (trad: TradOptions, pluginId: string): TradOptions => { - if (!pluginId) { - throw new TypeError("pluginId can't be empty"); - } - return Object.keys(trad).reduce((acc, current) => { - acc[`${pluginId}.${current}`] = trad[current]; - return acc; - }, {} as TradOptions); -}; - -export { prefixPluginTranslations }; diff --git a/packages/generators/generators/src/files/ts/plugin/custom.d.ts b/packages/generators/generators/src/files/ts/plugin/custom.d.ts deleted file mode 100644 index 321f3c0d1a..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/custom.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -declare module '@strapi/design-system/*'; -declare module '@strapi/design-system'; -declare module '@strapi/icons'; -declare module '@strapi/icons/*'; -declare module '@strapi/helper-plugin'; diff --git a/packages/generators/generators/src/files/ts/plugin/server/bootstrap.ts b/packages/generators/generators/src/files/ts/plugin/server/bootstrap.ts deleted file mode 100644 index 7ac71a0421..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/bootstrap.ts +++ /dev/null @@ -1,5 +0,0 @@ -// import type { Core } from '@strapi/strapi'; - -export default (/* { strapi }: { strapi: Core.Strapi } */) => { - // bootstrap phase -}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/config/index.ts b/packages/generators/generators/src/files/ts/plugin/server/config/index.ts deleted file mode 100644 index d51850754c..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/config/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export default { - default: {}, - validator() {}, -}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/content-types/index.ts b/packages/generators/generators/src/files/ts/plugin/server/content-types/index.ts deleted file mode 100644 index ff8b4c5632..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/content-types/index.ts +++ /dev/null @@ -1 +0,0 @@ -export default {}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/controllers/index.ts b/packages/generators/generators/src/files/ts/plugin/server/controllers/index.ts deleted file mode 100644 index ec0ad85197..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/controllers/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import myController from './my-controller'; - -export default { - myController, -}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/controllers/my-controller.ts.hbs b/packages/generators/generators/src/files/ts/plugin/server/controllers/my-controller.ts.hbs deleted file mode 100644 index 63015633e5..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/controllers/my-controller.ts.hbs +++ /dev/null @@ -1,10 +0,0 @@ -import type { Core } from '@strapi/strapi'; - -export default ({ strapi }: { strapi: Core.Strapi }) => ({ - index(ctx) { - ctx.body = strapi - .plugin('{{ pluginName }}') - .service('myService') - .getWelcomeMessage(); - }, -}); diff --git a/packages/generators/generators/src/files/ts/plugin/server/destroy.ts b/packages/generators/generators/src/files/ts/plugin/server/destroy.ts deleted file mode 100644 index cca68bd3ec..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/destroy.ts +++ /dev/null @@ -1,5 +0,0 @@ -// import type { Core } from '@strapi/strapi'; - -export default (/* { strapi }: { strapi: Core.Strapi } */) => { - // destroy phase -}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/index.ts b/packages/generators/generators/src/files/ts/plugin/server/index.ts deleted file mode 100644 index 76e8951190..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/index.ts +++ /dev/null @@ -1,23 +0,0 @@ -import register from './register'; -import bootstrap from './bootstrap'; -import destroy from './destroy'; -import config from './config'; -import contentTypes from './content-types'; -import controllers from './controllers'; -import routes from './routes'; -import middlewares from './middlewares'; -import policies from './policies'; -import services from './services'; - -export default { - register, - bootstrap, - destroy, - config, - controllers, - routes, - services, - contentTypes, - policies, - middlewares, -}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/middlewares/index.ts b/packages/generators/generators/src/files/ts/plugin/server/middlewares/index.ts deleted file mode 100644 index ff8b4c5632..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/middlewares/index.ts +++ /dev/null @@ -1 +0,0 @@ -export default {}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/policies/index.ts b/packages/generators/generators/src/files/ts/plugin/server/policies/index.ts deleted file mode 100644 index ff8b4c5632..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/policies/index.ts +++ /dev/null @@ -1 +0,0 @@ -export default {}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/register.ts b/packages/generators/generators/src/files/ts/plugin/server/register.ts deleted file mode 100644 index f452b6612a..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/register.ts +++ /dev/null @@ -1,5 +0,0 @@ -// import type { Core } from '@strapi/strapi'; - -export default (/* { strapi }: { strapi: Core.Strapi } */) => { - // register phase -}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/routes/index.ts b/packages/generators/generators/src/files/ts/plugin/server/routes/index.ts deleted file mode 100644 index 8868a55502..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/routes/index.ts +++ /dev/null @@ -1,10 +0,0 @@ -export default [ - { - method: 'GET', - path: '/', - handler: 'myController.index', - config: { - policies: [], - }, - }, -]; diff --git a/packages/generators/generators/src/files/ts/plugin/server/services/index.ts b/packages/generators/generators/src/files/ts/plugin/server/services/index.ts deleted file mode 100644 index dcbdfe1485..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/services/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import myService from './my-service'; - -export default { - myService, -}; diff --git a/packages/generators/generators/src/files/ts/plugin/server/services/my-service.ts b/packages/generators/generators/src/files/ts/plugin/server/services/my-service.ts deleted file mode 100644 index b724667783..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/server/services/my-service.ts +++ /dev/null @@ -1,7 +0,0 @@ -// import type { Core } from '@strapi/strapi'; - -export default (/* { strapi }: { strapi: Core.Strapi } */) => ({ - getWelcomeMessage() { - return 'Welcome to Strapi 🚀'; - }, -}); diff --git a/packages/generators/generators/src/files/ts/plugin/strapi-admin.js b/packages/generators/generators/src/files/ts/plugin/strapi-admin.js deleted file mode 100644 index 2d1a3d93ac..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/strapi-admin.js +++ /dev/null @@ -1,3 +0,0 @@ -'use strict'; - -module.exports = require('./admin/src').default; diff --git a/packages/generators/generators/src/files/ts/plugin/strapi-server.js b/packages/generators/generators/src/files/ts/plugin/strapi-server.js deleted file mode 100644 index bf55958861..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/strapi-server.js +++ /dev/null @@ -1,3 +0,0 @@ -'use strict'; - -module.exports = require('./dist/server'); diff --git a/packages/generators/generators/src/files/ts/plugin/tsconfig.json b/packages/generators/generators/src/files/ts/plugin/tsconfig.json deleted file mode 100644 index 633f62e13d..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "extends": "@strapi/typescript-utils/tsconfigs/admin", - - "compilerOptions": { - "target": "ESNext", - "strict": true - }, - - "include": ["admin", "custom.d.ts"], - - "exclude": [ - "node_modules/", - "dist/", - - // Do not include server files in the server compilation - "server/", - // Do not include test files - "**/*.test.ts" - ] -} diff --git a/packages/generators/generators/src/files/ts/plugin/tsconfig.server.json b/packages/generators/generators/src/files/ts/plugin/tsconfig.server.json deleted file mode 100644 index c4e84576ab..0000000000 --- a/packages/generators/generators/src/files/ts/plugin/tsconfig.server.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "extends": "@strapi/typescript-utils/tsconfigs/server", - - "compilerOptions": { - "outDir": "dist", - "rootDir": "." - }, - - "include": [ - // Include the root directory - "server", - // Force the JSON files in the src folder to be included - "server/**/*.json" - ], - - "exclude": [ - "node_modules/", - "dist/", - - // Do not include admin files in the server compilation - "admin/", - // Do not include test files - "**/*.test.ts" - ] -} diff --git a/packages/generators/generators/src/plopfile.ts b/packages/generators/generators/src/plopfile.ts index 0d3d5c5bfb..fd50d8bc90 100644 --- a/packages/generators/generators/src/plopfile.ts +++ b/packages/generators/generators/src/plopfile.ts @@ -4,7 +4,6 @@ import { NodePlopAPI } from 'plop'; import generateApi from './plops/api'; import generateController from './plops/controller'; import generateContentType from './plops/content-type'; -import generatePlugin from './plops/plugin'; import generatePolicy from './plops/policy'; import generateMiddleware from './plops/middleware'; import generateMigration from './plops/migration'; @@ -19,7 +18,6 @@ export default (plop: NodePlopAPI) => { generateApi(plop); generateController(plop); generateContentType(plop); - generatePlugin(plop); generatePolicy(plop); generateMiddleware(plop); generateMigration(plop); diff --git a/packages/generators/generators/src/plops/plugin.ts b/packages/generators/generators/src/plops/plugin.ts deleted file mode 100644 index c0d5c00bc4..0000000000 --- a/packages/generators/generators/src/plops/plugin.ts +++ /dev/null @@ -1,98 +0,0 @@ -import { NodePlopAPI } from 'plop'; -import chalk from 'chalk'; -import tsUtils from '@strapi/typescript-utils'; -import { strings } from '@strapi/utils'; - -import validateInput from './utils/validate-input'; - -const LANGUAGES = { - javascript: 'JavaScript', - typescript: 'TypeScript', -}; - -const logInstructions = (pluginName: string, { language }: { language: string }) => { - const maxLength = ` resolve: './src/plugins/${pluginName}'`.length; - const separator = Array(maxLength).fill('─').join(''); - - const exportInstruction = language === 'js' ? 'module.exports =' : 'export default'; - - return ` -You can now enable your plugin by adding the following in ${chalk.yellow( - `./config/plugins.${language}` - )} -${separator} -${exportInstruction} { - ${chalk.gray('// ...')} - ${chalk.green(`'${pluginName}'`)}: { - enabled: ${chalk.yellow(true)}, - resolve: ${chalk.yellow(`'./src/plugins/${pluginName}'`)} - }, - ${chalk.gray('// ...')} -} -${separator} -`; -}; - -export default (plop: NodePlopAPI) => { - // Plugin generator - plop.setGenerator('plugin', { - description: 'Generate a basic plugin', - prompts: [ - { - type: 'input', - name: 'pluginName', - message: 'Plugin name', - validate: (input) => validateInput(input), - }, - { - type: 'list', - name: 'language', - message: 'Choose your preferred language', - choices: Object.values(LANGUAGES), - default: LANGUAGES.javascript, - }, - ], - actions(answers) { - if (!answers) { - return []; - } - - const isTypescript = answers.language === LANGUAGES.typescript; - const language = isTypescript ? 'ts' : 'js'; - const projectLanguage = tsUtils.isUsingTypeScriptSync(process.cwd()) ? 'ts' : 'js'; - - if (!strings.isKebabCase(answers.pluginName)) { - answers.pluginName = strings.toKebabCase(answers.pluginName); - console.log( - chalk.yellow( - `Strapi only supports kebab-cased names for plugins.\nYour plugin has been automatically renamed to "${answers.pluginName}".` - ) - ); - } - - return [ - { - type: 'addMany', - destination: 'plugins/{{ pluginName }}', - base: `files/${language}/plugin`, - templateFiles: `files/${language}/plugin/**`, - }, - { - type: 'add', - path: 'plugins/{{ pluginName }}/README.md', - templateFile: `templates/${language}/README.md.hbs`, - }, - { - type: 'add', - path: 'plugins/{{ pluginName }}/package.json', - templateFile: `templates/${language}/plugin-package.json.hbs`, - }, - () => - plop.renderString( - logInstructions(answers.pluginName, { language: projectLanguage }), - null - ), - ]; - }, - }); -}; diff --git a/packages/generators/generators/src/templates/js/README.md.hbs b/packages/generators/generators/src/templates/js/README.md.hbs deleted file mode 100644 index de1315dd14..0000000000 --- a/packages/generators/generators/src/templates/js/README.md.hbs +++ /dev/null @@ -1,3 +0,0 @@ -# Strapi plugin {{ pluginName }} - -A quick description of {{ pluginName }}. diff --git a/packages/generators/generators/src/templates/js/plugin-package.json.hbs b/packages/generators/generators/src/templates/js/plugin-package.json.hbs deleted file mode 100644 index 3ac066c3a0..0000000000 --- a/packages/generators/generators/src/templates/js/plugin-package.json.hbs +++ /dev/null @@ -1,42 +0,0 @@ -{ - "name": "{{ pluginName }}", - "version": "0.0.0", - "description": "This is the description of the plugin.", - "strapi": { - "name": "{{ pluginName }}", - "description": "Description of {{titleCase pluginName }} plugin", - "kind": "plugin", - "displayName": "{{titleCase pluginName }}" - }, - "dependencies": { - "@strapi/design-system": "^1.6.3", - "@strapi/helper-plugin": "^4.6.0", - "@strapi/icons": "^1.6.3", - "prop-types": "^15.7.2" - }, - "devDependencies": { - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-router-dom": "^6.0.0", - "styled-components": "^5.3.6" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0", - "react-router-dom": "^6.0.0", - "styled-components": "^5.2.1" - }, - "author": { - "name": "A Strapi developer" - }, - "maintainers": [ - { - "name": "A Strapi developer" - } - ], - "engines": { - "node": ">=18.0.0 <=20.x.x", - "npm": ">=6.0.0" - }, - "license": "MIT" -} diff --git a/packages/generators/generators/src/templates/ts/README.md.hbs b/packages/generators/generators/src/templates/ts/README.md.hbs deleted file mode 100644 index de1315dd14..0000000000 --- a/packages/generators/generators/src/templates/ts/README.md.hbs +++ /dev/null @@ -1,3 +0,0 @@ -# Strapi plugin {{ pluginName }} - -A quick description of {{ pluginName }}. diff --git a/packages/generators/generators/src/templates/ts/plugin-package.json.hbs b/packages/generators/generators/src/templates/ts/plugin-package.json.hbs deleted file mode 100644 index 0818dfd5d6..0000000000 --- a/packages/generators/generators/src/templates/ts/plugin-package.json.hbs +++ /dev/null @@ -1,49 +0,0 @@ -{ - "name": "{{ pluginName }}", - "version": "0.0.0", - "description": "This is the description of the plugin.", - "strapi": { - "name": "{{ pluginName }}", - "description": "Description of {{ pluginName }} plugin", - "kind": "plugin" - }, - "dependencies": { - "@strapi/design-system": "^1.6.3", - "@strapi/helper-plugin": "^4.6.0", - "@strapi/icons": "^1.6.3", - }, - "devDependencies": { - "@strapi/typescript-utils": "^4.6.0", - "@types/react": "^18.0.0", - "@types/react-dom": "^18.0.0", - "@types/styled-components": "^5.1.26", - "react": "^18.0.0", - "react-dom": "^18.0.0", - "react-router-dom": "^6.0.0", - "styled-components": "^5.3.6", - "typescript": "5.0.4" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0", - "react-router-dom": "^6.0.0", - "styled-components": "^5.2.1" - }, - "author": { - "name": "A Strapi developer" - }, - "maintainers": [ - { - "name": "A Strapi developer" - } - ], - "engines": { - "node": ">=18.0.0 <=20.x.x", - "npm": ">=6.0.0" - }, - "scripts": { - "develop": "tsc -p tsconfig.server.json -w", - "build": "tsc -p tsconfig.server.json" - }, - "license": "MIT" -}