@strapi/generators 0.0.0-next.e41415e8ff5f565ff959667d5c5ba4f20bee013c → 0.0.0-next.e5d4b412da0d932b61b2fa5012d16513fda6de04

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.
Files changed (184) hide show
  1. package/LICENSE +18 -3
  2. package/dist/index.d.ts +10 -5
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +93 -27
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.mjs +95 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/dist/plopfile.d.ts +2 -1
  9. package/dist/plopfile.d.ts.map +1 -0
  10. package/dist/plopfile.js +24 -26
  11. package/dist/plopfile.js.map +1 -1
  12. package/dist/plopfile.mjs +25 -0
  13. package/dist/plopfile.mjs.map +1 -0
  14. package/dist/plops/api.d.ts +2 -1
  15. package/dist/plops/api.d.ts.map +1 -0
  16. package/dist/plops/api.js +33 -31
  17. package/dist/plops/api.js.map +1 -1
  18. package/dist/plops/api.mjs +79 -0
  19. package/dist/plops/api.mjs.map +1 -0
  20. package/dist/plops/content-type.d.ts +2 -1
  21. package/dist/plops/content-type.d.ts.map +1 -0
  22. package/dist/plops/content-type.js +73 -59
  23. package/dist/plops/content-type.js.map +1 -1
  24. package/dist/plops/content-type.mjs +147 -0
  25. package/dist/plops/content-type.mjs.map +1 -0
  26. package/dist/plops/controller.d.ts +2 -1
  27. package/dist/plops/controller.d.ts.map +1 -0
  28. package/dist/plops/controller.js +20 -20
  29. package/dist/plops/controller.js.map +1 -1
  30. package/dist/plops/controller.mjs +38 -0
  31. package/dist/plops/controller.mjs.map +1 -0
  32. package/dist/plops/middleware.d.ts +2 -1
  33. package/dist/plops/middleware.d.ts.map +1 -0
  34. package/dist/plops/middleware.js +22 -20
  35. package/dist/plops/middleware.js.map +1 -1
  36. package/dist/plops/middleware.mjs +40 -0
  37. package/dist/plops/middleware.mjs.map +1 -0
  38. package/dist/plops/migration.d.ts +2 -1
  39. package/dist/plops/migration.d.ts.map +1 -0
  40. package/dist/plops/migration.js +19 -19
  41. package/dist/plops/migration.js.map +1 -1
  42. package/dist/plops/migration.mjs +33 -0
  43. package/dist/plops/migration.mjs.map +1 -0
  44. package/dist/plops/policy.d.ts +2 -1
  45. package/dist/plops/policy.d.ts.map +1 -0
  46. package/dist/plops/policy.js +22 -20
  47. package/dist/plops/policy.js.map +1 -1
  48. package/dist/plops/policy.mjs +40 -0
  49. package/dist/plops/policy.mjs.map +1 -0
  50. package/dist/plops/prompts/bootstrap-api-prompts.d.ts +7 -2
  51. package/dist/plops/prompts/bootstrap-api-prompts.d.ts.map +1 -0
  52. package/dist/plops/prompts/bootstrap-api-prompts.js +7 -6
  53. package/dist/plops/prompts/bootstrap-api-prompts.js.map +1 -1
  54. package/dist/plops/prompts/bootstrap-api-prompts.mjs +11 -0
  55. package/dist/plops/prompts/bootstrap-api-prompts.mjs.map +1 -0
  56. package/dist/plops/prompts/ct-names-prompts.d.ts +19 -2
  57. package/dist/plops/prompts/ct-names-prompts.d.ts.map +1 -0
  58. package/dist/plops/prompts/ct-names-prompts.js +19 -20
  59. package/dist/plops/prompts/ct-names-prompts.js.map +1 -1
  60. package/dist/plops/prompts/ct-names-prompts.mjs +42 -0
  61. package/dist/plops/prompts/ct-names-prompts.mjs.map +1 -0
  62. package/dist/plops/prompts/get-attributes-prompts.d.ts +9 -2
  63. package/dist/plops/prompts/get-attributes-prompts.d.ts.map +1 -0
  64. package/dist/plops/prompts/get-attributes-prompts.js +36 -30
  65. package/dist/plops/prompts/get-attributes-prompts.js.map +1 -1
  66. package/dist/plops/prompts/get-attributes-prompts.mjs +99 -0
  67. package/dist/plops/prompts/get-attributes-prompts.mjs.map +1 -0
  68. package/dist/plops/prompts/get-destination-prompts.d.ts +25 -2
  69. package/dist/plops/prompts/get-destination-prompts.d.ts.map +1 -0
  70. package/dist/plops/prompts/get-destination-prompts.js +47 -41
  71. package/dist/plops/prompts/get-destination-prompts.js.map +1 -1
  72. package/dist/plops/prompts/get-destination-prompts.mjs +76 -0
  73. package/dist/plops/prompts/get-destination-prompts.mjs.map +1 -0
  74. package/dist/plops/prompts/kind-prompts.d.ts +12 -2
  75. package/dist/plops/prompts/kind-prompts.d.ts.map +1 -0
  76. package/dist/plops/prompts/kind-prompts.js +17 -12
  77. package/dist/plops/prompts/kind-prompts.js.map +1 -1
  78. package/dist/plops/prompts/kind-prompts.mjs +24 -0
  79. package/dist/plops/prompts/kind-prompts.mjs.map +1 -0
  80. package/dist/plops/service.d.ts +2 -1
  81. package/dist/plops/service.d.ts.map +1 -0
  82. package/dist/plops/service.js +19 -19
  83. package/dist/plops/service.js.map +1 -1
  84. package/dist/plops/service.mjs +36 -0
  85. package/dist/plops/service.mjs.map +1 -0
  86. package/dist/plops/utils/get-file-path.d.ts +2 -1
  87. package/dist/plops/utils/get-file-path.d.ts.map +1 -0
  88. package/dist/plops/utils/get-file-path.js +7 -5
  89. package/dist/plops/utils/get-file-path.js.map +1 -1
  90. package/dist/plops/utils/get-file-path.mjs +15 -0
  91. package/dist/plops/utils/get-file-path.mjs.map +1 -0
  92. package/dist/plops/utils/get-formatted-date.d.ts +1 -0
  93. package/dist/plops/utils/get-formatted-date.d.ts.map +1 -0
  94. package/dist/plops/utils/get-formatted-date.js +8 -9
  95. package/dist/plops/utils/get-formatted-date.js.map +1 -1
  96. package/dist/plops/utils/get-formatted-date.mjs +6 -0
  97. package/dist/plops/utils/get-formatted-date.mjs.map +1 -0
  98. package/dist/plops/utils/validate-attribute-input.d.ts +1 -0
  99. package/dist/plops/utils/validate-attribute-input.d.ts.map +1 -0
  100. package/dist/plops/utils/validate-attribute-input.js +7 -5
  101. package/dist/plops/utils/validate-attribute-input.js.map +1 -1
  102. package/dist/plops/utils/validate-attribute-input.mjs +10 -0
  103. package/dist/plops/utils/validate-attribute-input.mjs.map +1 -0
  104. package/dist/plops/utils/validate-file-name-input.d.ts +1 -0
  105. package/dist/plops/utils/validate-file-name-input.d.ts.map +1 -0
  106. package/dist/plops/utils/validate-file-name-input.js +7 -5
  107. package/dist/plops/utils/validate-file-name-input.js.map +1 -1
  108. package/dist/plops/utils/validate-file-name-input.mjs +10 -0
  109. package/dist/plops/utils/validate-file-name-input.mjs.map +1 -0
  110. package/dist/plops/utils/validate-input.d.ts +1 -0
  111. package/dist/plops/utils/validate-input.d.ts.map +1 -0
  112. package/dist/plops/utils/validate-input.js +7 -5
  113. package/dist/plops/utils/validate-input.js.map +1 -1
  114. package/dist/plops/utils/validate-input.mjs +10 -0
  115. package/dist/plops/utils/validate-input.mjs.map +1 -0
  116. package/dist/templates/js/content-type.schema.json.hbs +0 -1
  117. package/dist/templates/ts/content-type.schema.json.hbs +0 -1
  118. package/dist/templates/ts/middleware.ts.hbs +2 -2
  119. package/package.json +21 -17
  120. package/dist/files/js/plugin/.editorconfig +0 -7
  121. package/dist/files/js/plugin/.gitattributes +0 -103
  122. package/dist/files/js/plugin/admin/src/components/Initializer/index.js +0 -26
  123. package/dist/files/js/plugin/admin/src/components/PluginIcon/index.js +0 -12
  124. package/dist/files/js/plugin/admin/src/index.js +0 -63
  125. package/dist/files/js/plugin/admin/src/pages/App/index.js +0 -25
  126. package/dist/files/js/plugin/admin/src/pages/HomePage/index.js +0 -20
  127. package/dist/files/js/plugin/admin/src/pluginId.js +0 -5
  128. package/dist/files/js/plugin/admin/src/translations/en.json +0 -1
  129. package/dist/files/js/plugin/admin/src/translations/fr.json +0 -1
  130. package/dist/files/js/plugin/admin/src/utils/getTrad.js +0 -5
  131. package/dist/files/js/plugin/server/bootstrap.js +0 -5
  132. package/dist/files/js/plugin/server/config/index.js +0 -6
  133. package/dist/files/js/plugin/server/content-types/index.js +0 -3
  134. package/dist/files/js/plugin/server/controllers/index.js +0 -7
  135. package/dist/files/js/plugin/server/controllers/my-controller.js.hbs +0 -10
  136. package/dist/files/js/plugin/server/destroy.js +0 -5
  137. package/dist/files/js/plugin/server/index.js +0 -25
  138. package/dist/files/js/plugin/server/middlewares/index.js +0 -3
  139. package/dist/files/js/plugin/server/policies/index.js +0 -3
  140. package/dist/files/js/plugin/server/register.js +0 -5
  141. package/dist/files/js/plugin/server/routes/index.js +0 -10
  142. package/dist/files/js/plugin/server/services/index.js +0 -7
  143. package/dist/files/js/plugin/server/services/my-service.js +0 -7
  144. package/dist/files/js/plugin/strapi-admin.js +0 -3
  145. package/dist/files/js/plugin/strapi-server.js +0 -3
  146. package/dist/files/ts/plugin/.editorconfig +0 -7
  147. package/dist/files/ts/plugin/.gitattributes +0 -103
  148. package/dist/files/ts/plugin/admin/src/components/Initializer/index.tsx +0 -24
  149. package/dist/files/ts/plugin/admin/src/components/PluginIcon/index.tsx +0 -12
  150. package/dist/files/ts/plugin/admin/src/index.tsx +0 -67
  151. package/dist/files/ts/plugin/admin/src/pages/App/index.tsx +0 -25
  152. package/dist/files/ts/plugin/admin/src/pages/HomePage/index.tsx +0 -19
  153. package/dist/files/ts/plugin/admin/src/pluginId.ts +0 -5
  154. package/dist/files/ts/plugin/admin/src/translations/en.json +0 -1
  155. package/dist/files/ts/plugin/admin/src/translations/fr.json +0 -1
  156. package/dist/files/ts/plugin/admin/src/utils/getTrad.ts +0 -5
  157. package/dist/files/ts/plugin/custom.d.ts +0 -5
  158. package/dist/files/ts/plugin/server/bootstrap.ts +0 -5
  159. package/dist/files/ts/plugin/server/config/index.ts +0 -4
  160. package/dist/files/ts/plugin/server/content-types/index.ts +0 -1
  161. package/dist/files/ts/plugin/server/controllers/index.ts +0 -5
  162. package/dist/files/ts/plugin/server/controllers/my-controller.ts.hbs +0 -10
  163. package/dist/files/ts/plugin/server/destroy.ts +0 -5
  164. package/dist/files/ts/plugin/server/index.ts +0 -23
  165. package/dist/files/ts/plugin/server/middlewares/index.ts +0 -1
  166. package/dist/files/ts/plugin/server/policies/index.ts +0 -1
  167. package/dist/files/ts/plugin/server/register.ts +0 -5
  168. package/dist/files/ts/plugin/server/routes/index.ts +0 -10
  169. package/dist/files/ts/plugin/server/services/index.ts +0 -5
  170. package/dist/files/ts/plugin/server/services/my-service.ts +0 -7
  171. package/dist/files/ts/plugin/strapi-admin.js +0 -3
  172. package/dist/files/ts/plugin/strapi-server.js +0 -3
  173. package/dist/files/ts/plugin/tsconfig.json +0 -20
  174. package/dist/files/ts/plugin/tsconfig.server.json +0 -25
  175. package/dist/plops/plugin.d.ts +0 -3
  176. package/dist/plops/plugin.js +0 -84
  177. package/dist/plops/plugin.js.map +0 -1
  178. package/dist/plops/prompts/draft-and-publish-prompts.d.ts +0 -3
  179. package/dist/plops/prompts/draft-and-publish-prompts.js +0 -12
  180. package/dist/plops/prompts/draft-and-publish-prompts.js.map +0 -1
  181. package/dist/templates/js/README.md.hbs +0 -3
  182. package/dist/templates/js/plugin-package.json.hbs +0 -42
  183. package/dist/templates/ts/README.md.hbs +0 -3
  184. package/dist/templates/ts/plugin-package.json.hbs +0 -51
@@ -1,3 +1,13 @@
1
- import type { PromptQuestion } from 'node-plop';
2
- declare const questions: Array<PromptQuestion>;
1
+ declare const questions: {
2
+ type: string;
3
+ name: string;
4
+ message: string;
5
+ default: string;
6
+ choices: {
7
+ name: string;
8
+ value: string;
9
+ }[];
10
+ validate: (input: string) => true | "You must provide an input" | "Please use only letters, '-' and no spaces";
11
+ }[];
3
12
  export default questions;
13
+ //# sourceMappingURL=kind-prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kind-prompts.d.ts","sourceRoot":"","sources":["../../../src/plops/prompts/kind-prompts.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,SAAS;;;;;;;;;sBAUO,MAAM;GAE3B,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,9 +1,7 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const validate_input_1 = __importDefault(require("../utils/validate-input"));
1
+ 'use strict';
2
+
3
+ var validateInput = require('../utils/validate-input.js');
4
+
7
5
  const questions = [
8
6
  {
9
7
  type: 'list',
@@ -11,11 +9,18 @@ const questions = [
11
9
  message: 'Please choose the model type',
12
10
  default: 'collectionType',
13
11
  choices: [
14
- { name: 'Collection Type', value: 'collectionType' },
15
- { name: 'Single Type', value: 'singleType' },
12
+ {
13
+ name: 'Collection Type',
14
+ value: 'collectionType'
15
+ },
16
+ {
17
+ name: 'Single Type',
18
+ value: 'singleType'
19
+ }
16
20
  ],
17
- validate: (input) => (0, validate_input_1.default)(input),
18
- },
21
+ validate: (input)=>validateInput(input)
22
+ }
19
23
  ];
20
- exports.default = questions;
21
- //# sourceMappingURL=kind-prompts.js.map
24
+
25
+ module.exports = questions;
26
+ //# sourceMappingURL=kind-prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"kind-prompts.js","sourceRoot":"","sources":["../../../src/plops/prompts/kind-prompts.ts"],"names":[],"mappings":";;;;;AAEA,6EAAoD;AAEpD,MAAM,SAAS,GAA0B;IACvC;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,8BAA8B;QACvC,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,gBAAgB,EAAE;YACpD,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;SAC7C;QACD,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,wBAAa,EAAC,KAAK,CAAC;KAClD;CACF,CAAC;AAEF,kBAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"kind-prompts.js","sources":["../../../src/plops/prompts/kind-prompts.ts"],"sourcesContent":["import validateInput from '../utils/validate-input';\n\nconst questions = [\n {\n type: 'list',\n name: 'kind',\n message: 'Please choose the model type',\n default: 'collectionType',\n choices: [\n { name: 'Collection Type', value: 'collectionType' },\n { name: 'Single Type', value: 'singleType' },\n ],\n validate: (input: string) => validateInput(input),\n },\n];\n\nexport default questions;\n"],"names":["questions","type","name","message","default","choices","value","validate","input","validateInput"],"mappings":";;;;AAEA,MAAMA,SAAY,GAAA;AAChB,IAAA;QACEC,IAAM,EAAA,MAAA;QACNC,IAAM,EAAA,MAAA;QACNC,OAAS,EAAA,8BAAA;QACTC,OAAS,EAAA,gBAAA;QACTC,OAAS,EAAA;AACP,YAAA;gBAAEH,IAAM,EAAA,iBAAA;gBAAmBI,KAAO,EAAA;AAAiB,aAAA;AACnD,YAAA;gBAAEJ,IAAM,EAAA,aAAA;gBAAeI,KAAO,EAAA;AAAa;AAC5C,SAAA;QACDC,QAAU,EAAA,CAACC,QAAkBC,aAAcD,CAAAA,KAAAA;AAC7C;AACD;;;;"}
@@ -0,0 +1,24 @@
1
+ import validateInput from '../utils/validate-input.mjs';
2
+
3
+ const questions = [
4
+ {
5
+ type: 'list',
6
+ name: 'kind',
7
+ message: 'Please choose the model type',
8
+ default: 'collectionType',
9
+ choices: [
10
+ {
11
+ name: 'Collection Type',
12
+ value: 'collectionType'
13
+ },
14
+ {
15
+ name: 'Single Type',
16
+ value: 'singleType'
17
+ }
18
+ ],
19
+ validate: (input)=>validateInput(input)
20
+ }
21
+ ];
22
+
23
+ export { questions as default };
24
+ //# sourceMappingURL=kind-prompts.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kind-prompts.mjs","sources":["../../../src/plops/prompts/kind-prompts.ts"],"sourcesContent":["import validateInput from '../utils/validate-input';\n\nconst questions = [\n {\n type: 'list',\n name: 'kind',\n message: 'Please choose the model type',\n default: 'collectionType',\n choices: [\n { name: 'Collection Type', value: 'collectionType' },\n { name: 'Single Type', value: 'singleType' },\n ],\n validate: (input: string) => validateInput(input),\n },\n];\n\nexport default questions;\n"],"names":["questions","type","name","message","default","choices","value","validate","input","validateInput"],"mappings":";;AAEA,MAAMA,SAAY,GAAA;AAChB,IAAA;QACEC,IAAM,EAAA,MAAA;QACNC,IAAM,EAAA,MAAA;QACNC,OAAS,EAAA,8BAAA;QACTC,OAAS,EAAA,gBAAA;QACTC,OAAS,EAAA;AACP,YAAA;gBAAEH,IAAM,EAAA,iBAAA;gBAAmBI,KAAO,EAAA;AAAiB,aAAA;AACnD,YAAA;gBAAEJ,IAAM,EAAA,aAAA;gBAAeI,KAAO,EAAA;AAAa;AAC5C,SAAA;QACDC,QAAU,EAAA,CAACC,QAAkBC,aAAcD,CAAAA,KAAAA;AAC7C;AACD;;;;"}
@@ -1,3 +1,4 @@
1
- import { NodePlopAPI } from 'plop';
1
+ import type { NodePlopAPI } from 'plop';
2
2
  declare const _default: (plop: NodePlopAPI) => void;
3
3
  export default _default;
4
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/plops/service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;+BAMlB,WAAW;AAAjC,wBA8BE"}
@@ -1,12 +1,10 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const typescript_utils_1 = __importDefault(require("@strapi/typescript-utils"));
7
- const get_destination_prompts_1 = __importDefault(require("./prompts/get-destination-prompts"));
8
- const get_file_path_1 = __importDefault(require("./utils/get-file-path"));
9
- exports.default = (plop) => {
1
+ 'use strict';
2
+
3
+ var tsUtils = require('@strapi/typescript-utils');
4
+ var getDestinationPrompts = require('./prompts/get-destination-prompts.js');
5
+ var getFilePath = require('./utils/get-file-path.js');
6
+
7
+ var generateService = ((plop)=>{
10
8
  // Service generator
11
9
  plop.setGenerator('service', {
12
10
  description: 'Generate a service for an API',
@@ -14,25 +12,27 @@ exports.default = (plop) => {
14
12
  {
15
13
  type: 'input',
16
14
  name: 'id',
17
- message: 'Service name',
15
+ message: 'Service name'
18
16
  },
19
- ...(0, get_destination_prompts_1.default)('service', plop.getDestBasePath()),
17
+ ...getDestinationPrompts('service', plop.getDestBasePath())
20
18
  ],
21
- actions(answers) {
19
+ actions (answers) {
22
20
  if (!answers) {
23
21
  return [];
24
22
  }
25
- const filePath = (0, get_file_path_1.default)(answers?.destination);
23
+ const filePath = getFilePath(answers?.destination);
26
24
  const currentDir = process.cwd();
27
- const language = typescript_utils_1.default.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';
25
+ const language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';
28
26
  return [
29
27
  {
30
28
  type: 'add',
31
29
  path: `${filePath}/services/{{ id }}.${language}`,
32
- templateFile: `templates/${language}/service.${language}.hbs`,
33
- },
30
+ templateFile: `templates/${language}/service.${language}.hbs`
31
+ }
34
32
  ];
35
- },
33
+ }
36
34
  });
37
- };
38
- //# sourceMappingURL=service.js.map
35
+ });
36
+
37
+ module.exports = generateService;
38
+ //# sourceMappingURL=service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/plops/service.ts"],"names":[],"mappings":";;;;;AACA,gFAA+C;AAE/C,gGAAsE;AACtE,0EAAgD;AAEhD,kBAAe,CAAC,IAAiB,EAAE,EAAE;IACnC,oBAAoB;IACpB,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;QAC3B,WAAW,EAAE,+BAA+B;QAC5C,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,cAAc;aACxB;YACD,GAAG,IAAA,iCAAqB,EAAC,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC;SAC5D;QACD,OAAO,CAAC,OAAO;YACb,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO,EAAE,CAAC;aACX;YAED,MAAM,QAAQ,GAAG,IAAA,uBAAW,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,0BAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YAEzE,OAAO;gBACL;oBACE,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,GAAG,QAAQ,sBAAsB,QAAQ,EAAE;oBACjD,YAAY,EAAE,aAAa,QAAQ,YAAY,QAAQ,MAAM;iBAC9D;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"service.js","sources":["../../src/plops/service.ts"],"sourcesContent":["import type { NodePlopAPI } from 'plop';\nimport tsUtils from '@strapi/typescript-utils';\n\nimport getDestinationPrompts from './prompts/get-destination-prompts';\nimport getFilePath from './utils/get-file-path';\n\nexport default (plop: NodePlopAPI) => {\n // Service generator\n plop.setGenerator('service', {\n description: 'Generate a service for an API',\n prompts: [\n {\n type: 'input',\n name: 'id',\n message: 'Service name',\n },\n ...getDestinationPrompts('service', plop.getDestBasePath()),\n ],\n actions(answers) {\n if (!answers) {\n return [];\n }\n\n const filePath = getFilePath(answers?.destination);\n const currentDir = process.cwd();\n const language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';\n\n return [\n {\n type: 'add',\n path: `${filePath}/services/{{ id }}.${language}`,\n templateFile: `templates/${language}/service.${language}.hbs`,\n },\n ];\n },\n });\n};\n"],"names":["plop","setGenerator","description","prompts","type","name","message","getDestinationPrompts","getDestBasePath","actions","answers","filePath","getFilePath","destination","currentDir","process","cwd","language","tsUtils","isUsingTypeScriptSync","path","templateFile"],"mappings":";;;;;;AAMA,sBAAe,CAAA,CAACA,IAAAA,GAAAA;;IAEdA,IAAKC,CAAAA,YAAY,CAAC,SAAW,EAAA;QAC3BC,WAAa,EAAA,+BAAA;QACbC,OAAS,EAAA;AACP,YAAA;gBACEC,IAAM,EAAA,OAAA;gBACNC,IAAM,EAAA,IAAA;gBACNC,OAAS,EAAA;AACX,aAAA;eACGC,qBAAsB,CAAA,SAAA,EAAWP,KAAKQ,eAAe,EAAA;AACzD,SAAA;AACDC,QAAAA,OAAAA,CAAAA,CAAQC,OAAO,EAAA;AACb,YAAA,IAAI,CAACA,OAAS,EAAA;AACZ,gBAAA,OAAO,EAAE;AACX;YAEA,MAAMC,QAAAA,GAAWC,YAAYF,OAASG,EAAAA,WAAAA,CAAAA;YACtC,MAAMC,UAAAA,GAAaC,QAAQC,GAAG,EAAA;AAC9B,YAAA,MAAMC,QAAWC,GAAAA,OAAAA,CAAQC,qBAAqB,CAACL,cAAc,IAAO,GAAA,IAAA;YAEpE,OAAO;AACL,gBAAA;oBACEV,IAAM,EAAA,KAAA;AACNgB,oBAAAA,IAAAA,EAAM,CAAC,EAAET,QAAAA,CAAS,mBAAmB,EAAEM,SAAS,CAAC;oBACjDI,YAAc,EAAA,CAAC,UAAU,EAAEJ,QAAAA,CAAS,SAAS,EAAEA,QAAAA,CAAS,IAAI;AAC9D;AACD,aAAA;AACH;AACF,KAAA,CAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,36 @@
1
+ import tsUtils from '@strapi/typescript-utils';
2
+ import getDestinationPrompts from './prompts/get-destination-prompts.mjs';
3
+ import getFilePath from './utils/get-file-path.mjs';
4
+
5
+ var generateService = ((plop)=>{
6
+ // Service generator
7
+ plop.setGenerator('service', {
8
+ description: 'Generate a service for an API',
9
+ prompts: [
10
+ {
11
+ type: 'input',
12
+ name: 'id',
13
+ message: 'Service name'
14
+ },
15
+ ...getDestinationPrompts('service', plop.getDestBasePath())
16
+ ],
17
+ actions (answers) {
18
+ if (!answers) {
19
+ return [];
20
+ }
21
+ const filePath = getFilePath(answers?.destination);
22
+ const currentDir = process.cwd();
23
+ const language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';
24
+ return [
25
+ {
26
+ type: 'add',
27
+ path: `${filePath}/services/{{ id }}.${language}`,
28
+ templateFile: `templates/${language}/service.${language}.hbs`
29
+ }
30
+ ];
31
+ }
32
+ });
33
+ });
34
+
35
+ export { generateService as default };
36
+ //# sourceMappingURL=service.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.mjs","sources":["../../src/plops/service.ts"],"sourcesContent":["import type { NodePlopAPI } from 'plop';\nimport tsUtils from '@strapi/typescript-utils';\n\nimport getDestinationPrompts from './prompts/get-destination-prompts';\nimport getFilePath from './utils/get-file-path';\n\nexport default (plop: NodePlopAPI) => {\n // Service generator\n plop.setGenerator('service', {\n description: 'Generate a service for an API',\n prompts: [\n {\n type: 'input',\n name: 'id',\n message: 'Service name',\n },\n ...getDestinationPrompts('service', plop.getDestBasePath()),\n ],\n actions(answers) {\n if (!answers) {\n return [];\n }\n\n const filePath = getFilePath(answers?.destination);\n const currentDir = process.cwd();\n const language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js';\n\n return [\n {\n type: 'add',\n path: `${filePath}/services/{{ id }}.${language}`,\n templateFile: `templates/${language}/service.${language}.hbs`,\n },\n ];\n },\n });\n};\n"],"names":["plop","setGenerator","description","prompts","type","name","message","getDestinationPrompts","getDestBasePath","actions","answers","filePath","getFilePath","destination","currentDir","process","cwd","language","tsUtils","isUsingTypeScriptSync","path","templateFile"],"mappings":";;;;AAMA,sBAAe,CAAA,CAACA,IAAAA,GAAAA;;IAEdA,IAAKC,CAAAA,YAAY,CAAC,SAAW,EAAA;QAC3BC,WAAa,EAAA,+BAAA;QACbC,OAAS,EAAA;AACP,YAAA;gBACEC,IAAM,EAAA,OAAA;gBACNC,IAAM,EAAA,IAAA;gBACNC,OAAS,EAAA;AACX,aAAA;eACGC,qBAAsB,CAAA,SAAA,EAAWP,KAAKQ,eAAe,EAAA;AACzD,SAAA;AACDC,QAAAA,OAAAA,CAAAA,CAAQC,OAAO,EAAA;AACb,YAAA,IAAI,CAACA,OAAS,EAAA;AACZ,gBAAA,OAAO,EAAE;AACX;YAEA,MAAMC,QAAAA,GAAWC,YAAYF,OAASG,EAAAA,WAAAA,CAAAA;YACtC,MAAMC,UAAAA,GAAaC,QAAQC,GAAG,EAAA;AAC9B,YAAA,MAAMC,QAAWC,GAAAA,OAAAA,CAAQC,qBAAqB,CAACL,cAAc,IAAO,GAAA,IAAA;YAEpE,OAAO;AACL,gBAAA;oBACEV,IAAM,EAAA,KAAA;AACNgB,oBAAAA,IAAAA,EAAM,CAAC,EAAET,QAAAA,CAAS,mBAAmB,EAAEM,SAAS,CAAC;oBACjDI,YAAc,EAAA,CAAC,UAAU,EAAEJ,QAAAA,CAAS,SAAS,EAAEA,QAAAA,CAAS,IAAI;AAC9D;AACD,aAAA;AACH;AACF,KAAA,CAAA;AACF,CAAA;;;;"}
@@ -1,2 +1,3 @@
1
- declare const _default: (destination: string) => "api/{{ id }}" | "api/{{ api }}" | "plugins/{{ plugin }}/server" | "./";
1
+ declare const _default: (destination: string) => "plugins/{{ plugin }}/server" | "api/{{ id }}" | "api/{{ api }}" | "./";
2
2
  export default _default;
3
+ //# sourceMappingURL=get-file-path.d.ts.map
@@ -0,0 +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,6 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = (destination) => {
1
+ 'use strict';
2
+
3
+ var getFilePath = ((destination)=>{
4
4
  if (destination === 'api') {
5
5
  return `api/{{ api }}`;
6
6
  }
@@ -11,5 +11,7 @@ exports.default = (destination) => {
11
11
  return './';
12
12
  }
13
13
  return `api/{{ id }}`;
14
- };
15
- //# sourceMappingURL=get-file-path.js.map
14
+ });
15
+
16
+ module.exports = getFilePath;
17
+ //# sourceMappingURL=get-file-path.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-file-path.js","sourceRoot":"","sources":["../../../src/plops/utils/get-file-path.ts"],"names":[],"mappings":";;AAAA,kBAAe,CAAC,WAAmB,EAAE,EAAE;IACrC,IAAI,WAAW,KAAK,KAAK,EAAE;QACzB,OAAO,eAAe,CAAC;KACxB;IAED,IAAI,WAAW,KAAK,QAAQ,EAAE;QAC5B,OAAO,6BAA6B,CAAC;KACtC;IAED,IAAI,WAAW,KAAK,MAAM,EAAE;QAC1B,OAAO,IAAI,CAAC;KACb;IAED,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC"}
1
+ {"version":3,"file":"get-file-path.js","sources":["../../../src/plops/utils/get-file-path.ts"],"sourcesContent":["export default (destination: string) => {\n if (destination === 'api') {\n return `api/{{ api }}`;\n }\n\n if (destination === 'plugin') {\n return `plugins/{{ plugin }}/server`;\n }\n\n if (destination === 'root') {\n return './';\n }\n\n return `api/{{ id }}`;\n};\n"],"names":["destination"],"mappings":";;AAAA,kBAAe,CAAA,CAACA,WAAAA,GAAAA;AACd,IAAA,IAAIA,gBAAgB,KAAO,EAAA;QACzB,OAAO,CAAC,aAAa,CAAC;AACxB;AAEA,IAAA,IAAIA,gBAAgB,QAAU,EAAA;QAC5B,OAAO,CAAC,2BAA2B,CAAC;AACtC;AAEA,IAAA,IAAIA,gBAAgB,MAAQ,EAAA;QAC1B,OAAO,IAAA;AACT;IAEA,OAAO,CAAC,YAAY,CAAC;AACvB,CAAA;;;;"}
@@ -0,0 +1,15 @@
1
+ var getFilePath = ((destination)=>{
2
+ if (destination === 'api') {
3
+ return `api/{{ api }}`;
4
+ }
5
+ if (destination === 'plugin') {
6
+ return `plugins/{{ plugin }}/server`;
7
+ }
8
+ if (destination === 'root') {
9
+ return './';
10
+ }
11
+ return `api/{{ id }}`;
12
+ });
13
+
14
+ export { getFilePath as default };
15
+ //# sourceMappingURL=get-file-path.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-file-path.mjs","sources":["../../../src/plops/utils/get-file-path.ts"],"sourcesContent":["export default (destination: string) => {\n if (destination === 'api') {\n return `api/{{ api }}`;\n }\n\n if (destination === 'plugin') {\n return `plugins/{{ plugin }}/server`;\n }\n\n if (destination === 'root') {\n return './';\n }\n\n return `api/{{ id }}`;\n};\n"],"names":["destination"],"mappings":"AAAA,kBAAe,CAAA,CAACA,WAAAA,GAAAA;AACd,IAAA,IAAIA,gBAAgB,KAAO,EAAA;QACzB,OAAO,CAAC,aAAa,CAAC;AACxB;AAEA,IAAA,IAAIA,gBAAgB,QAAU,EAAA;QAC5B,OAAO,CAAC,2BAA2B,CAAC;AACtC;AAEA,IAAA,IAAIA,gBAAgB,MAAQ,EAAA;QAC1B,OAAO,IAAA;AACT;IAEA,OAAO,CAAC,YAAY,CAAC;AACvB,CAAA;;;;"}
@@ -1,2 +1,3 @@
1
1
  declare const _default: (date?: Date) => string;
2
2
  export default _default;
3
+ //# sourceMappingURL=get-formatted-date.d.ts.map
@@ -0,0 +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,9 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = (date = new Date()) => {
4
- return new Date(date.getTime() - date.getTimezoneOffset() * 60000)
5
- .toJSON()
6
- .replace(/[-:]/g, '.')
7
- .replace(/\....Z/, '');
8
- };
9
- //# sourceMappingURL=get-formatted-date.js.map
1
+ 'use strict';
2
+
3
+ var getFormattedDate = ((date = new Date())=>{
4
+ return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toJSON().replace(/[-:]/g, '.').replace(/\....Z/, '');
5
+ });
6
+
7
+ module.exports = getFormattedDate;
8
+ //# sourceMappingURL=get-formatted-date.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-formatted-date.js","sourceRoot":"","sources":["../../../src/plops/utils/get-formatted-date.ts"],"names":[],"mappings":";;AAAA,kBAAe,CAAC,OAAa,IAAI,IAAI,EAAE,EAAE,EAAE;IACzC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,KAAK,CAAC;SAC/D,MAAM,EAAE;SACR,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC3B,CAAC,CAAC"}
1
+ {"version":3,"file":"get-formatted-date.js","sources":["../../../src/plops/utils/get-formatted-date.ts"],"sourcesContent":["export default (date: Date = new Date()) => {\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000)\n .toJSON()\n .replace(/[-:]/g, '.')\n .replace(/\\....Z/, '');\n};\n"],"names":["date","Date","getTime","getTimezoneOffset","toJSON","replace"],"mappings":";;AAAA,uBAAe,CAAA,CAACA,IAAa,GAAA,IAAIC,IAAM,EAAA,GAAA;AACrC,IAAA,OAAO,IAAIA,IAAKD,CAAAA,IAAAA,CAAKE,OAAO,EAAA,GAAKF,KAAKG,iBAAiB,EAAA,GAAK,KACzDC,CAAAA,CAAAA,MAAM,GACNC,OAAO,CAAC,SAAS,GACjBA,CAAAA,CAAAA,OAAO,CAAC,QAAU,EAAA,EAAA,CAAA;AACvB,CAAA;;;;"}
@@ -0,0 +1,6 @@
1
+ var getFormattedDate = ((date = new Date())=>{
2
+ return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toJSON().replace(/[-:]/g, '.').replace(/\....Z/, '');
3
+ });
4
+
5
+ export { getFormattedDate as default };
6
+ //# sourceMappingURL=get-formatted-date.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-formatted-date.mjs","sources":["../../../src/plops/utils/get-formatted-date.ts"],"sourcesContent":["export default (date: Date = new Date()) => {\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000)\n .toJSON()\n .replace(/[-:]/g, '.')\n .replace(/\\....Z/, '');\n};\n"],"names":["date","Date","getTime","getTimezoneOffset","toJSON","replace"],"mappings":"AAAA,uBAAe,CAAA,CAACA,IAAa,GAAA,IAAIC,IAAM,EAAA,GAAA;AACrC,IAAA,OAAO,IAAIA,IAAKD,CAAAA,IAAAA,CAAKE,OAAO,EAAA,GAAKF,KAAKG,iBAAiB,EAAA,GAAK,KACzDC,CAAAA,CAAAA,MAAM,GACNC,OAAO,CAAC,SAAS,GACjBA,CAAAA,CAAAA,OAAO,CAAC,QAAU,EAAA,EAAA,CAAA;AACvB,CAAA;;;;"}
@@ -1,2 +1,3 @@
1
1
  declare const _default: (input: string) => true | "You must provide an input" | "Please use only letters, '-', '_', and no spaces";
2
2
  export default _default;
3
+ //# sourceMappingURL=validate-attribute-input.d.ts.map
@@ -0,0 +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,10 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = (input) => {
1
+ 'use strict';
2
+
3
+ var validateAttributeInput = ((input)=>{
4
4
  const regex = /^[A-Za-z-|_]+$/g;
5
5
  if (!input) {
6
6
  return 'You must provide an input';
7
7
  }
8
8
  return regex.test(input) || "Please use only letters, '-', '_', and no spaces";
9
- };
10
- //# sourceMappingURL=validate-attribute-input.js.map
9
+ });
10
+
11
+ module.exports = validateAttributeInput;
12
+ //# sourceMappingURL=validate-attribute-input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-attribute-input.js","sourceRoot":"","sources":["../../../src/plops/utils/validate-attribute-input.ts"],"names":[],"mappings":";;AAAA,kBAAe,CAAC,KAAa,EAAE,EAAE;IAC/B,MAAM,KAAK,GAAG,iBAAiB,CAAC;IAEhC,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,2BAA2B,CAAC;KACpC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,mDAAmD,CAAC;AAClF,CAAC,CAAC"}
1
+ {"version":3,"file":"validate-attribute-input.js","sources":["../../../src/plops/utils/validate-attribute-input.ts"],"sourcesContent":["export default (input: string) => {\n const regex = /^[A-Za-z-|_]+$/g;\n\n if (!input) {\n return 'You must provide an input';\n }\n\n return regex.test(input) || \"Please use only letters, '-', '_', and no spaces\";\n};\n"],"names":["input","regex","test"],"mappings":";;AAAA,6BAAe,CAAA,CAACA,KAAAA,GAAAA;AACd,IAAA,MAAMC,KAAQ,GAAA,iBAAA;AAEd,IAAA,IAAI,CAACD,KAAO,EAAA;QACV,OAAO,2BAAA;AACT;IAEA,OAAOC,KAAAA,CAAMC,IAAI,CAACF,KAAU,CAAA,IAAA,mDAAA;AAC9B,CAAA;;;;"}
@@ -0,0 +1,10 @@
1
+ var validateAttributeInput = ((input)=>{
2
+ const regex = /^[A-Za-z-|_]+$/g;
3
+ if (!input) {
4
+ return 'You must provide an input';
5
+ }
6
+ return regex.test(input) || "Please use only letters, '-', '_', and no spaces";
7
+ });
8
+
9
+ export { validateAttributeInput as default };
10
+ //# sourceMappingURL=validate-attribute-input.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-attribute-input.mjs","sources":["../../../src/plops/utils/validate-attribute-input.ts"],"sourcesContent":["export default (input: string) => {\n const regex = /^[A-Za-z-|_]+$/g;\n\n if (!input) {\n return 'You must provide an input';\n }\n\n return regex.test(input) || \"Please use only letters, '-', '_', and no spaces\";\n};\n"],"names":["input","regex","test"],"mappings":"AAAA,6BAAe,CAAA,CAACA,KAAAA,GAAAA;AACd,IAAA,MAAMC,KAAQ,GAAA,iBAAA;AAEd,IAAA,IAAI,CAACD,KAAO,EAAA;QACV,OAAO,2BAAA;AACT;IAEA,OAAOC,KAAAA,CAAMC,IAAI,CAACF,KAAU,CAAA,IAAA,mDAAA;AAC9B,CAAA;;;;"}
@@ -1,2 +1,3 @@
1
1
  declare const _default: (input: string) => true | "You must provide an input" | "Please use only letters and number, '-' or '_' and no spaces";
2
2
  export default _default;
3
+ //# sourceMappingURL=validate-file-name-input.d.ts.map
@@ -0,0 +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,10 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = (input) => {
1
+ 'use strict';
2
+
3
+ var validateFileNameInput = ((input)=>{
4
4
  const regex = /^[A-Za-z-_0-9]+$/g;
5
5
  if (!input) {
6
6
  return 'You must provide an input';
7
7
  }
8
8
  return regex.test(input) || "Please use only letters and number, '-' or '_' and no spaces";
9
- };
10
- //# sourceMappingURL=validate-file-name-input.js.map
9
+ });
10
+
11
+ module.exports = validateFileNameInput;
12
+ //# sourceMappingURL=validate-file-name-input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-file-name-input.js","sourceRoot":"","sources":["../../../src/plops/utils/validate-file-name-input.ts"],"names":[],"mappings":";;AAAA,kBAAe,CAAC,KAAa,EAAE,EAAE;IAC/B,MAAM,KAAK,GAAG,mBAAmB,CAAC;IAElC,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,2BAA2B,CAAC;KACpC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,8DAA8D,CAAC;AAC7F,CAAC,CAAC"}
1
+ {"version":3,"file":"validate-file-name-input.js","sources":["../../../src/plops/utils/validate-file-name-input.ts"],"sourcesContent":["export default (input: string) => {\n const regex = /^[A-Za-z-_0-9]+$/g;\n\n if (!input) {\n return 'You must provide an input';\n }\n\n return regex.test(input) || \"Please use only letters and number, '-' or '_' and no spaces\";\n};\n"],"names":["input","regex","test"],"mappings":";;AAAA,4BAAe,CAAA,CAACA,KAAAA,GAAAA;AACd,IAAA,MAAMC,KAAQ,GAAA,mBAAA;AAEd,IAAA,IAAI,CAACD,KAAO,EAAA;QACV,OAAO,2BAAA;AACT;IAEA,OAAOC,KAAAA,CAAMC,IAAI,CAACF,KAAU,CAAA,IAAA,8DAAA;AAC9B,CAAA;;;;"}
@@ -0,0 +1,10 @@
1
+ var validateFileNameInput = ((input)=>{
2
+ const regex = /^[A-Za-z-_0-9]+$/g;
3
+ if (!input) {
4
+ return 'You must provide an input';
5
+ }
6
+ return regex.test(input) || "Please use only letters and number, '-' or '_' and no spaces";
7
+ });
8
+
9
+ export { validateFileNameInput as default };
10
+ //# sourceMappingURL=validate-file-name-input.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-file-name-input.mjs","sources":["../../../src/plops/utils/validate-file-name-input.ts"],"sourcesContent":["export default (input: string) => {\n const regex = /^[A-Za-z-_0-9]+$/g;\n\n if (!input) {\n return 'You must provide an input';\n }\n\n return regex.test(input) || \"Please use only letters and number, '-' or '_' and no spaces\";\n};\n"],"names":["input","regex","test"],"mappings":"AAAA,4BAAe,CAAA,CAACA,KAAAA,GAAAA;AACd,IAAA,MAAMC,KAAQ,GAAA,mBAAA;AAEd,IAAA,IAAI,CAACD,KAAO,EAAA;QACV,OAAO,2BAAA;AACT;IAEA,OAAOC,KAAAA,CAAMC,IAAI,CAACF,KAAU,CAAA,IAAA,8DAAA;AAC9B,CAAA;;;;"}
@@ -1,2 +1,3 @@
1
1
  declare const _default: (input: string) => true | "You must provide an input" | "Please use only letters, '-' and no spaces";
2
2
  export default _default;
3
+ //# sourceMappingURL=validate-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-input.d.ts","sourceRoot":"","sources":["../../../src/plops/utils/validate-input.ts"],"names":[],"mappings":"gCAAuB,MAAM;AAA7B,wBAQE"}
@@ -1,10 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = (input) => {
1
+ 'use strict';
2
+
3
+ var validateInput = ((input)=>{
4
4
  const regex = /^[A-Za-z-]+$/g;
5
5
  if (!input) {
6
6
  return 'You must provide an input';
7
7
  }
8
8
  return regex.test(input) || "Please use only letters, '-' and no spaces";
9
- };
10
- //# sourceMappingURL=validate-input.js.map
9
+ });
10
+
11
+ module.exports = validateInput;
12
+ //# sourceMappingURL=validate-input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-input.js","sourceRoot":"","sources":["../../../src/plops/utils/validate-input.ts"],"names":[],"mappings":";;AAAA,kBAAe,CAAC,KAAa,EAAE,EAAE;IAC/B,MAAM,KAAK,GAAG,eAAe,CAAC;IAE9B,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,2BAA2B,CAAC;KACpC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,4CAA4C,CAAC;AAC3E,CAAC,CAAC"}
1
+ {"version":3,"file":"validate-input.js","sources":["../../../src/plops/utils/validate-input.ts"],"sourcesContent":["export default (input: string) => {\n const regex = /^[A-Za-z-]+$/g;\n\n if (!input) {\n return 'You must provide an input';\n }\n\n return regex.test(input) || \"Please use only letters, '-' and no spaces\";\n};\n"],"names":["input","regex","test"],"mappings":";;AAAA,oBAAe,CAAA,CAACA,KAAAA,GAAAA;AACd,IAAA,MAAMC,KAAQ,GAAA,eAAA;AAEd,IAAA,IAAI,CAACD,KAAO,EAAA;QACV,OAAO,2BAAA;AACT;IAEA,OAAOC,KAAAA,CAAMC,IAAI,CAACF,KAAU,CAAA,IAAA,4CAAA;AAC9B,CAAA;;;;"}
@@ -0,0 +1,10 @@
1
+ var validateInput = ((input)=>{
2
+ const regex = /^[A-Za-z-]+$/g;
3
+ if (!input) {
4
+ return 'You must provide an input';
5
+ }
6
+ return regex.test(input) || "Please use only letters, '-' and no spaces";
7
+ });
8
+
9
+ export { validateInput as default };
10
+ //# sourceMappingURL=validate-input.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-input.mjs","sources":["../../../src/plops/utils/validate-input.ts"],"sourcesContent":["export default (input: string) => {\n const regex = /^[A-Za-z-]+$/g;\n\n if (!input) {\n return 'You must provide an input';\n }\n\n return regex.test(input) || \"Please use only letters, '-' and no spaces\";\n};\n"],"names":["input","regex","test"],"mappings":"AAAA,oBAAe,CAAA,CAACA,KAAAA,GAAAA;AACd,IAAA,MAAMC,KAAQ,GAAA,eAAA;AAEd,IAAA,IAAI,CAACD,KAAO,EAAA;QACV,OAAO,2BAAA;AACT;IAEA,OAAOC,KAAAA,CAAMC,IAAI,CAACF,KAAU,CAAA,IAAA,4CAAA;AAC9B,CAAA;;;;"}
@@ -8,7 +8,6 @@
8
8
  "displayName": "{{ displayName }}"
9
9
  },
10
10
  "options": {
11
- "draftAndPublish": {{ useDraftAndPublish }},
12
11
  "comment": ""
13
12
  },
14
13
  "attributes": {}
@@ -8,7 +8,6 @@
8
8
  "displayName": "{{ displayName }}"
9
9
  },
10
10
  "options": {
11
- "draftAndPublish": {{ useDraftAndPublish }},
12
11
  "comment": ""
13
12
  },
14
13
  "attributes": {}
@@ -2,9 +2,9 @@
2
2
  * `{{ name }}` middleware
3
3
  */
4
4
 
5
- import { Strapi } from '@strapi/strapi';
5
+ import type { Core } from '@strapi/strapi';
6
6
 
7
- export default (config, { strapi }: { strapi: Strapi }) => {
7
+ export default (config, { strapi }: { strapi: Core.Strapi }) => {
8
8
  // Add your own logic here.
9
9
  return async (ctx, next) => {
10
10
  strapi.log.info('In {{ name }} middleware.');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/generators",
3
- "version": "0.0.0-next.e41415e8ff5f565ff959667d5c5ba4f20bee013c",
3
+ "version": "0.0.0-next.e5d4b412da0d932b61b2fa5012d16513fda6de04",
4
4
  "description": "Interactive API generator.",
5
5
  "keywords": [
6
6
  "strapi",
@@ -28,39 +28,43 @@
28
28
  }
29
29
  ],
30
30
  "main": "./dist/index.js",
31
+ "module": "./dist/index.mjs",
32
+ "source": "./src/index.ts",
31
33
  "types": "./dist/index.d.ts",
32
34
  "files": [
33
- "./dist"
35
+ "dist/"
34
36
  ],
35
37
  "scripts": {
36
- "build": "run -T tsc && run copy-files",
37
- "build:ts": "run build",
38
- "watch": "run -T tsc -w --preserveWatchOutput",
38
+ "build": "run -T npm-run-all clean --parallel build:code build:types",
39
+ "build:code": "run -T run-p build:code:rollup copy-files",
40
+ "build:code:rollup": "run -T rollup -c",
41
+ "build:types": "run -T tsc -p tsconfig.build.json --emitDeclarationOnly",
39
42
  "clean": "run -T rimraf ./dist",
40
43
  "copy-files": "copyfiles -u 1 -a 'src/templates/**/*' 'src/files/**/*' dist",
41
- "prepublishOnly": "yarn clean && yarn build",
44
+ "lint": "run -T eslint .",
45
+ "test:ts": "run -T tsc --noEmit",
42
46
  "test:unit": "run -T jest",
43
47
  "test:unit:watch": "run -T jest --watch",
44
- "lint": "run -T eslint ."
48
+ "watch": "run -T rollup -c -w"
45
49
  },
46
50
  "dependencies": {
47
51
  "@sindresorhus/slugify": "1.1.0",
48
- "@strapi/typescript-utils": "0.0.0-next.e41415e8ff5f565ff959667d5c5ba4f20bee013c",
49
- "@strapi/utils": "0.0.0-next.e41415e8ff5f565ff959667d5c5ba4f20bee013c",
52
+ "@strapi/typescript-utils": "0.0.0-next.e5d4b412da0d932b61b2fa5012d16513fda6de04",
53
+ "@strapi/utils": "0.0.0-next.e5d4b412da0d932b61b2fa5012d16513fda6de04",
50
54
  "chalk": "4.1.2",
51
55
  "copyfiles": "2.4.1",
52
- "fs-extra": "10.0.0",
53
- "node-plop": "0.26.3",
54
- "plop": "2.7.6",
56
+ "fs-extra": "11.2.0",
57
+ "handlebars": "4.7.7",
58
+ "plop": "4.0.1",
55
59
  "pluralize": "8.0.0"
56
60
  },
57
61
  "devDependencies": {
58
- "eslint-config-custom": "0.0.0-next.e41415e8ff5f565ff959667d5c5ba4f20bee013c",
59
- "tsconfig": "0.0.0-next.e41415e8ff5f565ff959667d5c5ba4f20bee013c"
62
+ "@types/fs-extra": "11.0.4",
63
+ "eslint-config-custom": "0.0.0-next.e5d4b412da0d932b61b2fa5012d16513fda6de04",
64
+ "tsconfig": "0.0.0-next.e5d4b412da0d932b61b2fa5012d16513fda6de04"
60
65
  },
61
66
  "engines": {
62
- "node": ">=14.19.1 <=18.x.x",
67
+ "node": ">=18.0.0 <=22.x.x",
63
68
  "npm": ">=6.0.0"
64
- },
65
- "gitHead": "e41415e8ff5f565ff959667d5c5ba4f20bee013c"
69
+ }
66
70
  }
@@ -1,7 +0,0 @@
1
- root = true
2
-
3
- [*]
4
- end_of_line = lf
5
- insert_final_newline = false
6
- indent_style = space
7
- indent_size = 2