@strapi/generators 5.49.0 → 5.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,MAAM,qBAiBlB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAUF,eAAO,MAAM,QAAQ,iDACJ,MAAM,WACZ,CAAC,sBACyC,eAAe;;EAkDnE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,MAAM,qBAiBlB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAUF,eAAO,MAAM,QAAQ,GAAU,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC1D,eAAe,MAAM,EACrB,SAAS,CAAC,EACV,oBAAmD,eAAoB;;EAkDxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plopfile.d.ts","sourceRoot":"","sources":["../src/plopfile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;+BAUlB,WAAW;AAAjC,wBAaE"}
1
+ {"version":3,"file":"plopfile.d.ts","sourceRoot":"","sources":["../src/plopfile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;yBAUxB,MAAM,WAAW;AAAjC,wBAaE"}
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/plops/api.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;+BAQ9B,WAAW;AAAjC,wBAkJE"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/plops/api.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;yBAQpC,MAAM,WAAW;AAAjC,wBAkJE"}
package/dist/plops/api.js CHANGED
@@ -54,7 +54,7 @@ var generateApi = ((plop)=>{
54
54
  if (!answers) {
55
55
  return [];
56
56
  }
57
- const filePath = getFilePath(answers.destination || (answers.isPluginApi && answers.plugin ? 'plugin' : 'api'));
57
+ const filePath = getFilePath(answers.destination || (answers.isPluginApi && answers.plugin ? 'plugin' : 'new'));
58
58
  const currentDir = process.cwd();
59
59
  let language = tsUtils__default.default.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';
60
60
  if (answers.plugin) {
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sources":["../../src/plops/api.ts"],"sourcesContent":["import { join } from 'path';\nimport type { ActionType, NodePlopAPI } from 'plop';\nimport fs from 'fs-extra';\nimport tsUtils from '@strapi/typescript-utils';\n\nimport validateInput from './utils/validate-input';\nimport getFilePath from './utils/get-file-path';\nimport { appendToFile } from './utils/extend-plugin-index-files';\n\nexport default (plop: NodePlopAPI) => {\n // API generator\n plop.setGenerator('api', {\n description: 'Generate a basic API',\n prompts: [\n {\n type: 'input',\n name: 'id',\n message: 'API name',\n validate: (input) => validateInput(input),\n },\n {\n type: 'confirm',\n name: 'isPluginApi',\n message: 'Is this API for a plugin?',\n },\n {\n when: (answers) => answers.isPluginApi,\n type: 'list',\n name: 'plugin',\n message: 'Plugin name',\n async choices() {\n const pluginsPath = join(plop.getDestBasePath(), 'plugins');\n const exists = await fs.pathExists(pluginsPath);\n if (!exists) {\n throw Error('Couldn\\'t find a \"plugins\" directory');\n }\n\n const pluginsDir = await fs.readdir(pluginsPath, { withFileTypes: true });\n const pluginsDirContent = pluginsDir.filter((fd) => fd.isDirectory());\n\n if (pluginsDirContent.length === 0) {\n throw Error('The \"plugins\" directory is empty');\n }\n\n return pluginsDirContent;\n },\n },\n ],\n actions(answers) {\n if (!answers) {\n return [];\n }\n\n const filePath = getFilePath(\n answers.destination || (answers.isPluginApi && answers.plugin ? 'plugin' : 'api')\n );\n const currentDir = process.cwd();\n let language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';\n\n if (answers.plugin) {\n // The tsconfig in plugins is located just outside the server src, not in the root of the plugin.\n const pluginServerDir = join(\n currentDir,\n 'src',\n filePath.replace('{{ plugin }}', answers.plugin),\n '../'\n );\n language = tsUtils.isUsingTypeScriptSync(pluginServerDir) ? 'ts' : 'js';\n }\n\n const baseActions: Array<ActionType> = [\n {\n type: 'add',\n path: `${filePath}/controllers/{{ id }}.${language}`,\n templateFile: `templates/${language}/controller.${language}.hbs`,\n },\n {\n type: 'add',\n path: `${filePath}/services/{{ id }}.${language}`,\n templateFile: `templates/${language}/service.${language}.hbs`,\n },\n {\n type: 'add',\n path: `${filePath}/routes/${answers.plugin ? 'content-api/' : ''}{{ id }}.${language}`,\n templateFile: `templates/${language}/single-route.${language}.hbs`,\n },\n ];\n\n if (answers.isPluginApi) {\n const indexFiles = ['controllers', 'services', 'routes'];\n\n indexFiles.forEach((type) => {\n const indexPath = join(plop.getDestBasePath(), `${filePath}/${type}/index.${language}`);\n const exists = fs.existsSync(indexPath);\n\n if (!exists && type !== 'routes') {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.index.${language}.hbs`,\n skipIfExists: true,\n });\n }\n\n if (type === 'routes') {\n const indexPath = join(plop.getDestBasePath(), `${filePath}/${type}/index.${language}`);\n const exists = fs.existsSync(indexPath);\n\n if (!exists) {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.routes.index.${language}.hbs`,\n skipIfExists: true,\n });\n }\n\n const routeIndexFiles = ['content-api', 'admin'];\n\n routeIndexFiles.forEach((routeType) => {\n const routeTypeIndexPath = join(\n plop.getDestBasePath(),\n `${filePath}/${type}/${routeType}/index.${language}`\n );\n const routeTypeExists = fs.existsSync(routeTypeIndexPath);\n\n if (!routeTypeExists) {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/${routeType}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.routes.type.index.${language}.hbs`,\n data: { type: routeType },\n skipIfExists: true,\n });\n }\n });\n }\n\n baseActions.push({\n type: 'modify',\n path: `${filePath}/${type}/${type === 'routes' ? 'content-api/' : ''}index.${language}`,\n transform(template: string) {\n if (type === 'routes') {\n return appendToFile(template, { type: 'routes', singularName: answers.id });\n }\n\n return appendToFile(template, { type: 'index', singularName: answers.id });\n },\n });\n });\n }\n\n return baseActions;\n },\n });\n};\n"],"names":["plop","setGenerator","description","prompts","type","name","message","validate","input","validateInput","when","answers","isPluginApi","choices","pluginsPath","join","getDestBasePath","exists","fs","pathExists","Error","pluginsDir","readdir","withFileTypes","pluginsDirContent","filter","fd","isDirectory","length","actions","filePath","getFilePath","destination","plugin","currentDir","process","cwd","language","tsUtils","isUsingTypeScriptSync","pluginServerDir","replace","baseActions","path","templateFile","indexFiles","forEach","indexPath","existsSync","push","skipIfExists","routeIndexFiles","routeType","routeTypeIndexPath","routeTypeExists","data","transform","template","appendToFile","singularName","id"],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sources":["../../src/plops/api.ts"],"sourcesContent":["import { join } from 'path';\nimport type { ActionType, NodePlopAPI } from 'plop';\nimport fs from 'fs-extra';\nimport tsUtils from '@strapi/typescript-utils';\n\nimport validateInput from './utils/validate-input';\nimport getFilePath from './utils/get-file-path';\nimport { appendToFile } from './utils/extend-plugin-index-files';\n\nexport default (plop: NodePlopAPI) => {\n // API generator\n plop.setGenerator('api', {\n description: 'Generate a basic API',\n prompts: [\n {\n type: 'input',\n name: 'id',\n message: 'API name',\n validate: (input) => validateInput(input),\n },\n {\n type: 'confirm',\n name: 'isPluginApi',\n message: 'Is this API for a plugin?',\n },\n {\n when: (answers) => answers.isPluginApi,\n type: 'list',\n name: 'plugin',\n message: 'Plugin name',\n async choices() {\n const pluginsPath = join(plop.getDestBasePath(), 'plugins');\n const exists = await fs.pathExists(pluginsPath);\n if (!exists) {\n throw Error('Couldn\\'t find a \"plugins\" directory');\n }\n\n const pluginsDir = await fs.readdir(pluginsPath, { withFileTypes: true });\n const pluginsDirContent = pluginsDir.filter((fd) => fd.isDirectory());\n\n if (pluginsDirContent.length === 0) {\n throw Error('The \"plugins\" directory is empty');\n }\n\n return pluginsDirContent;\n },\n },\n ],\n actions(answers) {\n if (!answers) {\n return [];\n }\n\n const filePath = getFilePath(\n answers.destination || (answers.isPluginApi && answers.plugin ? 'plugin' : 'new')\n );\n const currentDir = process.cwd();\n let language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';\n\n if (answers.plugin) {\n // The tsconfig in plugins is located just outside the server src, not in the root of the plugin.\n const pluginServerDir = join(\n currentDir,\n 'src',\n filePath.replace('{{ plugin }}', answers.plugin),\n '../'\n );\n language = tsUtils.isUsingTypeScriptSync(pluginServerDir) ? 'ts' : 'js';\n }\n\n const baseActions: Array<ActionType> = [\n {\n type: 'add',\n path: `${filePath}/controllers/{{ id }}.${language}`,\n templateFile: `templates/${language}/controller.${language}.hbs`,\n },\n {\n type: 'add',\n path: `${filePath}/services/{{ id }}.${language}`,\n templateFile: `templates/${language}/service.${language}.hbs`,\n },\n {\n type: 'add',\n path: `${filePath}/routes/${answers.plugin ? 'content-api/' : ''}{{ id }}.${language}`,\n templateFile: `templates/${language}/single-route.${language}.hbs`,\n },\n ];\n\n if (answers.isPluginApi) {\n const indexFiles = ['controllers', 'services', 'routes'];\n\n indexFiles.forEach((type) => {\n const indexPath = join(plop.getDestBasePath(), `${filePath}/${type}/index.${language}`);\n const exists = fs.existsSync(indexPath);\n\n if (!exists && type !== 'routes') {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.index.${language}.hbs`,\n skipIfExists: true,\n });\n }\n\n if (type === 'routes') {\n const indexPath = join(plop.getDestBasePath(), `${filePath}/${type}/index.${language}`);\n const exists = fs.existsSync(indexPath);\n\n if (!exists) {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.routes.index.${language}.hbs`,\n skipIfExists: true,\n });\n }\n\n const routeIndexFiles = ['content-api', 'admin'];\n\n routeIndexFiles.forEach((routeType) => {\n const routeTypeIndexPath = join(\n plop.getDestBasePath(),\n `${filePath}/${type}/${routeType}/index.${language}`\n );\n const routeTypeExists = fs.existsSync(routeTypeIndexPath);\n\n if (!routeTypeExists) {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/${routeType}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.routes.type.index.${language}.hbs`,\n data: { type: routeType },\n skipIfExists: true,\n });\n }\n });\n }\n\n baseActions.push({\n type: 'modify',\n path: `${filePath}/${type}/${type === 'routes' ? 'content-api/' : ''}index.${language}`,\n transform(template: string) {\n if (type === 'routes') {\n return appendToFile(template, { type: 'routes', singularName: answers.id });\n }\n\n return appendToFile(template, { type: 'index', singularName: answers.id });\n },\n });\n });\n }\n\n return baseActions;\n },\n });\n};\n"],"names":["plop","setGenerator","description","prompts","type","name","message","validate","input","validateInput","when","answers","isPluginApi","choices","pluginsPath","join","getDestBasePath","exists","fs","pathExists","Error","pluginsDir","readdir","withFileTypes","pluginsDirContent","filter","fd","isDirectory","length","actions","filePath","getFilePath","destination","plugin","currentDir","process","cwd","language","tsUtils","isUsingTypeScriptSync","pluginServerDir","replace","baseActions","path","templateFile","indexFiles","forEach","indexPath","existsSync","push","skipIfExists","routeIndexFiles","routeType","routeTypeIndexPath","routeTypeExists","data","transform","template","appendToFile","singularName","id"],"mappings":"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"}
@@ -47,7 +47,7 @@ var generateApi = ((plop)=>{
47
47
  if (!answers) {
48
48
  return [];
49
49
  }
50
- const filePath = getFilePath(answers.destination || (answers.isPluginApi && answers.plugin ? 'plugin' : 'api'));
50
+ const filePath = getFilePath(answers.destination || (answers.isPluginApi && answers.plugin ? 'plugin' : 'new'));
51
51
  const currentDir = process.cwd();
52
52
  let language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';
53
53
  if (answers.plugin) {
@@ -1 +1 @@
1
- {"version":3,"file":"api.mjs","sources":["../../src/plops/api.ts"],"sourcesContent":["import { join } from 'path';\nimport type { ActionType, NodePlopAPI } from 'plop';\nimport fs from 'fs-extra';\nimport tsUtils from '@strapi/typescript-utils';\n\nimport validateInput from './utils/validate-input';\nimport getFilePath from './utils/get-file-path';\nimport { appendToFile } from './utils/extend-plugin-index-files';\n\nexport default (plop: NodePlopAPI) => {\n // API generator\n plop.setGenerator('api', {\n description: 'Generate a basic API',\n prompts: [\n {\n type: 'input',\n name: 'id',\n message: 'API name',\n validate: (input) => validateInput(input),\n },\n {\n type: 'confirm',\n name: 'isPluginApi',\n message: 'Is this API for a plugin?',\n },\n {\n when: (answers) => answers.isPluginApi,\n type: 'list',\n name: 'plugin',\n message: 'Plugin name',\n async choices() {\n const pluginsPath = join(plop.getDestBasePath(), 'plugins');\n const exists = await fs.pathExists(pluginsPath);\n if (!exists) {\n throw Error('Couldn\\'t find a \"plugins\" directory');\n }\n\n const pluginsDir = await fs.readdir(pluginsPath, { withFileTypes: true });\n const pluginsDirContent = pluginsDir.filter((fd) => fd.isDirectory());\n\n if (pluginsDirContent.length === 0) {\n throw Error('The \"plugins\" directory is empty');\n }\n\n return pluginsDirContent;\n },\n },\n ],\n actions(answers) {\n if (!answers) {\n return [];\n }\n\n const filePath = getFilePath(\n answers.destination || (answers.isPluginApi && answers.plugin ? 'plugin' : 'api')\n );\n const currentDir = process.cwd();\n let language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';\n\n if (answers.plugin) {\n // The tsconfig in plugins is located just outside the server src, not in the root of the plugin.\n const pluginServerDir = join(\n currentDir,\n 'src',\n filePath.replace('{{ plugin }}', answers.plugin),\n '../'\n );\n language = tsUtils.isUsingTypeScriptSync(pluginServerDir) ? 'ts' : 'js';\n }\n\n const baseActions: Array<ActionType> = [\n {\n type: 'add',\n path: `${filePath}/controllers/{{ id }}.${language}`,\n templateFile: `templates/${language}/controller.${language}.hbs`,\n },\n {\n type: 'add',\n path: `${filePath}/services/{{ id }}.${language}`,\n templateFile: `templates/${language}/service.${language}.hbs`,\n },\n {\n type: 'add',\n path: `${filePath}/routes/${answers.plugin ? 'content-api/' : ''}{{ id }}.${language}`,\n templateFile: `templates/${language}/single-route.${language}.hbs`,\n },\n ];\n\n if (answers.isPluginApi) {\n const indexFiles = ['controllers', 'services', 'routes'];\n\n indexFiles.forEach((type) => {\n const indexPath = join(plop.getDestBasePath(), `${filePath}/${type}/index.${language}`);\n const exists = fs.existsSync(indexPath);\n\n if (!exists && type !== 'routes') {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.index.${language}.hbs`,\n skipIfExists: true,\n });\n }\n\n if (type === 'routes') {\n const indexPath = join(plop.getDestBasePath(), `${filePath}/${type}/index.${language}`);\n const exists = fs.existsSync(indexPath);\n\n if (!exists) {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.routes.index.${language}.hbs`,\n skipIfExists: true,\n });\n }\n\n const routeIndexFiles = ['content-api', 'admin'];\n\n routeIndexFiles.forEach((routeType) => {\n const routeTypeIndexPath = join(\n plop.getDestBasePath(),\n `${filePath}/${type}/${routeType}/index.${language}`\n );\n const routeTypeExists = fs.existsSync(routeTypeIndexPath);\n\n if (!routeTypeExists) {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/${routeType}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.routes.type.index.${language}.hbs`,\n data: { type: routeType },\n skipIfExists: true,\n });\n }\n });\n }\n\n baseActions.push({\n type: 'modify',\n path: `${filePath}/${type}/${type === 'routes' ? 'content-api/' : ''}index.${language}`,\n transform(template: string) {\n if (type === 'routes') {\n return appendToFile(template, { type: 'routes', singularName: answers.id });\n }\n\n return appendToFile(template, { type: 'index', singularName: answers.id });\n },\n });\n });\n }\n\n return baseActions;\n },\n });\n};\n"],"names":["plop","setGenerator","description","prompts","type","name","message","validate","input","validateInput","when","answers","isPluginApi","choices","pluginsPath","join","getDestBasePath","exists","fs","pathExists","Error","pluginsDir","readdir","withFileTypes","pluginsDirContent","filter","fd","isDirectory","length","actions","filePath","getFilePath","destination","plugin","currentDir","process","cwd","language","tsUtils","isUsingTypeScriptSync","pluginServerDir","replace","baseActions","path","templateFile","indexFiles","forEach","indexPath","existsSync","push","skipIfExists","routeIndexFiles","routeType","routeTypeIndexPath","routeTypeExists","data","transform","template","appendToFile","singularName","id"],"mappings":"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"}
1
+ {"version":3,"file":"api.mjs","sources":["../../src/plops/api.ts"],"sourcesContent":["import { join } from 'path';\nimport type { ActionType, NodePlopAPI } from 'plop';\nimport fs from 'fs-extra';\nimport tsUtils from '@strapi/typescript-utils';\n\nimport validateInput from './utils/validate-input';\nimport getFilePath from './utils/get-file-path';\nimport { appendToFile } from './utils/extend-plugin-index-files';\n\nexport default (plop: NodePlopAPI) => {\n // API generator\n plop.setGenerator('api', {\n description: 'Generate a basic API',\n prompts: [\n {\n type: 'input',\n name: 'id',\n message: 'API name',\n validate: (input) => validateInput(input),\n },\n {\n type: 'confirm',\n name: 'isPluginApi',\n message: 'Is this API for a plugin?',\n },\n {\n when: (answers) => answers.isPluginApi,\n type: 'list',\n name: 'plugin',\n message: 'Plugin name',\n async choices() {\n const pluginsPath = join(plop.getDestBasePath(), 'plugins');\n const exists = await fs.pathExists(pluginsPath);\n if (!exists) {\n throw Error('Couldn\\'t find a \"plugins\" directory');\n }\n\n const pluginsDir = await fs.readdir(pluginsPath, { withFileTypes: true });\n const pluginsDirContent = pluginsDir.filter((fd) => fd.isDirectory());\n\n if (pluginsDirContent.length === 0) {\n throw Error('The \"plugins\" directory is empty');\n }\n\n return pluginsDirContent;\n },\n },\n ],\n actions(answers) {\n if (!answers) {\n return [];\n }\n\n const filePath = getFilePath(\n answers.destination || (answers.isPluginApi && answers.plugin ? 'plugin' : 'new')\n );\n const currentDir = process.cwd();\n let language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';\n\n if (answers.plugin) {\n // The tsconfig in plugins is located just outside the server src, not in the root of the plugin.\n const pluginServerDir = join(\n currentDir,\n 'src',\n filePath.replace('{{ plugin }}', answers.plugin),\n '../'\n );\n language = tsUtils.isUsingTypeScriptSync(pluginServerDir) ? 'ts' : 'js';\n }\n\n const baseActions: Array<ActionType> = [\n {\n type: 'add',\n path: `${filePath}/controllers/{{ id }}.${language}`,\n templateFile: `templates/${language}/controller.${language}.hbs`,\n },\n {\n type: 'add',\n path: `${filePath}/services/{{ id }}.${language}`,\n templateFile: `templates/${language}/service.${language}.hbs`,\n },\n {\n type: 'add',\n path: `${filePath}/routes/${answers.plugin ? 'content-api/' : ''}{{ id }}.${language}`,\n templateFile: `templates/${language}/single-route.${language}.hbs`,\n },\n ];\n\n if (answers.isPluginApi) {\n const indexFiles = ['controllers', 'services', 'routes'];\n\n indexFiles.forEach((type) => {\n const indexPath = join(plop.getDestBasePath(), `${filePath}/${type}/index.${language}`);\n const exists = fs.existsSync(indexPath);\n\n if (!exists && type !== 'routes') {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.index.${language}.hbs`,\n skipIfExists: true,\n });\n }\n\n if (type === 'routes') {\n const indexPath = join(plop.getDestBasePath(), `${filePath}/${type}/index.${language}`);\n const exists = fs.existsSync(indexPath);\n\n if (!exists) {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.routes.index.${language}.hbs`,\n skipIfExists: true,\n });\n }\n\n const routeIndexFiles = ['content-api', 'admin'];\n\n routeIndexFiles.forEach((routeType) => {\n const routeTypeIndexPath = join(\n plop.getDestBasePath(),\n `${filePath}/${type}/${routeType}/index.${language}`\n );\n const routeTypeExists = fs.existsSync(routeTypeIndexPath);\n\n if (!routeTypeExists) {\n baseActions.push({\n type: 'add',\n path: `${filePath}/${type}/${routeType}/index.${language}`,\n templateFile: `templates/${language}/plugin/plugin.routes.type.index.${language}.hbs`,\n data: { type: routeType },\n skipIfExists: true,\n });\n }\n });\n }\n\n baseActions.push({\n type: 'modify',\n path: `${filePath}/${type}/${type === 'routes' ? 'content-api/' : ''}index.${language}`,\n transform(template: string) {\n if (type === 'routes') {\n return appendToFile(template, { type: 'routes', singularName: answers.id });\n }\n\n return appendToFile(template, { type: 'index', singularName: answers.id });\n },\n });\n });\n }\n\n return baseActions;\n },\n });\n};\n"],"names":["plop","setGenerator","description","prompts","type","name","message","validate","input","validateInput","when","answers","isPluginApi","choices","pluginsPath","join","getDestBasePath","exists","fs","pathExists","Error","pluginsDir","readdir","withFileTypes","pluginsDirContent","filter","fd","isDirectory","length","actions","filePath","getFilePath","destination","plugin","currentDir","process","cwd","language","tsUtils","isUsingTypeScriptSync","pluginServerDir","replace","baseActions","path","templateFile","indexFiles","forEach","indexPath","existsSync","push","skipIfExists","routeIndexFiles","routeType","routeTypeIndexPath","routeTypeExists","data","transform","template","appendToFile","singularName","id"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"content-type.d.ts","sourceRoot":"","sources":["../../src/plops/content-type.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,MAAM,CAAC;+BAc9B,WAAW;AAAjC,wBAqPE"}
1
+ {"version":3,"file":"content-type.d.ts","sourceRoot":"","sources":["../../src/plops/content-type.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,MAAM,CAAC;yBAcpC,MAAM,WAAW;AAAjC,wBAqPE"}
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/plops/controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;+BAU9B,WAAW;AAAjC,wBAoEE"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/plops/controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;yBAUpC,MAAM,WAAW;AAAjC,wBAoEE"}
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/plops/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;+BAU9B,WAAW;AAAjC,wBAoEE"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../src/plops/middleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;yBAUpC,MAAM,WAAW;AAAjC,wBAoEE"}
@@ -1 +1 @@
1
- {"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../src/plops/migration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;+BAKlB,WAAW;AAAjC,wBA0BE"}
1
+ {"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../src/plops/migration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;yBAKxB,MAAM,WAAW;AAAjC,wBA0BE"}
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/plops/policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;+BAU9B,WAAW;AAAjC,wBAoEE"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/plops/policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;yBAUpC,MAAM,WAAW;AAAjC,wBAoEE"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-attributes-prompts.d.ts","sourceRoot":"","sources":["../../../src/plops/prompts/get-attributes-prompts.ts"],"names":[],"mappings":"AAEA,UAAU,eAAe;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,QAAA,MAAM,aAAa,+LAqBT,CAAC;AAEX,QAAA,MAAM,oBAAoB,aAAoB,GAAG,+BAyEhD,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"get-attributes-prompts.d.ts","sourceRoot":"","sources":["../../../src/plops/prompts/get-attributes-prompts.ts"],"names":[],"mappings":"AAEA,UAAU,eAAe;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,QAAA,MAAM,aAAa,+LAqBT,CAAC;AAEX,QAAA,MAAM,oBAAoB,GAAU,UAAU,GAAG,+BAyEhD,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import fs from 'fs-extra';
3
2
  declare const _default: (action: string, basePath: string, { rootFolder }?: {
4
3
  rootFolder?: boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"get-destination-prompts.d.ts","sourceRoot":"","sources":["../../../src/plops/prompts/get-destination-prompts.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,UAAU,CAAC;iCAEF,MAAM,YAAY,MAAM;;;;;;;;;;;;oBAyB1B,GAAG;;;;;;oBAuBH,GAAG;;;;;;AAhDzB,wBAyEE"}
1
+ {"version":3,"file":"get-destination-prompts.d.ts","sourceRoot":"","sources":["../../../src/plops/prompts/get-destination-prompts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,UAAU,CAAC;yBAEV,QAAQ,MAAM,EAAE,UAAU,MAAM,EAAE;;CAA2B;;;;;;;;;;oBAyBvD,GAAG;;;;;;oBAuBH,GAAG;;;;;;AAhDzB,wBAyEE"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/plops/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;+BAS9B,WAAW;AAAjC,wBAmEE"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/plops/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,MAAM,CAAC;yBASpC,MAAM,WAAW;AAAjC,wBAmEE"}
@@ -1 +1 @@
1
- {"version":3,"file":"extend-plugin-index-files.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/extend-plugin-index-files.ts"],"names":[],"mappings":"AAKA,KAAK,UAAU,GAAG,cAAc,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtD,UAAU,YAAY;IACpB,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAsHD,eAAO,MAAM,YAAY,aAAc,MAAM,UAAU,YAAY,KAAG,MAuBrE,CAAC"}
1
+ {"version":3,"file":"extend-plugin-index-files.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/extend-plugin-index-files.ts"],"names":[],"mappings":"AAKA,KAAK,UAAU,GAAG,cAAc,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtD,UAAU,YAAY;IACpB,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAsHD,eAAO,MAAM,YAAY,GAAI,UAAU,MAAM,EAAE,QAAQ,YAAY,KAAG,MAuBrE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-file-path.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/get-file-path.ts"],"names":[],"mappings":"sCAA6B,MAAM;AAAnC,wBAcE"}
1
+ {"version":3,"file":"get-file-path.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/get-file-path.ts"],"names":[],"mappings":"yBAAgB,aAAa,MAAM;AAAnC,wBAcE"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-formatted-date.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/get-formatted-date.ts"],"names":[],"mappings":"gCAAsB,IAAI;AAA1B,wBAKE"}
1
+ {"version":3,"file":"get-formatted-date.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/get-formatted-date.ts"],"names":[],"mappings":"yBAAgB,OAAM,IAAiB;AAAvC,wBAKE"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-attribute-input.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/validate-attribute-input.ts"],"names":[],"mappings":"gCAAuB,MAAM;AAA7B,wBAQE"}
1
+ {"version":3,"file":"validate-attribute-input.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/validate-attribute-input.ts"],"names":[],"mappings":"yBAAgB,OAAO,MAAM;AAA7B,wBAQE"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-file-name-input.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/validate-file-name-input.ts"],"names":[],"mappings":"gCAAuB,MAAM;AAA7B,wBAQE"}
1
+ {"version":3,"file":"validate-file-name-input.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/validate-file-name-input.ts"],"names":[],"mappings":"yBAAgB,OAAO,MAAM;AAA7B,wBAQE"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-input.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/validate-input.ts"],"names":[],"mappings":"gCAAuB,MAAM;AAA7B,wBAQE"}
1
+ {"version":3,"file":"validate-input.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/validate-input.ts"],"names":[],"mappings":"yBAAgB,OAAO,MAAM;AAA7B,wBAQE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/generators",
3
- "version": "5.49.0",
3
+ "version": "5.50.0",
4
4
  "description": "Interactive API generator.",
5
5
  "keywords": [
6
6
  "strapi",
@@ -50,8 +50,8 @@
50
50
  },
51
51
  "dependencies": {
52
52
  "@sindresorhus/slugify": "1.1.0",
53
- "@strapi/typescript-utils": "5.49.0",
54
- "@strapi/utils": "5.49.0",
53
+ "@strapi/typescript-utils": "5.50.0",
54
+ "@strapi/utils": "5.50.0",
55
55
  "chalk": "4.1.2",
56
56
  "fs-extra": "11.3.4",
57
57
  "handlebars": "4.7.9",
@@ -64,9 +64,9 @@
64
64
  "@types/fs-extra": "11.0.4",
65
65
  "@types/jscodeshift": "17.3.0",
66
66
  "copyfiles": "2.4.1",
67
- "eslint-config-custom": "5.49.0",
67
+ "eslint-config-custom": "5.50.0",
68
68
  "outdent": "^0.8.0",
69
- "tsconfig": "5.49.0"
69
+ "tsconfig": "5.50.0"
70
70
  },
71
71
  "engines": {
72
72
  "node": ">=20.0.0 <=26.x.x",