@strapi/core 0.0.0-experimental.ca5f02ef2ec166e219546983049c0543bed92f8d → 0.0.0-experimental.cad2fba5593c9ceddfc264fcecd9313a7f866d1a

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.

Potentially problematic release.


This version of @strapi/core might be problematic. Click here for more details.

Files changed (239) hide show
  1. package/dist/Strapi.d.ts +1 -0
  2. package/dist/Strapi.d.ts.map +1 -1
  3. package/dist/Strapi.js +22 -6
  4. package/dist/Strapi.js.map +1 -1
  5. package/dist/Strapi.mjs +22 -6
  6. package/dist/Strapi.mjs.map +1 -1
  7. package/dist/configuration/config-loader.js.map +1 -1
  8. package/dist/configuration/config-loader.mjs.map +1 -1
  9. package/dist/configuration/index.d.ts +0 -3
  10. package/dist/configuration/index.d.ts.map +1 -1
  11. package/dist/configuration/index.js +0 -3
  12. package/dist/configuration/index.js.map +1 -1
  13. package/dist/configuration/index.mjs +0 -3
  14. package/dist/configuration/index.mjs.map +1 -1
  15. package/dist/configuration/urls.js.map +1 -1
  16. package/dist/configuration/urls.mjs.map +1 -1
  17. package/dist/constants.d.ts +3 -0
  18. package/dist/constants.d.ts.map +1 -0
  19. package/dist/constants.js +6 -0
  20. package/dist/constants.js.map +1 -0
  21. package/dist/constants.mjs +4 -0
  22. package/dist/constants.mjs.map +1 -0
  23. package/dist/container.js.map +1 -1
  24. package/dist/container.mjs.map +1 -1
  25. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  26. package/dist/core-api/controller/collection-type.js +1 -1
  27. package/dist/core-api/controller/collection-type.js.map +1 -1
  28. package/dist/core-api/controller/collection-type.mjs +1 -1
  29. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  30. package/dist/core-api/controller/index.js +1 -1
  31. package/dist/core-api/controller/index.js.map +1 -1
  32. package/dist/core-api/controller/index.mjs +1 -1
  33. package/dist/core-api/controller/index.mjs.map +1 -1
  34. package/dist/core-api/controller/single-type.js +1 -1
  35. package/dist/core-api/controller/single-type.js.map +1 -1
  36. package/dist/core-api/controller/single-type.mjs +1 -1
  37. package/dist/core-api/controller/single-type.mjs.map +1 -1
  38. package/dist/core-api/controller/transform.d.ts.map +1 -1
  39. package/dist/core-api/controller/transform.js +9 -5
  40. package/dist/core-api/controller/transform.js.map +1 -1
  41. package/dist/core-api/controller/transform.mjs +9 -5
  42. package/dist/core-api/controller/transform.mjs.map +1 -1
  43. package/dist/core-api/routes/index.js.map +1 -1
  44. package/dist/core-api/routes/index.mjs.map +1 -1
  45. package/dist/core-api/routes/validation/mappers.d.ts.map +1 -1
  46. package/dist/core-api/routes/validation/mappers.js +35 -0
  47. package/dist/core-api/routes/validation/mappers.js.map +1 -1
  48. package/dist/core-api/routes/validation/mappers.mjs +35 -0
  49. package/dist/core-api/routes/validation/mappers.mjs.map +1 -1
  50. package/dist/core-api/routes/validation/utils.d.ts.map +1 -1
  51. package/dist/core-api/routes/validation/utils.js +22 -6
  52. package/dist/core-api/routes/validation/utils.js.map +1 -1
  53. package/dist/core-api/routes/validation/utils.mjs +22 -6
  54. package/dist/core-api/routes/validation/utils.mjs.map +1 -1
  55. package/dist/core-api/service/collection-type.js.map +1 -1
  56. package/dist/core-api/service/collection-type.mjs.map +1 -1
  57. package/dist/core-api/service/single-type.js.map +1 -1
  58. package/dist/core-api/service/single-type.mjs.map +1 -1
  59. package/dist/domain/content-type/index.d.ts.map +1 -1
  60. package/dist/domain/content-type/index.js +17 -1
  61. package/dist/domain/content-type/index.js.map +1 -1
  62. package/dist/domain/content-type/index.mjs +17 -1
  63. package/dist/domain/content-type/index.mjs.map +1 -1
  64. package/dist/domain/module/index.js.map +1 -1
  65. package/dist/domain/module/index.mjs.map +1 -1
  66. package/dist/ee/index.js.map +1 -1
  67. package/dist/ee/index.mjs.map +1 -1
  68. package/dist/ee/license.js +1 -2
  69. package/dist/ee/license.js.map +1 -1
  70. package/dist/ee/license.mjs +1 -2
  71. package/dist/ee/license.mjs.map +1 -1
  72. package/dist/loaders/apis.js.map +1 -1
  73. package/dist/loaders/apis.mjs.map +1 -1
  74. package/dist/loaders/components.js.map +1 -1
  75. package/dist/loaders/components.mjs.map +1 -1
  76. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  77. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  78. package/dist/loaders/plugins/index.js +1 -1
  79. package/dist/loaders/plugins/index.js.map +1 -1
  80. package/dist/loaders/plugins/index.mjs +1 -1
  81. package/dist/loaders/plugins/index.mjs.map +1 -1
  82. package/dist/loaders/src-index.js.map +1 -1
  83. package/dist/loaders/src-index.mjs.map +1 -1
  84. package/dist/middlewares/logger.js.map +1 -1
  85. package/dist/middlewares/logger.mjs.map +1 -1
  86. package/dist/middlewares/response-time.js.map +1 -1
  87. package/dist/middlewares/response-time.mjs.map +1 -1
  88. package/dist/middlewares/security.d.ts.map +1 -1
  89. package/dist/middlewares/security.js +2 -15
  90. package/dist/middlewares/security.js.map +1 -1
  91. package/dist/middlewares/security.mjs +2 -15
  92. package/dist/middlewares/security.mjs.map +1 -1
  93. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +21 -7
  94. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  95. package/dist/migrations/database/5.0.0-discard-drafts.js +1470 -58
  96. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  97. package/dist/migrations/database/5.0.0-discard-drafts.mjs +1471 -59
  98. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  99. package/dist/migrations/first-published-at.d.ts +4 -0
  100. package/dist/migrations/first-published-at.d.ts.map +1 -0
  101. package/dist/migrations/first-published-at.js +51 -0
  102. package/dist/migrations/first-published-at.js.map +1 -0
  103. package/dist/migrations/first-published-at.mjs +49 -0
  104. package/dist/migrations/first-published-at.mjs.map +1 -0
  105. package/dist/migrations/index.d.ts.map +1 -1
  106. package/dist/migrations/index.js +5 -0
  107. package/dist/migrations/index.js.map +1 -1
  108. package/dist/migrations/index.mjs +5 -0
  109. package/dist/migrations/index.mjs.map +1 -1
  110. package/dist/package.json.js +13 -12
  111. package/dist/package.json.js.map +1 -1
  112. package/dist/package.json.mjs +13 -12
  113. package/dist/package.json.mjs.map +1 -1
  114. package/dist/providers/index.d.ts.map +1 -1
  115. package/dist/providers/index.js +2 -0
  116. package/dist/providers/index.js.map +1 -1
  117. package/dist/providers/index.mjs +2 -0
  118. package/dist/providers/index.mjs.map +1 -1
  119. package/dist/providers/session-manager.d.ts +3 -0
  120. package/dist/providers/session-manager.d.ts.map +1 -0
  121. package/dist/providers/session-manager.js +23 -0
  122. package/dist/providers/session-manager.js.map +1 -0
  123. package/dist/providers/session-manager.mjs +21 -0
  124. package/dist/providers/session-manager.mjs.map +1 -0
  125. package/dist/registries/apis.js.map +1 -1
  126. package/dist/registries/apis.mjs.map +1 -1
  127. package/dist/registries/custom-fields.js.map +1 -1
  128. package/dist/registries/custom-fields.mjs.map +1 -1
  129. package/dist/registries/namespace.js.map +1 -1
  130. package/dist/registries/namespace.mjs.map +1 -1
  131. package/dist/registries/plugins.js.map +1 -1
  132. package/dist/registries/plugins.mjs.map +1 -1
  133. package/dist/registries/policies.js.map +1 -1
  134. package/dist/registries/policies.mjs.map +1 -1
  135. package/dist/services/config.js.map +1 -1
  136. package/dist/services/config.mjs.map +1 -1
  137. package/dist/services/content-api/index.d.ts +1 -1
  138. package/dist/services/content-api/index.d.ts.map +1 -1
  139. package/dist/services/content-api/index.js +1 -1
  140. package/dist/services/content-api/index.js.map +1 -1
  141. package/dist/services/content-api/index.mjs +2 -2
  142. package/dist/services/content-api/index.mjs.map +1 -1
  143. package/dist/services/content-api/permissions/index.js.map +1 -1
  144. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  145. package/dist/services/content-source-maps.d.ts +8 -3
  146. package/dist/services/content-source-maps.d.ts.map +1 -1
  147. package/dist/services/content-source-maps.js +71 -82
  148. package/dist/services/content-source-maps.js.map +1 -1
  149. package/dist/services/content-source-maps.mjs +71 -82
  150. package/dist/services/content-source-maps.mjs.map +1 -1
  151. package/dist/services/core-store.js.map +1 -1
  152. package/dist/services/core-store.mjs.map +1 -1
  153. package/dist/services/document-service/components.d.ts +31 -1
  154. package/dist/services/document-service/components.d.ts.map +1 -1
  155. package/dist/services/document-service/components.js +109 -0
  156. package/dist/services/document-service/components.js.map +1 -1
  157. package/dist/services/document-service/components.mjs +107 -1
  158. package/dist/services/document-service/components.mjs.map +1 -1
  159. package/dist/services/document-service/first-published-at.d.ts +7 -0
  160. package/dist/services/document-service/first-published-at.d.ts.map +1 -0
  161. package/dist/services/document-service/first-published-at.js +31 -0
  162. package/dist/services/document-service/first-published-at.js.map +1 -0
  163. package/dist/services/document-service/first-published-at.mjs +28 -0
  164. package/dist/services/document-service/first-published-at.mjs.map +1 -0
  165. package/dist/services/document-service/repository.d.ts.map +1 -1
  166. package/dist/services/document-service/repository.js +12 -5
  167. package/dist/services/document-service/repository.js.map +1 -1
  168. package/dist/services/document-service/repository.mjs +13 -6
  169. package/dist/services/document-service/repository.mjs.map +1 -1
  170. package/dist/services/document-service/transform/fields.js.map +1 -1
  171. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  172. package/dist/services/document-service/transform/id-map.js.map +1 -1
  173. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  174. package/dist/services/document-service/utils/clean-component-join-table.d.ts +7 -0
  175. package/dist/services/document-service/utils/clean-component-join-table.d.ts.map +1 -0
  176. package/dist/services/document-service/utils/clean-component-join-table.js +145 -0
  177. package/dist/services/document-service/utils/clean-component-join-table.js.map +1 -0
  178. package/dist/services/document-service/utils/clean-component-join-table.mjs +143 -0
  179. package/dist/services/document-service/utils/clean-component-join-table.mjs.map +1 -0
  180. package/dist/services/document-service/utils/unidirectional-relations.d.ts +19 -2
  181. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  182. package/dist/services/document-service/utils/unidirectional-relations.js +21 -6
  183. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  184. package/dist/services/document-service/utils/unidirectional-relations.mjs +21 -6
  185. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  186. package/dist/services/entity-service/index.js.map +1 -1
  187. package/dist/services/entity-service/index.mjs.map +1 -1
  188. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  189. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  190. package/dist/services/entity-validator/index.js.map +1 -1
  191. package/dist/services/entity-validator/index.mjs.map +1 -1
  192. package/dist/services/metrics/index.js +2 -1
  193. package/dist/services/metrics/index.js.map +1 -1
  194. package/dist/services/metrics/index.mjs +2 -1
  195. package/dist/services/metrics/index.mjs.map +1 -1
  196. package/dist/services/metrics/middleware.d.ts +2 -1
  197. package/dist/services/metrics/middleware.d.ts.map +1 -1
  198. package/dist/services/metrics/middleware.js +2 -2
  199. package/dist/services/metrics/middleware.js.map +1 -1
  200. package/dist/services/metrics/middleware.mjs +2 -2
  201. package/dist/services/metrics/middleware.mjs.map +1 -1
  202. package/dist/services/metrics/sender.d.ts.map +1 -1
  203. package/dist/services/metrics/sender.js +2 -1
  204. package/dist/services/metrics/sender.js.map +1 -1
  205. package/dist/services/metrics/sender.mjs +2 -1
  206. package/dist/services/metrics/sender.mjs.map +1 -1
  207. package/dist/services/server/compose-endpoint.js.map +1 -1
  208. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  209. package/dist/services/server/index.js.map +1 -1
  210. package/dist/services/server/index.mjs.map +1 -1
  211. package/dist/services/server/middleware.js.map +1 -1
  212. package/dist/services/server/middleware.mjs.map +1 -1
  213. package/dist/services/server/register-routes.js.map +1 -1
  214. package/dist/services/server/register-routes.mjs.map +1 -1
  215. package/dist/services/server/routing.js.map +1 -1
  216. package/dist/services/server/routing.mjs.map +1 -1
  217. package/dist/services/session-manager.d.ts +167 -0
  218. package/dist/services/session-manager.d.ts.map +1 -0
  219. package/dist/services/session-manager.js +529 -0
  220. package/dist/services/session-manager.js.map +1 -0
  221. package/dist/services/session-manager.mjs +526 -0
  222. package/dist/services/session-manager.mjs.map +1 -0
  223. package/dist/services/webhook-runner.js +2 -2
  224. package/dist/services/webhook-runner.js.map +1 -1
  225. package/dist/services/webhook-runner.mjs +2 -2
  226. package/dist/services/webhook-runner.mjs.map +1 -1
  227. package/dist/services/worker-queue.js +2 -2
  228. package/dist/services/worker-queue.js.map +1 -1
  229. package/dist/services/worker-queue.mjs +2 -2
  230. package/dist/services/worker-queue.mjs.map +1 -1
  231. package/dist/utils/fetch.js.map +1 -1
  232. package/dist/utils/fetch.mjs.map +1 -1
  233. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  234. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  235. package/dist/utils/load-config-file.js.map +1 -1
  236. package/dist/utils/load-config-file.mjs.map +1 -1
  237. package/dist/utils/startup-logger.js.map +1 -1
  238. package/dist/utils/startup-logger.mjs.map +1 -1
  239. package/package.json +13 -12
@@ -44,9 +44,6 @@ export declare const loadConfiguration: (opts: StrapiOptions) => {
44
44
  rest: {
45
45
  prefix: string;
46
46
  };
47
- contentSourceMaps: {
48
- enabled: true;
49
- };
50
47
  };
51
48
  } & _.Omit<Record<string, unknown>, "plugins"> & Record<string, unknown>;
52
49
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/configuration/index.ts"],"names":[],"mappings":"AAGA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAUvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAwC/C,eAAO,MAAM,iBAAiB,SAAU,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wEAkDpD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/configuration/index.ts"],"names":[],"mappings":"AAGA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAUvB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAqC/C,eAAO,MAAM,iBAAiB,SAAU,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wEAkDpD,CAAC"}
@@ -47,9 +47,6 @@ const defaultConfig = {
47
47
  api: {
48
48
  rest: {
49
49
  prefix: '/api'
50
- },
51
- contentSourceMaps: {
52
- enabled: true
53
50
  }
54
51
  }
55
52
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/configuration/index.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport os from 'os';\nimport path from 'path';\nimport _ from 'lodash';\nimport { omit } from 'lodash/fp';\nimport dotenv from 'dotenv';\nimport type { Core } from '@strapi/types';\nimport { strings } from '@strapi/utils';\n\nimport { getConfigUrls, getAbsoluteAdminUrl, getAbsoluteServerUrl } from './urls';\nimport loadConfigDir from './config-loader';\nimport { getDirs } from './get-dirs';\n\nimport type { StrapiOptions } from '../Strapi';\nimport { version as strapiVersion } from '../../package.json';\n\ndotenv.config({ path: process.env.ENV_PATH });\n\nprocess.env.NODE_ENV = process.env.NODE_ENV || 'development';\n\nconst defaultConfig = {\n server: {\n host: process.env.HOST || os.hostname() || 'localhost',\n port: Number(process.env.PORT) || 1337,\n proxy: false,\n cron: { enabled: false },\n admin: { autoOpen: false },\n dirs: { public: './public' },\n transfer: {\n remote: {\n enabled: true,\n },\n },\n logger: {\n updates: {\n enabled: true,\n },\n startup: {\n enabled: true,\n },\n },\n } satisfies Partial<Core.Config.Server>,\n admin: {} satisfies Partial<Core.Config.Admin>,\n api: {\n rest: {\n prefix: '/api',\n },\n contentSourceMaps: {\n enabled: true,\n },\n } satisfies Partial<Core.Config.Api>,\n};\n\nexport const loadConfiguration = (opts: StrapiOptions) => {\n const { appDir, distDir, autoReload = false, serveAdminPanel = true } = opts;\n\n const pkgJSON = require(path.resolve(appDir, 'package.json'));\n\n const configDir = path.resolve(distDir || process.cwd(), 'config');\n\n const rootConfig = {\n launchedAt: Date.now(),\n autoReload,\n environment: process.env.NODE_ENV,\n uuid: _.get(pkgJSON, 'strapi.uuid'),\n installId: _.get(pkgJSON, 'strapi.installId'),\n packageJsonStrapi: _.omit(_.get(pkgJSON, 'strapi', {}), 'uuid'),\n info: {\n ...pkgJSON,\n strapi: strapiVersion,\n },\n admin: {\n serveAdminPanel,\n },\n };\n\n // See packages/core/core/src/domain/module/index.ts for plugin config loading\n const baseConfig = omit('plugins', loadConfigDir(configDir)); // plugin config will be loaded later\n\n const envDir = path.resolve(configDir, 'env', process.env.NODE_ENV as string);\n const envConfig = loadConfigDir(envDir);\n\n const config = _.merge(rootConfig, defaultConfig, baseConfig, envConfig);\n\n const { serverUrl, adminUrl } = getConfigUrls(config);\n\n const serverAbsoluteUrl = getAbsoluteServerUrl(config);\n const adminAbsoluteUrl = getAbsoluteAdminUrl(config);\n\n const sameOrigin = new URL(adminAbsoluteUrl).origin === new URL(serverAbsoluteUrl).origin;\n\n const adminPath = sameOrigin\n ? adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '')\n : new URL(adminUrl).pathname;\n\n _.set(config, 'server.url', serverUrl);\n _.set(config, 'server.absoluteUrl', serverAbsoluteUrl);\n _.set(config, 'admin.url', adminUrl);\n _.set(config, 'admin.path', adminPath);\n _.set(config, 'admin.absoluteUrl', adminAbsoluteUrl);\n _.set(config, 'dirs', getDirs(opts, config));\n\n return config;\n};\n"],"names":["dotenv","config","path","process","env","ENV_PATH","NODE_ENV","defaultConfig","server","host","HOST","os","hostname","port","Number","PORT","proxy","cron","enabled","admin","autoOpen","dirs","public","transfer","remote","logger","updates","startup","api","rest","prefix","contentSourceMaps","loadConfiguration","opts","appDir","distDir","autoReload","serveAdminPanel","pkgJSON","require","resolve","configDir","cwd","rootConfig","launchedAt","Date","now","environment","uuid","_","get","installId","packageJsonStrapi","omit","info","strapi","strapiVersion","baseConfig","loadConfigDir","envDir","envConfig","merge","serverUrl","adminUrl","getConfigUrls","serverAbsoluteUrl","getAbsoluteServerUrl","adminAbsoluteUrl","getAbsoluteAdminUrl","sameOrigin","URL","origin","adminPath","replace","strings","getCommonPath","pathname","set","getDirs"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/configuration/index.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport os from 'os';\nimport path from 'path';\nimport _ from 'lodash';\nimport { omit } from 'lodash/fp';\nimport dotenv from 'dotenv';\nimport type { Core } from '@strapi/types';\nimport { strings } from '@strapi/utils';\n\nimport { getConfigUrls, getAbsoluteAdminUrl, getAbsoluteServerUrl } from './urls';\nimport loadConfigDir from './config-loader';\nimport { getDirs } from './get-dirs';\n\nimport type { StrapiOptions } from '../Strapi';\nimport { version as strapiVersion } from '../../package.json';\n\ndotenv.config({ path: process.env.ENV_PATH });\n\nprocess.env.NODE_ENV = process.env.NODE_ENV || 'development';\n\nconst defaultConfig = {\n server: {\n host: process.env.HOST || os.hostname() || 'localhost',\n port: Number(process.env.PORT) || 1337,\n proxy: false,\n cron: { enabled: false },\n admin: { autoOpen: false },\n dirs: { public: './public' },\n transfer: {\n remote: {\n enabled: true,\n },\n },\n logger: {\n updates: {\n enabled: true,\n },\n startup: {\n enabled: true,\n },\n },\n } satisfies Partial<Core.Config.Server>,\n admin: {} satisfies Partial<Core.Config.Admin>,\n api: {\n rest: {\n prefix: '/api',\n },\n } satisfies Partial<Core.Config.Api>,\n};\n\nexport const loadConfiguration = (opts: StrapiOptions) => {\n const { appDir, distDir, autoReload = false, serveAdminPanel = true } = opts;\n\n const pkgJSON = require(path.resolve(appDir, 'package.json'));\n\n const configDir = path.resolve(distDir || process.cwd(), 'config');\n\n const rootConfig = {\n launchedAt: Date.now(),\n autoReload,\n environment: process.env.NODE_ENV,\n uuid: _.get(pkgJSON, 'strapi.uuid'),\n installId: _.get(pkgJSON, 'strapi.installId'),\n packageJsonStrapi: _.omit(_.get(pkgJSON, 'strapi', {}), 'uuid'),\n info: {\n ...pkgJSON,\n strapi: strapiVersion,\n },\n admin: {\n serveAdminPanel,\n },\n };\n\n // See packages/core/core/src/domain/module/index.ts for plugin config loading\n const baseConfig = omit('plugins', loadConfigDir(configDir)); // plugin config will be loaded later\n\n const envDir = path.resolve(configDir, 'env', process.env.NODE_ENV as string);\n const envConfig = loadConfigDir(envDir);\n\n const config = _.merge(rootConfig, defaultConfig, baseConfig, envConfig);\n\n const { serverUrl, adminUrl } = getConfigUrls(config);\n\n const serverAbsoluteUrl = getAbsoluteServerUrl(config);\n const adminAbsoluteUrl = getAbsoluteAdminUrl(config);\n\n const sameOrigin = new URL(adminAbsoluteUrl).origin === new URL(serverAbsoluteUrl).origin;\n\n const adminPath = sameOrigin\n ? adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '')\n : new URL(adminUrl).pathname;\n\n _.set(config, 'server.url', serverUrl);\n _.set(config, 'server.absoluteUrl', serverAbsoluteUrl);\n _.set(config, 'admin.url', adminUrl);\n _.set(config, 'admin.path', adminPath);\n _.set(config, 'admin.absoluteUrl', adminAbsoluteUrl);\n _.set(config, 'dirs', getDirs(opts, config));\n\n return config;\n};\n"],"names":["dotenv","config","path","process","env","ENV_PATH","NODE_ENV","defaultConfig","server","host","HOST","os","hostname","port","Number","PORT","proxy","cron","enabled","admin","autoOpen","dirs","public","transfer","remote","logger","updates","startup","api","rest","prefix","loadConfiguration","opts","appDir","distDir","autoReload","serveAdminPanel","pkgJSON","require","resolve","configDir","cwd","rootConfig","launchedAt","Date","now","environment","uuid","_","get","installId","packageJsonStrapi","omit","info","strapi","strapiVersion","baseConfig","loadConfigDir","envDir","envConfig","merge","serverUrl","adminUrl","getConfigUrls","serverAbsoluteUrl","getAbsoluteServerUrl","adminAbsoluteUrl","getAbsoluteAdminUrl","sameOrigin","URL","origin","adminPath","replace","strings","getCommonPath","pathname","set","getDirs"],"mappings":"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"}
@@ -45,9 +45,6 @@ const defaultConfig = {
45
45
  api: {
46
46
  rest: {
47
47
  prefix: '/api'
48
- },
49
- contentSourceMaps: {
50
- enabled: true
51
48
  }
52
49
  }
53
50
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/configuration/index.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport os from 'os';\nimport path from 'path';\nimport _ from 'lodash';\nimport { omit } from 'lodash/fp';\nimport dotenv from 'dotenv';\nimport type { Core } from '@strapi/types';\nimport { strings } from '@strapi/utils';\n\nimport { getConfigUrls, getAbsoluteAdminUrl, getAbsoluteServerUrl } from './urls';\nimport loadConfigDir from './config-loader';\nimport { getDirs } from './get-dirs';\n\nimport type { StrapiOptions } from '../Strapi';\nimport { version as strapiVersion } from '../../package.json';\n\ndotenv.config({ path: process.env.ENV_PATH });\n\nprocess.env.NODE_ENV = process.env.NODE_ENV || 'development';\n\nconst defaultConfig = {\n server: {\n host: process.env.HOST || os.hostname() || 'localhost',\n port: Number(process.env.PORT) || 1337,\n proxy: false,\n cron: { enabled: false },\n admin: { autoOpen: false },\n dirs: { public: './public' },\n transfer: {\n remote: {\n enabled: true,\n },\n },\n logger: {\n updates: {\n enabled: true,\n },\n startup: {\n enabled: true,\n },\n },\n } satisfies Partial<Core.Config.Server>,\n admin: {} satisfies Partial<Core.Config.Admin>,\n api: {\n rest: {\n prefix: '/api',\n },\n contentSourceMaps: {\n enabled: true,\n },\n } satisfies Partial<Core.Config.Api>,\n};\n\nexport const loadConfiguration = (opts: StrapiOptions) => {\n const { appDir, distDir, autoReload = false, serveAdminPanel = true } = opts;\n\n const pkgJSON = require(path.resolve(appDir, 'package.json'));\n\n const configDir = path.resolve(distDir || process.cwd(), 'config');\n\n const rootConfig = {\n launchedAt: Date.now(),\n autoReload,\n environment: process.env.NODE_ENV,\n uuid: _.get(pkgJSON, 'strapi.uuid'),\n installId: _.get(pkgJSON, 'strapi.installId'),\n packageJsonStrapi: _.omit(_.get(pkgJSON, 'strapi', {}), 'uuid'),\n info: {\n ...pkgJSON,\n strapi: strapiVersion,\n },\n admin: {\n serveAdminPanel,\n },\n };\n\n // See packages/core/core/src/domain/module/index.ts for plugin config loading\n const baseConfig = omit('plugins', loadConfigDir(configDir)); // plugin config will be loaded later\n\n const envDir = path.resolve(configDir, 'env', process.env.NODE_ENV as string);\n const envConfig = loadConfigDir(envDir);\n\n const config = _.merge(rootConfig, defaultConfig, baseConfig, envConfig);\n\n const { serverUrl, adminUrl } = getConfigUrls(config);\n\n const serverAbsoluteUrl = getAbsoluteServerUrl(config);\n const adminAbsoluteUrl = getAbsoluteAdminUrl(config);\n\n const sameOrigin = new URL(adminAbsoluteUrl).origin === new URL(serverAbsoluteUrl).origin;\n\n const adminPath = sameOrigin\n ? adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '')\n : new URL(adminUrl).pathname;\n\n _.set(config, 'server.url', serverUrl);\n _.set(config, 'server.absoluteUrl', serverAbsoluteUrl);\n _.set(config, 'admin.url', adminUrl);\n _.set(config, 'admin.path', adminPath);\n _.set(config, 'admin.absoluteUrl', adminAbsoluteUrl);\n _.set(config, 'dirs', getDirs(opts, config));\n\n return config;\n};\n"],"names":["dotenv","config","path","process","env","ENV_PATH","NODE_ENV","defaultConfig","server","host","HOST","os","hostname","port","Number","PORT","proxy","cron","enabled","admin","autoOpen","dirs","public","transfer","remote","logger","updates","startup","api","rest","prefix","contentSourceMaps","loadConfiguration","opts","appDir","distDir","autoReload","serveAdminPanel","pkgJSON","require","resolve","configDir","cwd","rootConfig","launchedAt","Date","now","environment","uuid","_","get","installId","packageJsonStrapi","omit","info","strapi","strapiVersion","baseConfig","loadConfigDir","envDir","envConfig","merge","serverUrl","adminUrl","getConfigUrls","serverAbsoluteUrl","getAbsoluteServerUrl","adminAbsoluteUrl","getAbsoluteAdminUrl","sameOrigin","URL","origin","adminPath","replace","strings","getCommonPath","pathname","set","getDirs"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/configuration/index.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport os from 'os';\nimport path from 'path';\nimport _ from 'lodash';\nimport { omit } from 'lodash/fp';\nimport dotenv from 'dotenv';\nimport type { Core } from '@strapi/types';\nimport { strings } from '@strapi/utils';\n\nimport { getConfigUrls, getAbsoluteAdminUrl, getAbsoluteServerUrl } from './urls';\nimport loadConfigDir from './config-loader';\nimport { getDirs } from './get-dirs';\n\nimport type { StrapiOptions } from '../Strapi';\nimport { version as strapiVersion } from '../../package.json';\n\ndotenv.config({ path: process.env.ENV_PATH });\n\nprocess.env.NODE_ENV = process.env.NODE_ENV || 'development';\n\nconst defaultConfig = {\n server: {\n host: process.env.HOST || os.hostname() || 'localhost',\n port: Number(process.env.PORT) || 1337,\n proxy: false,\n cron: { enabled: false },\n admin: { autoOpen: false },\n dirs: { public: './public' },\n transfer: {\n remote: {\n enabled: true,\n },\n },\n logger: {\n updates: {\n enabled: true,\n },\n startup: {\n enabled: true,\n },\n },\n } satisfies Partial<Core.Config.Server>,\n admin: {} satisfies Partial<Core.Config.Admin>,\n api: {\n rest: {\n prefix: '/api',\n },\n } satisfies Partial<Core.Config.Api>,\n};\n\nexport const loadConfiguration = (opts: StrapiOptions) => {\n const { appDir, distDir, autoReload = false, serveAdminPanel = true } = opts;\n\n const pkgJSON = require(path.resolve(appDir, 'package.json'));\n\n const configDir = path.resolve(distDir || process.cwd(), 'config');\n\n const rootConfig = {\n launchedAt: Date.now(),\n autoReload,\n environment: process.env.NODE_ENV,\n uuid: _.get(pkgJSON, 'strapi.uuid'),\n installId: _.get(pkgJSON, 'strapi.installId'),\n packageJsonStrapi: _.omit(_.get(pkgJSON, 'strapi', {}), 'uuid'),\n info: {\n ...pkgJSON,\n strapi: strapiVersion,\n },\n admin: {\n serveAdminPanel,\n },\n };\n\n // See packages/core/core/src/domain/module/index.ts for plugin config loading\n const baseConfig = omit('plugins', loadConfigDir(configDir)); // plugin config will be loaded later\n\n const envDir = path.resolve(configDir, 'env', process.env.NODE_ENV as string);\n const envConfig = loadConfigDir(envDir);\n\n const config = _.merge(rootConfig, defaultConfig, baseConfig, envConfig);\n\n const { serverUrl, adminUrl } = getConfigUrls(config);\n\n const serverAbsoluteUrl = getAbsoluteServerUrl(config);\n const adminAbsoluteUrl = getAbsoluteAdminUrl(config);\n\n const sameOrigin = new URL(adminAbsoluteUrl).origin === new URL(serverAbsoluteUrl).origin;\n\n const adminPath = sameOrigin\n ? adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '')\n : new URL(adminUrl).pathname;\n\n _.set(config, 'server.url', serverUrl);\n _.set(config, 'server.absoluteUrl', serverAbsoluteUrl);\n _.set(config, 'admin.url', adminUrl);\n _.set(config, 'admin.path', adminPath);\n _.set(config, 'admin.absoluteUrl', adminAbsoluteUrl);\n _.set(config, 'dirs', getDirs(opts, config));\n\n return config;\n};\n"],"names":["dotenv","config","path","process","env","ENV_PATH","NODE_ENV","defaultConfig","server","host","HOST","os","hostname","port","Number","PORT","proxy","cron","enabled","admin","autoOpen","dirs","public","transfer","remote","logger","updates","startup","api","rest","prefix","loadConfiguration","opts","appDir","distDir","autoReload","serveAdminPanel","pkgJSON","require","resolve","configDir","cwd","rootConfig","launchedAt","Date","now","environment","uuid","_","get","installId","packageJsonStrapi","omit","info","strapi","strapiVersion","baseConfig","loadConfigDir","envDir","envConfig","merge","serverUrl","adminUrl","getConfigUrls","serverAbsoluteUrl","getAbsoluteServerUrl","adminAbsoluteUrl","getAbsoluteAdminUrl","sameOrigin","URL","origin","adminPath","replace","strings","getCommonPath","pathname","set","getDirs"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"urls.js","sources":["../../src/configuration/urls.ts"],"sourcesContent":["import _ from 'lodash';\nimport { strings } from '@strapi/utils';\nimport { isIP } from 'node:net';\n\ninterface ServerConfig {\n url: string;\n host: string;\n port: number | string;\n}\n\nexport const getConfigUrls = (config: Record<string, unknown>, forAdminBuild = false) => {\n const serverConfig = config.server as ServerConfig;\n const adminConfig = config.admin;\n\n // Defines serverUrl value\n let serverUrl = _.get(serverConfig, 'url', '');\n serverUrl = _.trim(serverUrl, '/ ');\n if (typeof serverUrl !== 'string') {\n throw new Error('Invalid server url config. Make sure the url is a string.');\n }\n\n if (serverUrl.startsWith('http')) {\n try {\n serverUrl = _.trim(new URL(serverConfig.url).toString(), '/');\n } catch (e) {\n throw new Error(\n 'Invalid server url config. Make sure the url defined in server.js is valid.'\n );\n }\n } else if (serverUrl !== '') {\n serverUrl = `/${serverUrl}`;\n }\n\n // Defines adminUrl value\n let adminUrl = _.get(adminConfig, 'url', '/admin');\n adminUrl = _.trim(adminUrl, '/ ');\n if (typeof adminUrl !== 'string') {\n throw new Error('Invalid admin url config. Make sure the url is a non-empty string.');\n }\n if (adminUrl.startsWith('http')) {\n try {\n adminUrl = _.trim(new URL(adminUrl).toString(), '/');\n } catch (e) {\n throw new Error('Invalid admin url config. Make sure the url defined in server.js is valid.');\n }\n } else {\n adminUrl = `${serverUrl}/${adminUrl}`;\n }\n\n // Defines adminPath value\n let adminPath = adminUrl;\n if (\n serverUrl.startsWith('http') &&\n adminUrl.startsWith('http') &&\n new URL(adminUrl).origin === new URL(serverUrl).origin &&\n !forAdminBuild\n ) {\n adminPath = adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '');\n adminPath = `/${_.trim(adminPath, '/')}`;\n } else if (adminUrl.startsWith('http')) {\n adminPath = new URL(adminUrl).pathname;\n }\n\n return {\n serverUrl,\n adminUrl,\n adminPath,\n };\n};\n\nconst getAbsoluteUrl =\n (adminOrServer: 'admin' | 'server') =>\n (config: Record<string, unknown>, forAdminBuild = false) => {\n const { serverUrl, adminUrl } = getConfigUrls(config, forAdminBuild);\n const url = adminOrServer === 'server' ? serverUrl : adminUrl;\n\n if (url.startsWith('http')) {\n return url;\n }\n\n const serverConfig = config.server as ServerConfig;\n\n const isLocalhost =\n config.environment === 'development' &&\n ['127.0.0.1', '0.0.0.0', '::1', '::'].includes(serverConfig.host);\n\n if (isLocalhost) {\n return `http://localhost:${serverConfig.port}${url}`;\n }\n\n if (isIP(serverConfig.host) === 6) {\n return `http://[${serverConfig.host}]:${serverConfig.port}${url}`;\n }\n\n return `http://${serverConfig.host}:${serverConfig.port}${url}`;\n };\n\nexport const getAbsoluteAdminUrl = getAbsoluteUrl('admin');\nexport const getAbsoluteServerUrl = getAbsoluteUrl('server');\n"],"names":["getConfigUrls","config","forAdminBuild","serverConfig","server","adminConfig","admin","serverUrl","_","get","trim","Error","startsWith","URL","url","toString","e","adminUrl","adminPath","origin","replace","strings","getCommonPath","pathname","getAbsoluteUrl","adminOrServer","isLocalhost","environment","includes","host","port","isIP","getAbsoluteAdminUrl","getAbsoluteServerUrl"],"mappings":"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"}
1
+ {"version":3,"file":"urls.js","sources":["../../src/configuration/urls.ts"],"sourcesContent":["import _ from 'lodash';\nimport { strings } from '@strapi/utils';\nimport { isIP } from 'node:net';\n\ninterface ServerConfig {\n url: string;\n host: string;\n port: number | string;\n}\n\nexport const getConfigUrls = (config: Record<string, unknown>, forAdminBuild = false) => {\n const serverConfig = config.server as ServerConfig;\n const adminConfig = config.admin;\n\n // Defines serverUrl value\n let serverUrl = _.get(serverConfig, 'url', '');\n serverUrl = _.trim(serverUrl, '/ ');\n if (typeof serverUrl !== 'string') {\n throw new Error('Invalid server url config. Make sure the url is a string.');\n }\n\n if (serverUrl.startsWith('http')) {\n try {\n serverUrl = _.trim(new URL(serverConfig.url).toString(), '/');\n } catch (e) {\n throw new Error(\n 'Invalid server url config. Make sure the url defined in server.js is valid.'\n );\n }\n } else if (serverUrl !== '') {\n serverUrl = `/${serverUrl}`;\n }\n\n // Defines adminUrl value\n let adminUrl = _.get(adminConfig, 'url', '/admin');\n adminUrl = _.trim(adminUrl, '/ ');\n if (typeof adminUrl !== 'string') {\n throw new Error('Invalid admin url config. Make sure the url is a non-empty string.');\n }\n if (adminUrl.startsWith('http')) {\n try {\n adminUrl = _.trim(new URL(adminUrl).toString(), '/');\n } catch (e) {\n throw new Error('Invalid admin url config. Make sure the url defined in server.js is valid.');\n }\n } else {\n adminUrl = `${serverUrl}/${adminUrl}`;\n }\n\n // Defines adminPath value\n let adminPath = adminUrl;\n if (\n serverUrl.startsWith('http') &&\n adminUrl.startsWith('http') &&\n new URL(adminUrl).origin === new URL(serverUrl).origin &&\n !forAdminBuild\n ) {\n adminPath = adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '');\n adminPath = `/${_.trim(adminPath, '/')}`;\n } else if (adminUrl.startsWith('http')) {\n adminPath = new URL(adminUrl).pathname;\n }\n\n return {\n serverUrl,\n adminUrl,\n adminPath,\n };\n};\n\nconst getAbsoluteUrl =\n (adminOrServer: 'admin' | 'server') =>\n (config: Record<string, unknown>, forAdminBuild = false) => {\n const { serverUrl, adminUrl } = getConfigUrls(config, forAdminBuild);\n const url = adminOrServer === 'server' ? serverUrl : adminUrl;\n\n if (url.startsWith('http')) {\n return url;\n }\n\n const serverConfig = config.server as ServerConfig;\n\n const isLocalhost =\n config.environment === 'development' &&\n ['127.0.0.1', '0.0.0.0', '::1', '::'].includes(serverConfig.host);\n\n if (isLocalhost) {\n return `http://localhost:${serverConfig.port}${url}`;\n }\n\n if (isIP(serverConfig.host) === 6) {\n return `http://[${serverConfig.host}]:${serverConfig.port}${url}`;\n }\n\n return `http://${serverConfig.host}:${serverConfig.port}${url}`;\n };\n\nexport const getAbsoluteAdminUrl = getAbsoluteUrl('admin');\nexport const getAbsoluteServerUrl = getAbsoluteUrl('server');\n"],"names":["getConfigUrls","config","forAdminBuild","serverConfig","server","adminConfig","admin","serverUrl","_","get","trim","Error","startsWith","URL","url","toString","e","adminUrl","adminPath","origin","replace","strings","getCommonPath","pathname","getAbsoluteUrl","adminOrServer","isLocalhost","environment","includes","host","port","isIP","getAbsoluteAdminUrl","getAbsoluteServerUrl"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"urls.mjs","sources":["../../src/configuration/urls.ts"],"sourcesContent":["import _ from 'lodash';\nimport { strings } from '@strapi/utils';\nimport { isIP } from 'node:net';\n\ninterface ServerConfig {\n url: string;\n host: string;\n port: number | string;\n}\n\nexport const getConfigUrls = (config: Record<string, unknown>, forAdminBuild = false) => {\n const serverConfig = config.server as ServerConfig;\n const adminConfig = config.admin;\n\n // Defines serverUrl value\n let serverUrl = _.get(serverConfig, 'url', '');\n serverUrl = _.trim(serverUrl, '/ ');\n if (typeof serverUrl !== 'string') {\n throw new Error('Invalid server url config. Make sure the url is a string.');\n }\n\n if (serverUrl.startsWith('http')) {\n try {\n serverUrl = _.trim(new URL(serverConfig.url).toString(), '/');\n } catch (e) {\n throw new Error(\n 'Invalid server url config. Make sure the url defined in server.js is valid.'\n );\n }\n } else if (serverUrl !== '') {\n serverUrl = `/${serverUrl}`;\n }\n\n // Defines adminUrl value\n let adminUrl = _.get(adminConfig, 'url', '/admin');\n adminUrl = _.trim(adminUrl, '/ ');\n if (typeof adminUrl !== 'string') {\n throw new Error('Invalid admin url config. Make sure the url is a non-empty string.');\n }\n if (adminUrl.startsWith('http')) {\n try {\n adminUrl = _.trim(new URL(adminUrl).toString(), '/');\n } catch (e) {\n throw new Error('Invalid admin url config. Make sure the url defined in server.js is valid.');\n }\n } else {\n adminUrl = `${serverUrl}/${adminUrl}`;\n }\n\n // Defines adminPath value\n let adminPath = adminUrl;\n if (\n serverUrl.startsWith('http') &&\n adminUrl.startsWith('http') &&\n new URL(adminUrl).origin === new URL(serverUrl).origin &&\n !forAdminBuild\n ) {\n adminPath = adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '');\n adminPath = `/${_.trim(adminPath, '/')}`;\n } else if (adminUrl.startsWith('http')) {\n adminPath = new URL(adminUrl).pathname;\n }\n\n return {\n serverUrl,\n adminUrl,\n adminPath,\n };\n};\n\nconst getAbsoluteUrl =\n (adminOrServer: 'admin' | 'server') =>\n (config: Record<string, unknown>, forAdminBuild = false) => {\n const { serverUrl, adminUrl } = getConfigUrls(config, forAdminBuild);\n const url = adminOrServer === 'server' ? serverUrl : adminUrl;\n\n if (url.startsWith('http')) {\n return url;\n }\n\n const serverConfig = config.server as ServerConfig;\n\n const isLocalhost =\n config.environment === 'development' &&\n ['127.0.0.1', '0.0.0.0', '::1', '::'].includes(serverConfig.host);\n\n if (isLocalhost) {\n return `http://localhost:${serverConfig.port}${url}`;\n }\n\n if (isIP(serverConfig.host) === 6) {\n return `http://[${serverConfig.host}]:${serverConfig.port}${url}`;\n }\n\n return `http://${serverConfig.host}:${serverConfig.port}${url}`;\n };\n\nexport const getAbsoluteAdminUrl = getAbsoluteUrl('admin');\nexport const getAbsoluteServerUrl = getAbsoluteUrl('server');\n"],"names":["getConfigUrls","config","forAdminBuild","serverConfig","server","adminConfig","admin","serverUrl","_","get","trim","Error","startsWith","URL","url","toString","e","adminUrl","adminPath","origin","replace","strings","getCommonPath","pathname","getAbsoluteUrl","adminOrServer","isLocalhost","environment","includes","host","port","isIP","getAbsoluteAdminUrl","getAbsoluteServerUrl"],"mappings":";;;;AAUaA,MAAAA,aAAAA,GAAgB,CAACC,MAAAA,EAAiCC,gBAAgB,KAAK,GAAA;IAClF,MAAMC,YAAAA,GAAeF,OAAOG,MAAM;IAClC,MAAMC,WAAAA,GAAcJ,OAAOK,KAAK;;AAGhC,IAAA,IAAIC,SAAYC,GAAAA,CAAAA,CAAEC,GAAG,CAACN,cAAc,KAAO,EAAA,EAAA,CAAA;IAC3CI,SAAYC,GAAAA,CAAAA,CAAEE,IAAI,CAACH,SAAW,EAAA,IAAA,CAAA;IAC9B,IAAI,OAAOA,cAAc,QAAU,EAAA;AACjC,QAAA,MAAM,IAAII,KAAM,CAAA,2DAAA,CAAA;AAClB;IAEA,IAAIJ,SAAAA,CAAUK,UAAU,CAAC,MAAS,CAAA,EAAA;QAChC,IAAI;YACFL,SAAYC,GAAAA,CAAAA,CAAEE,IAAI,CAAC,IAAIG,IAAIV,YAAaW,CAAAA,GAAG,CAAEC,CAAAA,QAAQ,EAAI,EAAA,GAAA,CAAA;AAC3D,SAAA,CAAE,OAAOC,CAAG,EAAA;AACV,YAAA,MAAM,IAAIL,KACR,CAAA,6EAAA,CAAA;AAEJ;KACK,MAAA,IAAIJ,cAAc,EAAI,EAAA;AAC3BA,QAAAA,SAAAA,GAAY,CAAC,CAAC,EAAEA,SAAAA,CAAU,CAAC;AAC7B;;AAGA,IAAA,IAAIU,QAAWT,GAAAA,CAAAA,CAAEC,GAAG,CAACJ,aAAa,KAAO,EAAA,QAAA,CAAA;IACzCY,QAAWT,GAAAA,CAAAA,CAAEE,IAAI,CAACO,QAAU,EAAA,IAAA,CAAA;IAC5B,IAAI,OAAOA,aAAa,QAAU,EAAA;AAChC,QAAA,MAAM,IAAIN,KAAM,CAAA,oEAAA,CAAA;AAClB;IACA,IAAIM,QAAAA,CAASL,UAAU,CAAC,MAAS,CAAA,EAAA;QAC/B,IAAI;AACFK,YAAAA,QAAAA,GAAWT,EAAEE,IAAI,CAAC,IAAIG,GAAII,CAAAA,QAAAA,CAAAA,CAAUF,QAAQ,EAAI,EAAA,GAAA,CAAA;AAClD,SAAA,CAAE,OAAOC,CAAG,EAAA;AACV,YAAA,MAAM,IAAIL,KAAM,CAAA,4EAAA,CAAA;AAClB;KACK,MAAA;AACLM,QAAAA,QAAAA,GAAW,CAAC,EAAEV,SAAAA,CAAU,CAAC,EAAEU,SAAS,CAAC;AACvC;;AAGA,IAAA,IAAIC,SAAYD,GAAAA,QAAAA;AAChB,IAAA,IACEV,UAAUK,UAAU,CAAC,WACrBK,QAASL,CAAAA,UAAU,CAAC,MACpB,CAAA,IAAA,IAAIC,IAAII,QAAUE,CAAAA,CAAAA,MAAM,KAAK,IAAIN,GAAAA,CAAIN,WAAWY,MAAM,IACtD,CAACjB,aACD,EAAA;AACAgB,QAAAA,SAAAA,GAAYD,SAASG,OAAO,CAACC,QAAQC,aAAa,CAACf,WAAWU,QAAW,CAAA,EAAA,EAAA,CAAA;QACzEC,SAAY,GAAA,CAAC,CAAC,EAAEV,CAAAA,CAAEE,IAAI,CAACQ,SAAAA,EAAW,KAAK,CAAC;AAC1C,KAAA,MAAO,IAAID,QAAAA,CAASL,UAAU,CAAC,MAAS,CAAA,EAAA;QACtCM,SAAY,GAAA,IAAIL,GAAII,CAAAA,QAAAA,CAAAA,CAAUM,QAAQ;AACxC;IAEA,OAAO;AACLhB,QAAAA,SAAAA;AACAU,QAAAA,QAAAA;AACAC,QAAAA;AACF,KAAA;AACF;AAEA,MAAMM,iBACJ,CAACC,aAAAA,GACD,CAACxB,MAAAA,EAAiCC,gBAAgB,KAAK,GAAA;AACrD,QAAA,MAAM,EAAEK,SAAS,EAAEU,QAAQ,EAAE,GAAGjB,cAAcC,MAAQC,EAAAA,aAAAA,CAAAA;QACtD,MAAMY,GAAAA,GAAMW,aAAkB,KAAA,QAAA,GAAWlB,SAAYU,GAAAA,QAAAA;QAErD,IAAIH,GAAAA,CAAIF,UAAU,CAAC,MAAS,CAAA,EAAA;YAC1B,OAAOE,GAAAA;AACT;QAEA,MAAMX,YAAAA,GAAeF,OAAOG,MAAM;AAElC,QAAA,MAAMsB,WACJzB,GAAAA,MAAAA,CAAO0B,WAAW,KAAK,aACvB,IAAA;AAAC,YAAA,WAAA;AAAa,YAAA,SAAA;AAAW,YAAA,KAAA;AAAO,YAAA;SAAK,CAACC,QAAQ,CAACzB,YAAAA,CAAa0B,IAAI,CAAA;AAElE,QAAA,IAAIH,WAAa,EAAA;YACf,OAAO,CAAC,iBAAiB,EAAEvB,YAAAA,CAAa2B,IAAI,CAAC,EAAEhB,IAAI,CAAC;AACtD;AAEA,QAAA,IAAIiB,IAAK5B,CAAAA,YAAAA,CAAa0B,IAAI,CAAA,KAAM,CAAG,EAAA;AACjC,YAAA,OAAO,CAAC,QAAQ,EAAE1B,YAAAA,CAAa0B,IAAI,CAAC,EAAE,EAAE1B,YAAa2B,CAAAA,IAAI,CAAC,EAAEhB,IAAI,CAAC;AACnE;AAEA,QAAA,OAAO,CAAC,OAAO,EAAEX,YAAAA,CAAa0B,IAAI,CAAC,CAAC,EAAE1B,YAAa2B,CAAAA,IAAI,CAAC,EAAEhB,IAAI,CAAC;AACjE,KAAA;AAEK,MAAMkB,mBAAsBR,GAAAA,cAAAA,CAAe,OAAS;AACpD,MAAMS,oBAAuBT,GAAAA,cAAAA,CAAe,QAAU;;;;"}
1
+ {"version":3,"file":"urls.mjs","sources":["../../src/configuration/urls.ts"],"sourcesContent":["import _ from 'lodash';\nimport { strings } from '@strapi/utils';\nimport { isIP } from 'node:net';\n\ninterface ServerConfig {\n url: string;\n host: string;\n port: number | string;\n}\n\nexport const getConfigUrls = (config: Record<string, unknown>, forAdminBuild = false) => {\n const serverConfig = config.server as ServerConfig;\n const adminConfig = config.admin;\n\n // Defines serverUrl value\n let serverUrl = _.get(serverConfig, 'url', '');\n serverUrl = _.trim(serverUrl, '/ ');\n if (typeof serverUrl !== 'string') {\n throw new Error('Invalid server url config. Make sure the url is a string.');\n }\n\n if (serverUrl.startsWith('http')) {\n try {\n serverUrl = _.trim(new URL(serverConfig.url).toString(), '/');\n } catch (e) {\n throw new Error(\n 'Invalid server url config. Make sure the url defined in server.js is valid.'\n );\n }\n } else if (serverUrl !== '') {\n serverUrl = `/${serverUrl}`;\n }\n\n // Defines adminUrl value\n let adminUrl = _.get(adminConfig, 'url', '/admin');\n adminUrl = _.trim(adminUrl, '/ ');\n if (typeof adminUrl !== 'string') {\n throw new Error('Invalid admin url config. Make sure the url is a non-empty string.');\n }\n if (adminUrl.startsWith('http')) {\n try {\n adminUrl = _.trim(new URL(adminUrl).toString(), '/');\n } catch (e) {\n throw new Error('Invalid admin url config. Make sure the url defined in server.js is valid.');\n }\n } else {\n adminUrl = `${serverUrl}/${adminUrl}`;\n }\n\n // Defines adminPath value\n let adminPath = adminUrl;\n if (\n serverUrl.startsWith('http') &&\n adminUrl.startsWith('http') &&\n new URL(adminUrl).origin === new URL(serverUrl).origin &&\n !forAdminBuild\n ) {\n adminPath = adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '');\n adminPath = `/${_.trim(adminPath, '/')}`;\n } else if (adminUrl.startsWith('http')) {\n adminPath = new URL(adminUrl).pathname;\n }\n\n return {\n serverUrl,\n adminUrl,\n adminPath,\n };\n};\n\nconst getAbsoluteUrl =\n (adminOrServer: 'admin' | 'server') =>\n (config: Record<string, unknown>, forAdminBuild = false) => {\n const { serverUrl, adminUrl } = getConfigUrls(config, forAdminBuild);\n const url = adminOrServer === 'server' ? serverUrl : adminUrl;\n\n if (url.startsWith('http')) {\n return url;\n }\n\n const serverConfig = config.server as ServerConfig;\n\n const isLocalhost =\n config.environment === 'development' &&\n ['127.0.0.1', '0.0.0.0', '::1', '::'].includes(serverConfig.host);\n\n if (isLocalhost) {\n return `http://localhost:${serverConfig.port}${url}`;\n }\n\n if (isIP(serverConfig.host) === 6) {\n return `http://[${serverConfig.host}]:${serverConfig.port}${url}`;\n }\n\n return `http://${serverConfig.host}:${serverConfig.port}${url}`;\n };\n\nexport const getAbsoluteAdminUrl = getAbsoluteUrl('admin');\nexport const getAbsoluteServerUrl = getAbsoluteUrl('server');\n"],"names":["getConfigUrls","config","forAdminBuild","serverConfig","server","adminConfig","admin","serverUrl","_","get","trim","Error","startsWith","URL","url","toString","e","adminUrl","adminPath","origin","replace","strings","getCommonPath","pathname","getAbsoluteUrl","adminOrServer","isLocalhost","environment","includes","host","port","isIP","getAbsoluteAdminUrl","getAbsoluteServerUrl"],"mappings":";;;;AAUaA,MAAAA,aAAAA,GAAgB,CAACC,MAAAA,EAAiCC,gBAAgB,KAAK,GAAA;IAClF,MAAMC,YAAAA,GAAeF,OAAOG,MAAM;IAClC,MAAMC,WAAAA,GAAcJ,OAAOK,KAAK;;AAGhC,IAAA,IAAIC,SAAYC,GAAAA,CAAAA,CAAEC,GAAG,CAACN,cAAc,KAAO,EAAA,EAAA,CAAA;IAC3CI,SAAYC,GAAAA,CAAAA,CAAEE,IAAI,CAACH,SAAW,EAAA,IAAA,CAAA;IAC9B,IAAI,OAAOA,cAAc,QAAU,EAAA;AACjC,QAAA,MAAM,IAAII,KAAM,CAAA,2DAAA,CAAA;AAClB;IAEA,IAAIJ,SAAAA,CAAUK,UAAU,CAAC,MAAS,CAAA,EAAA;QAChC,IAAI;YACFL,SAAYC,GAAAA,CAAAA,CAAEE,IAAI,CAAC,IAAIG,IAAIV,YAAaW,CAAAA,GAAG,CAAEC,CAAAA,QAAQ,EAAI,EAAA,GAAA,CAAA;AAC3D,SAAA,CAAE,OAAOC,CAAG,EAAA;AACV,YAAA,MAAM,IAAIL,KACR,CAAA,6EAAA,CAAA;AAEJ;KACK,MAAA,IAAIJ,cAAc,EAAI,EAAA;QAC3BA,SAAY,GAAA,CAAC,CAAC,EAAEA,SAAW,CAAA,CAAA;AAC7B;;AAGA,IAAA,IAAIU,QAAWT,GAAAA,CAAAA,CAAEC,GAAG,CAACJ,aAAa,KAAO,EAAA,QAAA,CAAA;IACzCY,QAAWT,GAAAA,CAAAA,CAAEE,IAAI,CAACO,QAAU,EAAA,IAAA,CAAA;IAC5B,IAAI,OAAOA,aAAa,QAAU,EAAA;AAChC,QAAA,MAAM,IAAIN,KAAM,CAAA,oEAAA,CAAA;AAClB;IACA,IAAIM,QAAAA,CAASL,UAAU,CAAC,MAAS,CAAA,EAAA;QAC/B,IAAI;AACFK,YAAAA,QAAAA,GAAWT,EAAEE,IAAI,CAAC,IAAIG,GAAII,CAAAA,QAAAA,CAAAA,CAAUF,QAAQ,EAAI,EAAA,GAAA,CAAA;AAClD,SAAA,CAAE,OAAOC,CAAG,EAAA;AACV,YAAA,MAAM,IAAIL,KAAM,CAAA,4EAAA,CAAA;AAClB;KACK,MAAA;AACLM,QAAAA,QAAAA,GAAW,CAAGV,EAAAA,SAAAA,CAAU,CAAC,EAAEU,QAAU,CAAA,CAAA;AACvC;;AAGA,IAAA,IAAIC,SAAYD,GAAAA,QAAAA;AAChB,IAAA,IACEV,UAAUK,UAAU,CAAC,WACrBK,QAASL,CAAAA,UAAU,CAAC,MACpB,CAAA,IAAA,IAAIC,IAAII,QAAUE,CAAAA,CAAAA,MAAM,KAAK,IAAIN,GAAAA,CAAIN,WAAWY,MAAM,IACtD,CAACjB,aACD,EAAA;AACAgB,QAAAA,SAAAA,GAAYD,SAASG,OAAO,CAACC,QAAQC,aAAa,CAACf,WAAWU,QAAW,CAAA,EAAA,EAAA,CAAA;AACzEC,QAAAA,SAAAA,GAAY,CAAC,CAAC,EAAEV,EAAEE,IAAI,CAACQ,WAAW,GAAM,CAAA,CAAA,CAAA;AAC1C,KAAA,MAAO,IAAID,QAAAA,CAASL,UAAU,CAAC,MAAS,CAAA,EAAA;QACtCM,SAAY,GAAA,IAAIL,GAAII,CAAAA,QAAAA,CAAAA,CAAUM,QAAQ;AACxC;IAEA,OAAO;AACLhB,QAAAA,SAAAA;AACAU,QAAAA,QAAAA;AACAC,QAAAA;AACF,KAAA;AACF;AAEA,MAAMM,iBACJ,CAACC,aAAAA,GACD,CAACxB,MAAAA,EAAiCC,gBAAgB,KAAK,GAAA;AACrD,QAAA,MAAM,EAAEK,SAAS,EAAEU,QAAQ,EAAE,GAAGjB,cAAcC,MAAQC,EAAAA,aAAAA,CAAAA;QACtD,MAAMY,GAAAA,GAAMW,aAAkB,KAAA,QAAA,GAAWlB,SAAYU,GAAAA,QAAAA;QAErD,IAAIH,GAAAA,CAAIF,UAAU,CAAC,MAAS,CAAA,EAAA;YAC1B,OAAOE,GAAAA;AACT;QAEA,MAAMX,YAAAA,GAAeF,OAAOG,MAAM;AAElC,QAAA,MAAMsB,WACJzB,GAAAA,MAAAA,CAAO0B,WAAW,KAAK,aACvB,IAAA;AAAC,YAAA,WAAA;AAAa,YAAA,SAAA;AAAW,YAAA,KAAA;AAAO,YAAA;SAAK,CAACC,QAAQ,CAACzB,YAAAA,CAAa0B,IAAI,CAAA;AAElE,QAAA,IAAIH,WAAa,EAAA;AACf,YAAA,OAAO,CAAC,iBAAiB,EAAEvB,YAAa2B,CAAAA,IAAI,GAAGhB,GAAK,CAAA,CAAA;AACtD;AAEA,QAAA,IAAIiB,IAAK5B,CAAAA,YAAAA,CAAa0B,IAAI,CAAA,KAAM,CAAG,EAAA;YACjC,OAAO,CAAC,QAAQ,EAAE1B,YAAa0B,CAAAA,IAAI,CAAC,EAAE,EAAE1B,YAAAA,CAAa2B,IAAI,CAAA,EAAGhB,GAAK,CAAA,CAAA;AACnE;QAEA,OAAO,CAAC,OAAO,EAAEX,YAAa0B,CAAAA,IAAI,CAAC,CAAC,EAAE1B,YAAAA,CAAa2B,IAAI,CAAA,EAAGhB,GAAK,CAAA,CAAA;AACjE,KAAA;AAEK,MAAMkB,mBAAsBR,GAAAA,cAAAA,CAAe,OAAS;AACpD,MAAMS,oBAAuBT,GAAAA,cAAAA,CAAe,QAAU;;;;"}
@@ -0,0 +1,3 @@
1
+ import type { Algorithm } from 'jsonwebtoken';
2
+ export declare const DEFAULT_ALGORITHM: Algorithm;
3
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,eAAO,MAAM,iBAAiB,EAAE,SAAmB,CAAC"}
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ const DEFAULT_ALGORITHM = 'HS256';
4
+
5
+ exports.DEFAULT_ALGORITHM = DEFAULT_ALGORITHM;
6
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../src/constants.ts"],"sourcesContent":["import type { Algorithm } from 'jsonwebtoken';\n\nexport const DEFAULT_ALGORITHM: Algorithm = 'HS256';\n"],"names":["DEFAULT_ALGORITHM"],"mappings":";;AAEO,MAAMA,oBAA+B;;;;"}
@@ -0,0 +1,4 @@
1
+ const DEFAULT_ALGORITHM = 'HS256';
2
+
3
+ export { DEFAULT_ALGORITHM };
4
+ //# sourceMappingURL=constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.mjs","sources":["../src/constants.ts"],"sourcesContent":["import type { Algorithm } from 'jsonwebtoken';\n\nexport const DEFAULT_ALGORITHM: Algorithm = 'HS256';\n"],"names":["DEFAULT_ALGORITHM"],"mappings":"AAEO,MAAMA,oBAA+B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sources":["../src/container.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport class Container implements Core.Container {\n private registerMap = new Map<string, unknown>();\n\n private serviceMap = new Map();\n\n add(name: string, resolver: unknown) {\n if (this.registerMap.has(name)) {\n throw new Error(`Cannot register already registered service ${name}`);\n }\n\n this.registerMap.set(name, resolver);\n return this;\n }\n\n get(name: string, args?: unknown) {\n // TODO: handle singleton vs instantiation everytime\n if (this.serviceMap.has(name)) {\n return this.serviceMap.get(name);\n }\n\n if (this.registerMap.has(name)) {\n const resolver = this.registerMap.get(name);\n\n if (typeof resolver === 'function') {\n this.serviceMap.set(name, resolver(this, args));\n } else {\n this.serviceMap.set(name, resolver);\n }\n\n return this.serviceMap.get(name);\n }\n\n throw new Error(`Could not resolve service ${name}`);\n }\n}\n"],"names":["Container","add","name","resolver","registerMap","has","Error","set","get","args","serviceMap","Map"],"mappings":";;AAEO,MAAMA,SAAAA,CAAAA;IAKXC,GAAIC,CAAAA,IAAY,EAAEC,QAAiB,EAAE;AACnC,QAAA,IAAI,IAAI,CAACC,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAM,IAAII,KAAM,CAAA,CAAC,2CAA2C,EAAEJ,KAAK,CAAC,CAAA;AACtE;AAEA,QAAA,IAAI,CAACE,WAAW,CAACG,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC3B,QAAA,OAAO,IAAI;AACb;IAEAK,GAAIN,CAAAA,IAAY,EAAEO,IAAc,EAAE;;AAEhC,QAAA,IAAI,IAAI,CAACC,UAAU,CAACL,GAAG,CAACH,IAAO,CAAA,EAAA;AAC7B,YAAA,OAAO,IAAI,CAACQ,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,IAAI,IAAI,CAACE,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAMC,WAAW,IAAI,CAACC,WAAW,CAACI,GAAG,CAACN,IAAAA,CAAAA;YAEtC,IAAI,OAAOC,aAAa,UAAY,EAAA;gBAClC,IAAI,CAACO,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAS,IAAI,EAAEM,IAAAA,CAAAA,CAAAA;aACpC,MAAA;AACL,gBAAA,IAAI,CAACC,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC5B;AAEA,YAAA,OAAO,IAAI,CAACO,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,MAAM,IAAII,KAAM,CAAA,CAAC,0BAA0B,EAAEJ,KAAK,CAAC,CAAA;AACrD;;AAhCQE,QAAAA,IAAAA,CAAAA,WAAAA,GAAc,IAAIO,GAAAA,EAAAA;AAElBD,QAAAA,IAAAA,CAAAA,UAAAA,GAAa,IAAIC,GAAAA,EAAAA;;AA+B3B;;;;"}
1
+ {"version":3,"file":"container.js","sources":["../src/container.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport class Container implements Core.Container {\n private registerMap = new Map<string, unknown>();\n\n private serviceMap = new Map();\n\n add(name: string, resolver: unknown) {\n if (this.registerMap.has(name)) {\n throw new Error(`Cannot register already registered service ${name}`);\n }\n\n this.registerMap.set(name, resolver);\n return this;\n }\n\n get(name: string, args?: unknown) {\n // TODO: handle singleton vs instantiation everytime\n if (this.serviceMap.has(name)) {\n return this.serviceMap.get(name);\n }\n\n if (this.registerMap.has(name)) {\n const resolver = this.registerMap.get(name);\n\n if (typeof resolver === 'function') {\n this.serviceMap.set(name, resolver(this, args));\n } else {\n this.serviceMap.set(name, resolver);\n }\n\n return this.serviceMap.get(name);\n }\n\n throw new Error(`Could not resolve service ${name}`);\n }\n}\n"],"names":["Container","add","name","resolver","registerMap","has","Error","set","get","args","serviceMap","Map"],"mappings":";;AAEO,MAAMA,SAAAA,CAAAA;IAKXC,GAAIC,CAAAA,IAAY,EAAEC,QAAiB,EAAE;AACnC,QAAA,IAAI,IAAI,CAACC,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAM,IAAII,KAAAA,CAAM,CAAC,2CAA2C,EAAEJ,IAAM,CAAA,CAAA,CAAA;AACtE;AAEA,QAAA,IAAI,CAACE,WAAW,CAACG,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC3B,QAAA,OAAO,IAAI;AACb;IAEAK,GAAIN,CAAAA,IAAY,EAAEO,IAAc,EAAE;;AAEhC,QAAA,IAAI,IAAI,CAACC,UAAU,CAACL,GAAG,CAACH,IAAO,CAAA,EAAA;AAC7B,YAAA,OAAO,IAAI,CAACQ,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,IAAI,IAAI,CAACE,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAMC,WAAW,IAAI,CAACC,WAAW,CAACI,GAAG,CAACN,IAAAA,CAAAA;YAEtC,IAAI,OAAOC,aAAa,UAAY,EAAA;gBAClC,IAAI,CAACO,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAS,IAAI,EAAEM,IAAAA,CAAAA,CAAAA;aACpC,MAAA;AACL,gBAAA,IAAI,CAACC,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC5B;AAEA,YAAA,OAAO,IAAI,CAACO,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,MAAM,IAAII,KAAAA,CAAM,CAAC,0BAA0B,EAAEJ,IAAM,CAAA,CAAA,CAAA;AACrD;;AAhCQE,QAAAA,IAAAA,CAAAA,WAAAA,GAAc,IAAIO,GAAAA,EAAAA;AAElBD,QAAAA,IAAAA,CAAAA,UAAAA,GAAa,IAAIC,GAAAA,EAAAA;;AA+B3B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"container.mjs","sources":["../src/container.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport class Container implements Core.Container {\n private registerMap = new Map<string, unknown>();\n\n private serviceMap = new Map();\n\n add(name: string, resolver: unknown) {\n if (this.registerMap.has(name)) {\n throw new Error(`Cannot register already registered service ${name}`);\n }\n\n this.registerMap.set(name, resolver);\n return this;\n }\n\n get(name: string, args?: unknown) {\n // TODO: handle singleton vs instantiation everytime\n if (this.serviceMap.has(name)) {\n return this.serviceMap.get(name);\n }\n\n if (this.registerMap.has(name)) {\n const resolver = this.registerMap.get(name);\n\n if (typeof resolver === 'function') {\n this.serviceMap.set(name, resolver(this, args));\n } else {\n this.serviceMap.set(name, resolver);\n }\n\n return this.serviceMap.get(name);\n }\n\n throw new Error(`Could not resolve service ${name}`);\n }\n}\n"],"names":["Container","add","name","resolver","registerMap","has","Error","set","get","args","serviceMap","Map"],"mappings":"AAEO,MAAMA,SAAAA,CAAAA;IAKXC,GAAIC,CAAAA,IAAY,EAAEC,QAAiB,EAAE;AACnC,QAAA,IAAI,IAAI,CAACC,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAM,IAAII,KAAM,CAAA,CAAC,2CAA2C,EAAEJ,KAAK,CAAC,CAAA;AACtE;AAEA,QAAA,IAAI,CAACE,WAAW,CAACG,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC3B,QAAA,OAAO,IAAI;AACb;IAEAK,GAAIN,CAAAA,IAAY,EAAEO,IAAc,EAAE;;AAEhC,QAAA,IAAI,IAAI,CAACC,UAAU,CAACL,GAAG,CAACH,IAAO,CAAA,EAAA;AAC7B,YAAA,OAAO,IAAI,CAACQ,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,IAAI,IAAI,CAACE,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAMC,WAAW,IAAI,CAACC,WAAW,CAACI,GAAG,CAACN,IAAAA,CAAAA;YAEtC,IAAI,OAAOC,aAAa,UAAY,EAAA;gBAClC,IAAI,CAACO,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAS,IAAI,EAAEM,IAAAA,CAAAA,CAAAA;aACpC,MAAA;AACL,gBAAA,IAAI,CAACC,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC5B;AAEA,YAAA,OAAO,IAAI,CAACO,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,MAAM,IAAII,KAAM,CAAA,CAAC,0BAA0B,EAAEJ,KAAK,CAAC,CAAA;AACrD;;AAhCQE,QAAAA,IAAAA,CAAAA,WAAAA,GAAc,IAAIO,GAAAA,EAAAA;AAElBD,QAAAA,IAAAA,CAAAA,UAAAA,GAAa,IAAIC,GAAAA,EAAAA;;AA+B3B;;;;"}
1
+ {"version":3,"file":"container.mjs","sources":["../src/container.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport class Container implements Core.Container {\n private registerMap = new Map<string, unknown>();\n\n private serviceMap = new Map();\n\n add(name: string, resolver: unknown) {\n if (this.registerMap.has(name)) {\n throw new Error(`Cannot register already registered service ${name}`);\n }\n\n this.registerMap.set(name, resolver);\n return this;\n }\n\n get(name: string, args?: unknown) {\n // TODO: handle singleton vs instantiation everytime\n if (this.serviceMap.has(name)) {\n return this.serviceMap.get(name);\n }\n\n if (this.registerMap.has(name)) {\n const resolver = this.registerMap.get(name);\n\n if (typeof resolver === 'function') {\n this.serviceMap.set(name, resolver(this, args));\n } else {\n this.serviceMap.set(name, resolver);\n }\n\n return this.serviceMap.get(name);\n }\n\n throw new Error(`Could not resolve service ${name}`);\n }\n}\n"],"names":["Container","add","name","resolver","registerMap","has","Error","set","get","args","serviceMap","Map"],"mappings":"AAEO,MAAMA,SAAAA,CAAAA;IAKXC,GAAIC,CAAAA,IAAY,EAAEC,QAAiB,EAAE;AACnC,QAAA,IAAI,IAAI,CAACC,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAM,IAAII,KAAAA,CAAM,CAAC,2CAA2C,EAAEJ,IAAM,CAAA,CAAA,CAAA;AACtE;AAEA,QAAA,IAAI,CAACE,WAAW,CAACG,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC3B,QAAA,OAAO,IAAI;AACb;IAEAK,GAAIN,CAAAA,IAAY,EAAEO,IAAc,EAAE;;AAEhC,QAAA,IAAI,IAAI,CAACC,UAAU,CAACL,GAAG,CAACH,IAAO,CAAA,EAAA;AAC7B,YAAA,OAAO,IAAI,CAACQ,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,IAAI,IAAI,CAACE,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAMC,WAAW,IAAI,CAACC,WAAW,CAACI,GAAG,CAACN,IAAAA,CAAAA;YAEtC,IAAI,OAAOC,aAAa,UAAY,EAAA;gBAClC,IAAI,CAACO,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAS,IAAI,EAAEM,IAAAA,CAAAA,CAAAA;aACpC,MAAA;AACL,gBAAA,IAAI,CAACC,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC5B;AAEA,YAAA,OAAO,IAAI,CAACO,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,MAAM,IAAII,KAAAA,CAAM,CAAC,0BAA0B,EAAEJ,IAAM,CAAA,CAAA,CAAA;AACrD;;AAhCQE,QAAAA,IAAAA,CAAAA,WAAAA,GAAc,IAAIO,GAAAA,EAAAA;AAElBD,QAAAA,IAAAA,CAAAA,UAAAA,GAAa,IAAIC,GAAAA,EAAAA;;AA+B3B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"collection-type.d.ts","sourceRoot":"","sources":["../../../src/core-api/controller/collection-type.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAO,MAAM,eAAe,CAAC;AAG9D,UAAU,OAAO;IACf,WAAW,EAAE,MAAM,CAAC,oBAAoB,CAAC;CAC1C;AAED;;;GAGG;AACH,QAAA,MAAM,8BAA8B,qBAEjC,OAAO,KAAG,MAAM,eAAe,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,cAAc,CAqGxE,CAAC;AAEF,OAAO,EAAE,8BAA8B,EAAE,CAAC"}
1
+ {"version":3,"file":"collection-type.d.ts","sourceRoot":"","sources":["../../../src/core-api/controller/collection-type.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAO,MAAM,eAAe,CAAC;AAG9D,UAAU,OAAO;IACf,WAAW,EAAE,MAAM,CAAC,oBAAoB,CAAC;CAC1C;AAED;;;GAGG;AACH,QAAA,MAAM,8BAA8B,qBAEjC,OAAO,KAAG,MAAM,eAAe,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,cAAc,CAoGxE,CAAC;AAEF,OAAO,EAAE,8BAA8B,EAAE,CAAC"}
@@ -29,7 +29,7 @@ var strapiUtils = require('@strapi/utils');
29
29
  const sanitizedQuery = await this.sanitizeQuery(ctx);
30
30
  const entity = await strapi.service(uid).findOne(id, sanitizedQuery);
31
31
  const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
32
- return this.transformResponse(sanitizedEntity, {});
32
+ return this.transformResponse(sanitizedEntity);
33
33
  },
34
34
  /**
35
35
  * Create a record.
@@ -1 +1 @@
1
- {"version":3,"file":"collection-type.js","sources":["../../../src/core-api/controller/collection-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct, Utils, UID } from '@strapi/types';\nimport type Koa from 'koa';\n\ninterface Options {\n contentType: Struct.CollectionTypeSchema;\n}\n\n/**\n *\n * Returns a collection type controller to handle default core-api actions\n */\nconst createCollectionTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.CollectionType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve records.\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);\n const sanitizedResults = await this.sanitizeOutput(results, ctx);\n\n return this.transformResponse(sanitizedResults, { pagination });\n },\n\n /**\n * Retrieve a record\n */\n async findOne(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).findOne(id, sanitizedQuery);\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity, {});\n },\n\n /**\n * Create a record.\n */\n async create(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).create({\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n ctx.status = 201;\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Update a record.\n */\n async update(ctx: Koa.Context) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).update(id, {\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Destroy a record.\n */\n async delete(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n await strapi.service(uid).delete(id, sanitizedQuery);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createCollectionTypeController };\n"],"names":["createCollectionTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","results","pagination","strapi","service","sanitizedResults","sanitizeOutput","transformResponse","findOne","id","params","entity","sanitizedEntity","create","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","status","update","delete"],"mappings":"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"}
1
+ {"version":3,"file":"collection-type.js","sources":["../../../src/core-api/controller/collection-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct, Utils, UID } from '@strapi/types';\nimport type Koa from 'koa';\n\ninterface Options {\n contentType: Struct.CollectionTypeSchema;\n}\n\n/**\n *\n * Returns a collection type controller to handle default core-api actions\n */\nconst createCollectionTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.CollectionType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve records.\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);\n const sanitizedResults = await this.sanitizeOutput(results, ctx);\n return this.transformResponse(sanitizedResults, { pagination });\n },\n\n /**\n * Retrieve a record\n */\n async findOne(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).findOne(id, sanitizedQuery);\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Create a record.\n */\n async create(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).create({\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n ctx.status = 201;\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Update a record.\n */\n async update(ctx: Koa.Context) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).update(id, {\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Destroy a record.\n */\n async delete(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n await strapi.service(uid).delete(id, sanitizedQuery);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createCollectionTypeController };\n"],"names":["createCollectionTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","results","pagination","strapi","service","sanitizedResults","sanitizeOutput","transformResponse","findOne","id","params","entity","sanitizedEntity","create","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","status","update","delete"],"mappings":";;;;;AASA;;;AAGC,IACKA,MAAAA,8BAAAA,GAAiC,CAAC,EACtCC,WAAW,EACH,GAAA;IACR,MAAMC,GAAAA,GAAMD,YAAYC,GAAG;;IAG3B,OAAO;AACL;;QAGA,MAAMC,MAAKC,GAAG,EAAA;YACZ,MAAM,IAAI,CAACC,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;AAEhD,YAAA,MAAM,EAAEI,OAAO,EAAEC,UAAU,EAAE,GAAG,MAAMC,MAAAA,CAAOC,OAAO,CAACT,GAAKC,CAAAA,CAAAA,IAAI,CAACG,cAAAA,CAAAA;AAC/D,YAAA,MAAMM,mBAAmB,MAAM,IAAI,CAACC,cAAc,CAACL,OAASJ,EAAAA,GAAAA,CAAAA;AAC5D,YAAA,OAAO,IAAI,CAACU,iBAAiB,CAACF,gBAAkB,EAAA;AAAEH,gBAAAA;AAAW,aAAA,CAAA;AAC/D,SAAA;AAEA;;QAGA,MAAMM,SAAQX,GAAG,EAAA;AACf,YAAA,MAAM,EAAEY,EAAE,EAAE,GAAGZ,IAAIa,MAAM;YACzB,MAAM,IAAI,CAACZ,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;YAEhD,MAAMc,MAAAA,GAAS,MAAMR,MAAOC,CAAAA,OAAO,CAACT,GAAKa,CAAAA,CAAAA,OAAO,CAACC,EAAIV,EAAAA,cAAAA,CAAAA;AACrD,YAAA,MAAMa,kBAAkB,MAAM,IAAI,CAACN,cAAc,CAACK,MAAQd,EAAAA,GAAAA,CAAAA;YAE1D,OAAO,IAAI,CAACU,iBAAiB,CAACK,eAAAA,CAAAA;AAChC,SAAA;AAEA;;QAGA,MAAMC,QAAOhB,GAAG,EAAA;YACd,MAAM,IAAI,CAACC,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;AAEhD,YAAA,MAAM,EAAEiB,IAAO,GAAA,EAAS,EAAE,GAAGjB,IAAIkB,OAAO;AAExC,YAAA,IAAI,CAACC,WAAAA,CAASF,IAAKG,CAAAA,IAAI,CAAG,EAAA;gBACxB,MAAM,IAAIC,kBAAOC,CAAAA,eAAe,CAAC,4CAAA,CAAA;AACnC;AAEA,YAAA,MAAM,IAAI,CAACC,aAAa,CAACN,IAAAA,CAAKG,IAAI,EAAEpB,GAAAA,CAAAA;YAEpC,MAAMwB,kBAAAA,GAAqB,MAAM,IAAI,CAACC,aAAa,CAACR,IAAAA,CAAKG,IAAI,EAAEpB,GAAAA,CAAAA;AAE/D,YAAA,MAAMc,SAAS,MAAMR,MAAAA,CAAOC,OAAO,CAACT,GAAAA,CAAAA,CAAKkB,MAAM,CAAC;AAC9C,gBAAA,GAAGd,cAAc;gBACjBkB,IAAMI,EAAAA;AACR,aAAA,CAAA;AAEA,YAAA,MAAMT,kBAAkB,MAAM,IAAI,CAACN,cAAc,CAACK,MAAQd,EAAAA,GAAAA,CAAAA;AAE1DA,YAAAA,GAAAA,CAAI0B,MAAM,GAAG,GAAA;YACb,OAAO,IAAI,CAAChB,iBAAiB,CAACK,eAAAA,CAAAA;AAChC,SAAA;AAEA;;QAGA,MAAMY,QAAO3B,GAAgB,EAAA;AAC3B,YAAA,MAAM,EAAEY,EAAE,EAAE,GAAGZ,IAAIa,MAAM;YACzB,MAAM,IAAI,CAACZ,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;AAEhD,YAAA,MAAM,EAAEiB,IAAO,GAAA,EAAS,EAAE,GAAGjB,IAAIkB,OAAO;AAExC,YAAA,IAAI,CAACC,WAAAA,CAASF,IAAKG,CAAAA,IAAI,CAAG,EAAA;gBACxB,MAAM,IAAIC,kBAAOC,CAAAA,eAAe,CAAC,4CAAA,CAAA;AACnC;AAEA,YAAA,MAAM,IAAI,CAACC,aAAa,CAACN,IAAAA,CAAKG,IAAI,EAAEpB,GAAAA,CAAAA;YAEpC,MAAMwB,kBAAAA,GAAqB,MAAM,IAAI,CAACC,aAAa,CAACR,IAAAA,CAAKG,IAAI,EAAEpB,GAAAA,CAAAA;YAE/D,MAAMc,MAAAA,GAAS,MAAMR,MAAOC,CAAAA,OAAO,CAACT,GAAK6B,CAAAA,CAAAA,MAAM,CAACf,EAAI,EAAA;AAClD,gBAAA,GAAGV,cAAc;gBACjBkB,IAAMI,EAAAA;AACR,aAAA,CAAA;AAEA,YAAA,MAAMT,kBAAkB,MAAM,IAAI,CAACN,cAAc,CAACK,MAAQd,EAAAA,GAAAA,CAAAA;YAE1D,OAAO,IAAI,CAACU,iBAAiB,CAACK,eAAAA,CAAAA;AAChC,SAAA;AAEA;;QAGA,MAAMa,QAAO5B,GAAG,EAAA;AACd,YAAA,MAAM,EAAEY,EAAE,EAAE,GAAGZ,IAAIa,MAAM;YACzB,MAAM,IAAI,CAACZ,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;AAEhD,YAAA,MAAMM,OAAOC,OAAO,CAACT,GAAK8B,CAAAA,CAAAA,MAAM,CAAChB,EAAIV,EAAAA,cAAAA,CAAAA;AAErCF,YAAAA,GAAAA,CAAI0B,MAAM,GAAG,GAAA;AACf;AACF,KAAA;AACF;;;;"}
@@ -27,7 +27,7 @@ import { errors } from '@strapi/utils';
27
27
  const sanitizedQuery = await this.sanitizeQuery(ctx);
28
28
  const entity = await strapi.service(uid).findOne(id, sanitizedQuery);
29
29
  const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
30
- return this.transformResponse(sanitizedEntity, {});
30
+ return this.transformResponse(sanitizedEntity);
31
31
  },
32
32
  /**
33
33
  * Create a record.
@@ -1 +1 @@
1
- {"version":3,"file":"collection-type.mjs","sources":["../../../src/core-api/controller/collection-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct, Utils, UID } from '@strapi/types';\nimport type Koa from 'koa';\n\ninterface Options {\n contentType: Struct.CollectionTypeSchema;\n}\n\n/**\n *\n * Returns a collection type controller to handle default core-api actions\n */\nconst createCollectionTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.CollectionType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve records.\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);\n const sanitizedResults = await this.sanitizeOutput(results, ctx);\n\n return this.transformResponse(sanitizedResults, { pagination });\n },\n\n /**\n * Retrieve a record\n */\n async findOne(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).findOne(id, sanitizedQuery);\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity, {});\n },\n\n /**\n * Create a record.\n */\n async create(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).create({\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n ctx.status = 201;\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Update a record.\n */\n async update(ctx: Koa.Context) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).update(id, {\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Destroy a record.\n */\n async delete(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n await strapi.service(uid).delete(id, sanitizedQuery);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createCollectionTypeController };\n"],"names":["createCollectionTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","results","pagination","strapi","service","sanitizedResults","sanitizeOutput","transformResponse","findOne","id","params","entity","sanitizedEntity","create","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","status","update","delete"],"mappings":"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"}
1
+ {"version":3,"file":"collection-type.mjs","sources":["../../../src/core-api/controller/collection-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct, Utils, UID } from '@strapi/types';\nimport type Koa from 'koa';\n\ninterface Options {\n contentType: Struct.CollectionTypeSchema;\n}\n\n/**\n *\n * Returns a collection type controller to handle default core-api actions\n */\nconst createCollectionTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.CollectionType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve records.\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);\n const sanitizedResults = await this.sanitizeOutput(results, ctx);\n return this.transformResponse(sanitizedResults, { pagination });\n },\n\n /**\n * Retrieve a record\n */\n async findOne(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).findOne(id, sanitizedQuery);\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Create a record.\n */\n async create(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).create({\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n ctx.status = 201;\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Update a record.\n */\n async update(ctx: Koa.Context) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).update(id, {\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Destroy a record.\n */\n async delete(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n await strapi.service(uid).delete(id, sanitizedQuery);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createCollectionTypeController };\n"],"names":["createCollectionTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","results","pagination","strapi","service","sanitizedResults","sanitizeOutput","transformResponse","findOne","id","params","entity","sanitizedEntity","create","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","status","update","delete"],"mappings":"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"}
@@ -17,7 +17,7 @@ function createController({ contentType }) {
17
17
  return transform.transformResponse(data, meta, {
18
18
  contentType,
19
19
  useJsonAPIFormat: ctx?.headers?.['strapi-response-format'] === 'v4',
20
- encodeSourceMaps: ctx?.query?.encodeSourceMaps === 'true'
20
+ encodeSourceMaps: ctx?.headers?.['strapi-encode-source-maps'] === 'true'
21
21
  });
22
22
  },
23
23
  async sanitizeOutput (data, ctx) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/core-api/controller/index.ts"],"sourcesContent":["import { prop } from 'lodash/fp';\nimport type Koa from 'koa';\nimport { contentTypes as contentTypeUtils } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nimport { transformResponse } from './transform';\nimport { createSingleTypeController } from './single-type';\nimport { createCollectionTypeController } from './collection-type';\nimport requestCtx from '../../services/request-context';\n\nconst isSingleType = (\n contentType: Struct.ContentTypeSchema\n): contentType is Struct.SingleTypeSchema => contentTypeUtils.isSingleType(contentType);\n\nconst getAuthFromKoaContext = (ctx: Koa.Context) => prop('state.auth', ctx) ?? {};\n\nfunction createController<T extends Struct.SingleTypeSchema | Struct.CollectionTypeSchema>(opts: {\n contentType: T;\n}): T extends Struct.SingleTypeSchema\n ? Core.CoreAPI.Controller.SingleType\n : Core.CoreAPI.Controller.CollectionType;\nfunction createController({\n contentType,\n}: {\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema;\n}) {\n // TODO: replace with Base class + SingleType and CollectionType classes\n\n const proto: Core.CoreAPI.Controller.Base = {\n transformResponse(data, meta) {\n const ctx = requestCtx.get();\n return transformResponse(data, meta, {\n contentType,\n useJsonAPIFormat: ctx?.headers?.['strapi-response-format'] === 'v4',\n encodeSourceMaps: ctx?.query?.encodeSourceMaps === 'true',\n });\n },\n\n async sanitizeOutput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.output(data, contentType, { auth });\n },\n\n async sanitizeInput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.input(data, contentType, { auth });\n },\n\n async sanitizeQuery(ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.query(ctx.query, contentType, { auth });\n },\n\n async validateQuery(ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.validate.query(ctx.query, contentType, { auth });\n },\n\n async validateInput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.validate.input(data, contentType, { auth });\n },\n };\n\n let ctrl;\n\n if (isSingleType(contentType)) {\n ctrl = createSingleTypeController({ contentType });\n } else {\n ctrl = createCollectionTypeController({ contentType });\n }\n\n return Object.assign(Object.create(proto), ctrl);\n}\n\nexport { createController };\n"],"names":["isSingleType","contentType","contentTypeUtils","getAuthFromKoaContext","ctx","prop","createController","proto","transformResponse","data","meta","requestCtx","get","useJsonAPIFormat","headers","encodeSourceMaps","query","sanitizeOutput","auth","strapi","contentAPI","sanitize","output","sanitizeInput","input","sanitizeQuery","validateQuery","validate","validateInput","ctrl","createSingleTypeController","createCollectionTypeController","Object","assign","create"],"mappings":";;;;;;;;;AAUA,MAAMA,YAAe,GAAA,CACnBC,WAC2CC,GAAAA,wBAAAA,CAAiBF,YAAY,CAACC,WAAAA,CAAAA;AAE3E,MAAME,wBAAwB,CAACC,GAAAA,GAAqBC,OAAK,CAAA,YAAA,EAAcD,QAAQ,EAAC;AAOhF,SAASE,gBAAAA,CAAiB,EACxBL,WAAW,EAGZ,EAAA;;AAGC,IAAA,MAAMM,KAAsC,GAAA;QAC1CC,iBAAkBC,CAAAA,CAAAA,IAAI,EAAEC,IAAI,EAAA;YAC1B,MAAMN,GAAAA,GAAMO,eAAWC,GAAG,EAAA;YAC1B,OAAOJ,2BAAAA,CAAkBC,MAAMC,IAAM,EAAA;AACnCT,gBAAAA,WAAAA;AACAY,gBAAAA,gBAAAA,EAAkBT,GAAKU,EAAAA,OAAAA,GAAU,wBAAA,CAAyB,KAAK,IAAA;gBAC/DC,gBAAkBX,EAAAA,GAAAA,EAAKY,OAAOD,gBAAqB,KAAA;AACrD,aAAA,CAAA;AACF,SAAA;QAEA,MAAME,cAAAA,CAAAA,CAAeR,IAAI,EAAEL,GAAG,EAAA;AAC5B,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACC,MAAM,CAACb,MAAMR,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACrE,SAAA;QAEA,MAAMK,aAAAA,CAAAA,CAAcd,IAAI,EAAEL,GAAG,EAAA;AAC3B,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACG,KAAK,CAACf,MAAMR,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACpE,SAAA;AAEA,QAAA,MAAMO,eAAcrB,GAAG,EAAA;AACrB,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACL,KAAK,CAACZ,GAAAA,CAAIY,KAAK,EAAEf,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACzE,SAAA;AAEA,QAAA,MAAMQ,eAActB,GAAG,EAAA;AACrB,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACO,QAAQ,CAACX,KAAK,CAACZ,GAAAA,CAAIY,KAAK,EAAEf,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACzE,SAAA;QAEA,MAAMU,aAAAA,CAAAA,CAAcnB,IAAI,EAAEL,GAAG,EAAA;AAC3B,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACO,QAAQ,CAACH,KAAK,CAACf,MAAMR,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACpE;AACF,KAAA;IAEA,IAAIW,IAAAA;AAEJ,IAAA,IAAI7B,aAAaC,WAAc,CAAA,EAAA;AAC7B4B,QAAAA,IAAAA,GAAOC,qCAA2B,CAAA;AAAE7B,YAAAA;AAAY,SAAA,CAAA;KAC3C,MAAA;AACL4B,QAAAA,IAAAA,GAAOE,6CAA+B,CAAA;AAAE9B,YAAAA;AAAY,SAAA,CAAA;AACtD;AAEA,IAAA,OAAO+B,OAAOC,MAAM,CAACD,MAAOE,CAAAA,MAAM,CAAC3B,KAAQsB,CAAAA,EAAAA,IAAAA,CAAAA;AAC7C;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/core-api/controller/index.ts"],"sourcesContent":["import { prop } from 'lodash/fp';\nimport type Koa from 'koa';\nimport { contentTypes as contentTypeUtils } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nimport { transformResponse } from './transform';\nimport { createSingleTypeController } from './single-type';\nimport { createCollectionTypeController } from './collection-type';\nimport requestCtx from '../../services/request-context';\n\nconst isSingleType = (\n contentType: Struct.ContentTypeSchema\n): contentType is Struct.SingleTypeSchema => contentTypeUtils.isSingleType(contentType);\n\nconst getAuthFromKoaContext = (ctx: Koa.Context) => prop('state.auth', ctx) ?? {};\n\nfunction createController<T extends Struct.SingleTypeSchema | Struct.CollectionTypeSchema>(opts: {\n contentType: T;\n}): T extends Struct.SingleTypeSchema\n ? Core.CoreAPI.Controller.SingleType\n : Core.CoreAPI.Controller.CollectionType;\nfunction createController({\n contentType,\n}: {\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema;\n}) {\n // TODO: replace with Base class + SingleType and CollectionType classes\n\n const proto: Core.CoreAPI.Controller.Base = {\n transformResponse(data, meta) {\n const ctx = requestCtx.get();\n return transformResponse(data, meta, {\n contentType,\n useJsonAPIFormat: ctx?.headers?.['strapi-response-format'] === 'v4',\n encodeSourceMaps: ctx?.headers?.['strapi-encode-source-maps'] === 'true',\n });\n },\n\n async sanitizeOutput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.output(data, contentType, { auth });\n },\n\n async sanitizeInput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.input(data, contentType, { auth });\n },\n\n async sanitizeQuery(ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.query(ctx.query, contentType, { auth });\n },\n\n async validateQuery(ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.validate.query(ctx.query, contentType, { auth });\n },\n\n async validateInput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.validate.input(data, contentType, { auth });\n },\n };\n\n let ctrl;\n\n if (isSingleType(contentType)) {\n ctrl = createSingleTypeController({ contentType });\n } else {\n ctrl = createCollectionTypeController({ contentType });\n }\n\n return Object.assign(Object.create(proto), ctrl);\n}\n\nexport { createController };\n"],"names":["isSingleType","contentType","contentTypeUtils","getAuthFromKoaContext","ctx","prop","createController","proto","transformResponse","data","meta","requestCtx","get","useJsonAPIFormat","headers","encodeSourceMaps","sanitizeOutput","auth","strapi","contentAPI","sanitize","output","sanitizeInput","input","sanitizeQuery","query","validateQuery","validate","validateInput","ctrl","createSingleTypeController","createCollectionTypeController","Object","assign","create"],"mappings":";;;;;;;;;AAUA,MAAMA,YAAe,GAAA,CACnBC,WAC2CC,GAAAA,wBAAAA,CAAiBF,YAAY,CAACC,WAAAA,CAAAA;AAE3E,MAAME,wBAAwB,CAACC,GAAAA,GAAqBC,OAAK,CAAA,YAAA,EAAcD,QAAQ,EAAC;AAOhF,SAASE,gBAAAA,CAAiB,EACxBL,WAAW,EAGZ,EAAA;;AAGC,IAAA,MAAMM,KAAsC,GAAA;QAC1CC,iBAAkBC,CAAAA,CAAAA,IAAI,EAAEC,IAAI,EAAA;YAC1B,MAAMN,GAAAA,GAAMO,eAAWC,GAAG,EAAA;YAC1B,OAAOJ,2BAAAA,CAAkBC,MAAMC,IAAM,EAAA;AACnCT,gBAAAA,WAAAA;AACAY,gBAAAA,gBAAAA,EAAkBT,GAAKU,EAAAA,OAAAA,GAAU,wBAAA,CAAyB,KAAK,IAAA;AAC/DC,gBAAAA,gBAAAA,EAAkBX,GAAKU,EAAAA,OAAAA,GAAU,2BAAA,CAA4B,KAAK;AACpE,aAAA,CAAA;AACF,SAAA;QAEA,MAAME,cAAAA,CAAAA,CAAeP,IAAI,EAAEL,GAAG,EAAA;AAC5B,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACC,MAAM,CAACZ,MAAMR,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACrE,SAAA;QAEA,MAAMK,aAAAA,CAAAA,CAAcb,IAAI,EAAEL,GAAG,EAAA;AAC3B,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACG,KAAK,CAACd,MAAMR,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACpE,SAAA;AAEA,QAAA,MAAMO,eAAcpB,GAAG,EAAA;AACrB,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACK,KAAK,CAACrB,GAAAA,CAAIqB,KAAK,EAAExB,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACzE,SAAA;AAEA,QAAA,MAAMS,eAActB,GAAG,EAAA;AACrB,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACQ,QAAQ,CAACF,KAAK,CAACrB,GAAAA,CAAIqB,KAAK,EAAExB,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACzE,SAAA;QAEA,MAAMW,aAAAA,CAAAA,CAAcnB,IAAI,EAAEL,GAAG,EAAA;AAC3B,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACQ,QAAQ,CAACJ,KAAK,CAACd,MAAMR,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACpE;AACF,KAAA;IAEA,IAAIY,IAAAA;AAEJ,IAAA,IAAI7B,aAAaC,WAAc,CAAA,EAAA;AAC7B4B,QAAAA,IAAAA,GAAOC,qCAA2B,CAAA;AAAE7B,YAAAA;AAAY,SAAA,CAAA;KAC3C,MAAA;AACL4B,QAAAA,IAAAA,GAAOE,6CAA+B,CAAA;AAAE9B,YAAAA;AAAY,SAAA,CAAA;AACtD;AAEA,IAAA,OAAO+B,OAAOC,MAAM,CAACD,MAAOE,CAAAA,MAAM,CAAC3B,KAAQsB,CAAAA,EAAAA,IAAAA,CAAAA;AAC7C;;;;"}
@@ -15,7 +15,7 @@ function createController({ contentType }) {
15
15
  return transformResponse(data, meta, {
16
16
  contentType,
17
17
  useJsonAPIFormat: ctx?.headers?.['strapi-response-format'] === 'v4',
18
- encodeSourceMaps: ctx?.query?.encodeSourceMaps === 'true'
18
+ encodeSourceMaps: ctx?.headers?.['strapi-encode-source-maps'] === 'true'
19
19
  });
20
20
  },
21
21
  async sanitizeOutput (data, ctx) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/core-api/controller/index.ts"],"sourcesContent":["import { prop } from 'lodash/fp';\nimport type Koa from 'koa';\nimport { contentTypes as contentTypeUtils } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nimport { transformResponse } from './transform';\nimport { createSingleTypeController } from './single-type';\nimport { createCollectionTypeController } from './collection-type';\nimport requestCtx from '../../services/request-context';\n\nconst isSingleType = (\n contentType: Struct.ContentTypeSchema\n): contentType is Struct.SingleTypeSchema => contentTypeUtils.isSingleType(contentType);\n\nconst getAuthFromKoaContext = (ctx: Koa.Context) => prop('state.auth', ctx) ?? {};\n\nfunction createController<T extends Struct.SingleTypeSchema | Struct.CollectionTypeSchema>(opts: {\n contentType: T;\n}): T extends Struct.SingleTypeSchema\n ? Core.CoreAPI.Controller.SingleType\n : Core.CoreAPI.Controller.CollectionType;\nfunction createController({\n contentType,\n}: {\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema;\n}) {\n // TODO: replace with Base class + SingleType and CollectionType classes\n\n const proto: Core.CoreAPI.Controller.Base = {\n transformResponse(data, meta) {\n const ctx = requestCtx.get();\n return transformResponse(data, meta, {\n contentType,\n useJsonAPIFormat: ctx?.headers?.['strapi-response-format'] === 'v4',\n encodeSourceMaps: ctx?.query?.encodeSourceMaps === 'true',\n });\n },\n\n async sanitizeOutput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.output(data, contentType, { auth });\n },\n\n async sanitizeInput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.input(data, contentType, { auth });\n },\n\n async sanitizeQuery(ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.query(ctx.query, contentType, { auth });\n },\n\n async validateQuery(ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.validate.query(ctx.query, contentType, { auth });\n },\n\n async validateInput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.validate.input(data, contentType, { auth });\n },\n };\n\n let ctrl;\n\n if (isSingleType(contentType)) {\n ctrl = createSingleTypeController({ contentType });\n } else {\n ctrl = createCollectionTypeController({ contentType });\n }\n\n return Object.assign(Object.create(proto), ctrl);\n}\n\nexport { createController };\n"],"names":["isSingleType","contentType","contentTypeUtils","getAuthFromKoaContext","ctx","prop","createController","proto","transformResponse","data","meta","requestCtx","get","useJsonAPIFormat","headers","encodeSourceMaps","query","sanitizeOutput","auth","strapi","contentAPI","sanitize","output","sanitizeInput","input","sanitizeQuery","validateQuery","validate","validateInput","ctrl","createSingleTypeController","createCollectionTypeController","Object","assign","create"],"mappings":";;;;;;;AAUA,MAAMA,YAAe,GAAA,CACnBC,WAC2CC,GAAAA,YAAAA,CAAiBF,YAAY,CAACC,WAAAA,CAAAA;AAE3E,MAAME,wBAAwB,CAACC,GAAAA,GAAqBC,IAAK,CAAA,YAAA,EAAcD,QAAQ,EAAC;AAOhF,SAASE,gBAAAA,CAAiB,EACxBL,WAAW,EAGZ,EAAA;;AAGC,IAAA,MAAMM,KAAsC,GAAA;QAC1CC,iBAAkBC,CAAAA,CAAAA,IAAI,EAAEC,IAAI,EAAA;YAC1B,MAAMN,GAAAA,GAAMO,WAAWC,GAAG,EAAA;YAC1B,OAAOJ,iBAAAA,CAAkBC,MAAMC,IAAM,EAAA;AACnCT,gBAAAA,WAAAA;AACAY,gBAAAA,gBAAAA,EAAkBT,GAAKU,EAAAA,OAAAA,GAAU,wBAAA,CAAyB,KAAK,IAAA;gBAC/DC,gBAAkBX,EAAAA,GAAAA,EAAKY,OAAOD,gBAAqB,KAAA;AACrD,aAAA,CAAA;AACF,SAAA;QAEA,MAAME,cAAAA,CAAAA,CAAeR,IAAI,EAAEL,GAAG,EAAA;AAC5B,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACC,MAAM,CAACb,MAAMR,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACrE,SAAA;QAEA,MAAMK,aAAAA,CAAAA,CAAcd,IAAI,EAAEL,GAAG,EAAA;AAC3B,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACG,KAAK,CAACf,MAAMR,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACpE,SAAA;AAEA,QAAA,MAAMO,eAAcrB,GAAG,EAAA;AACrB,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACL,KAAK,CAACZ,GAAAA,CAAIY,KAAK,EAAEf,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACzE,SAAA;AAEA,QAAA,MAAMQ,eAActB,GAAG,EAAA;AACrB,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACO,QAAQ,CAACX,KAAK,CAACZ,GAAAA,CAAIY,KAAK,EAAEf,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACzE,SAAA;QAEA,MAAMU,aAAAA,CAAAA,CAAcnB,IAAI,EAAEL,GAAG,EAAA;AAC3B,YAAA,MAAMc,OAAOf,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOe,MAAAA,CAAOC,UAAU,CAACO,QAAQ,CAACH,KAAK,CAACf,MAAMR,WAAa,EAAA;AAAEiB,gBAAAA;AAAK,aAAA,CAAA;AACpE;AACF,KAAA;IAEA,IAAIW,IAAAA;AAEJ,IAAA,IAAI7B,aAAaC,WAAc,CAAA,EAAA;AAC7B4B,QAAAA,IAAAA,GAAOC,0BAA2B,CAAA;AAAE7B,YAAAA;AAAY,SAAA,CAAA;KAC3C,MAAA;AACL4B,QAAAA,IAAAA,GAAOE,8BAA+B,CAAA;AAAE9B,YAAAA;AAAY,SAAA,CAAA;AACtD;AAEA,IAAA,OAAO+B,OAAOC,MAAM,CAACD,MAAOE,CAAAA,MAAM,CAAC3B,KAAQsB,CAAAA,EAAAA,IAAAA,CAAAA;AAC7C;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/core-api/controller/index.ts"],"sourcesContent":["import { prop } from 'lodash/fp';\nimport type Koa from 'koa';\nimport { contentTypes as contentTypeUtils } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nimport { transformResponse } from './transform';\nimport { createSingleTypeController } from './single-type';\nimport { createCollectionTypeController } from './collection-type';\nimport requestCtx from '../../services/request-context';\n\nconst isSingleType = (\n contentType: Struct.ContentTypeSchema\n): contentType is Struct.SingleTypeSchema => contentTypeUtils.isSingleType(contentType);\n\nconst getAuthFromKoaContext = (ctx: Koa.Context) => prop('state.auth', ctx) ?? {};\n\nfunction createController<T extends Struct.SingleTypeSchema | Struct.CollectionTypeSchema>(opts: {\n contentType: T;\n}): T extends Struct.SingleTypeSchema\n ? Core.CoreAPI.Controller.SingleType\n : Core.CoreAPI.Controller.CollectionType;\nfunction createController({\n contentType,\n}: {\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema;\n}) {\n // TODO: replace with Base class + SingleType and CollectionType classes\n\n const proto: Core.CoreAPI.Controller.Base = {\n transformResponse(data, meta) {\n const ctx = requestCtx.get();\n return transformResponse(data, meta, {\n contentType,\n useJsonAPIFormat: ctx?.headers?.['strapi-response-format'] === 'v4',\n encodeSourceMaps: ctx?.headers?.['strapi-encode-source-maps'] === 'true',\n });\n },\n\n async sanitizeOutput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.output(data, contentType, { auth });\n },\n\n async sanitizeInput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.input(data, contentType, { auth });\n },\n\n async sanitizeQuery(ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.sanitize.query(ctx.query, contentType, { auth });\n },\n\n async validateQuery(ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.validate.query(ctx.query, contentType, { auth });\n },\n\n async validateInput(data, ctx) {\n const auth = getAuthFromKoaContext(ctx);\n\n return strapi.contentAPI.validate.input(data, contentType, { auth });\n },\n };\n\n let ctrl;\n\n if (isSingleType(contentType)) {\n ctrl = createSingleTypeController({ contentType });\n } else {\n ctrl = createCollectionTypeController({ contentType });\n }\n\n return Object.assign(Object.create(proto), ctrl);\n}\n\nexport { createController };\n"],"names":["isSingleType","contentType","contentTypeUtils","getAuthFromKoaContext","ctx","prop","createController","proto","transformResponse","data","meta","requestCtx","get","useJsonAPIFormat","headers","encodeSourceMaps","sanitizeOutput","auth","strapi","contentAPI","sanitize","output","sanitizeInput","input","sanitizeQuery","query","validateQuery","validate","validateInput","ctrl","createSingleTypeController","createCollectionTypeController","Object","assign","create"],"mappings":";;;;;;;AAUA,MAAMA,YAAe,GAAA,CACnBC,WAC2CC,GAAAA,YAAAA,CAAiBF,YAAY,CAACC,WAAAA,CAAAA;AAE3E,MAAME,wBAAwB,CAACC,GAAAA,GAAqBC,IAAK,CAAA,YAAA,EAAcD,QAAQ,EAAC;AAOhF,SAASE,gBAAAA,CAAiB,EACxBL,WAAW,EAGZ,EAAA;;AAGC,IAAA,MAAMM,KAAsC,GAAA;QAC1CC,iBAAkBC,CAAAA,CAAAA,IAAI,EAAEC,IAAI,EAAA;YAC1B,MAAMN,GAAAA,GAAMO,WAAWC,GAAG,EAAA;YAC1B,OAAOJ,iBAAAA,CAAkBC,MAAMC,IAAM,EAAA;AACnCT,gBAAAA,WAAAA;AACAY,gBAAAA,gBAAAA,EAAkBT,GAAKU,EAAAA,OAAAA,GAAU,wBAAA,CAAyB,KAAK,IAAA;AAC/DC,gBAAAA,gBAAAA,EAAkBX,GAAKU,EAAAA,OAAAA,GAAU,2BAAA,CAA4B,KAAK;AACpE,aAAA,CAAA;AACF,SAAA;QAEA,MAAME,cAAAA,CAAAA,CAAeP,IAAI,EAAEL,GAAG,EAAA;AAC5B,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACC,MAAM,CAACZ,MAAMR,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACrE,SAAA;QAEA,MAAMK,aAAAA,CAAAA,CAAcb,IAAI,EAAEL,GAAG,EAAA;AAC3B,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACG,KAAK,CAACd,MAAMR,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACpE,SAAA;AAEA,QAAA,MAAMO,eAAcpB,GAAG,EAAA;AACrB,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACC,QAAQ,CAACK,KAAK,CAACrB,GAAAA,CAAIqB,KAAK,EAAExB,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACzE,SAAA;AAEA,QAAA,MAAMS,eAActB,GAAG,EAAA;AACrB,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACQ,QAAQ,CAACF,KAAK,CAACrB,GAAAA,CAAIqB,KAAK,EAAExB,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACzE,SAAA;QAEA,MAAMW,aAAAA,CAAAA,CAAcnB,IAAI,EAAEL,GAAG,EAAA;AAC3B,YAAA,MAAMa,OAAOd,qBAAsBC,CAAAA,GAAAA,CAAAA;YAEnC,OAAOc,MAAAA,CAAOC,UAAU,CAACQ,QAAQ,CAACJ,KAAK,CAACd,MAAMR,WAAa,EAAA;AAAEgB,gBAAAA;AAAK,aAAA,CAAA;AACpE;AACF,KAAA;IAEA,IAAIY,IAAAA;AAEJ,IAAA,IAAI7B,aAAaC,WAAc,CAAA,EAAA;AAC7B4B,QAAAA,IAAAA,GAAOC,0BAA2B,CAAA;AAAE7B,YAAAA;AAAY,SAAA,CAAA;KAC3C,MAAA;AACL4B,QAAAA,IAAAA,GAAOE,8BAA+B,CAAA;AAAE9B,YAAAA;AAAY,SAAA,CAAA;AACtD;AAEA,IAAA,OAAO+B,OAAOC,MAAM,CAACD,MAAOE,CAAAA,MAAM,CAAC3B,KAAQsB,CAAAA,EAAAA,IAAAA,CAAAA;AAC7C;;;;"}
@@ -17,7 +17,7 @@ var strapiUtils = require('@strapi/utils');
17
17
  const sanitizedQuery = await this.sanitizeQuery(ctx);
18
18
  const entity = await strapi.service(uid).find(sanitizedQuery);
19
19
  const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
20
- return this.transformResponse(sanitizedEntity, {});
20
+ return this.transformResponse(sanitizedEntity);
21
21
  },
22
22
  /**
23
23
  * create or update single type content.
@@ -1 +1 @@
1
- {"version":3,"file":"single-type.js","sources":["../../../src/core-api/controller/single-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Struct, Core, Utils, UID } from '@strapi/types';\n\ninterface Options {\n contentType: Struct.SingleTypeSchema;\n}\n\n/**\n * Returns a single type controller to handle default core-api actions\n */\nconst createSingleTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.SingleType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve single type content\n *\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).find(sanitizedQuery);\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity, {});\n },\n\n /**\n * create or update single type content.\n */\n async update(ctx) {\n const { query, body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).createOrUpdate({\n ...query,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n async delete(ctx) {\n const { query } = ctx;\n\n await strapi.service(uid).delete(query);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createSingleTypeController };\n"],"names":["createSingleTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","entity","strapi","service","sanitizedEntity","sanitizeOutput","transformResponse","update","query","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","createOrUpdate","delete","status"],"mappings":";;;;;AAQA;;AAEC,IACKA,MAAAA,0BAAAA,GAA6B,CAAC,EAClCC,WAAW,EACH,GAAA;IACR,MAAMC,GAAAA,GAAMD,YAAYC,GAAG;;IAG3B,OAAO;AACL;;;QAIA,MAAMC,MAAKC,GAAG,EAAA;YACZ,MAAM,IAAI,CAACC,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;AAEhD,YAAA,MAAMI,SAAS,MAAMC,MAAAA,CAAOC,OAAO,CAACR,GAAAA,CAAAA,CAAKC,IAAI,CAACG,cAAAA,CAAAA;AAE9C,YAAA,MAAMK,kBAAkB,MAAM,IAAI,CAACC,cAAc,CAACJ,MAAQJ,EAAAA,GAAAA,CAAAA;AAE1D,YAAA,OAAO,IAAI,CAACS,iBAAiB,CAACF,iBAAiB,EAAC,CAAA;AAClD,SAAA;AAEA;;QAGA,MAAMG,QAAOV,GAAG,EAAA;YACd,MAAM,EAAEW,KAAK,EAAEC,IAAAA,GAAO,EAAS,EAAE,GAAGZ,GAAAA,CAAIa,OAAO;AAE/C,YAAA,IAAI,CAACC,WAAAA,CAASF,IAAKG,CAAAA,IAAI,CAAG,EAAA;gBACxB,MAAM,IAAIC,kBAAOC,CAAAA,eAAe,CAAC,4CAAA,CAAA;AACnC;AAEA,YAAA,MAAM,IAAI,CAACC,aAAa,CAACN,IAAAA,CAAKG,IAAI,EAAEf,GAAAA,CAAAA;YAEpC,MAAMmB,kBAAAA,GAAqB,MAAM,IAAI,CAACC,aAAa,CAACR,IAAAA,CAAKG,IAAI,EAAEf,GAAAA,CAAAA;AAE/D,YAAA,MAAMI,SAAS,MAAMC,MAAAA,CAAOC,OAAO,CAACR,GAAAA,CAAAA,CAAKuB,cAAc,CAAC;AACtD,gBAAA,GAAGV,KAAK;gBACRI,IAAMI,EAAAA;AACR,aAAA,CAAA;AAEA,YAAA,MAAMZ,kBAAkB,MAAM,IAAI,CAACC,cAAc,CAACJ,MAAQJ,EAAAA,GAAAA,CAAAA;YAE1D,OAAO,IAAI,CAACS,iBAAiB,CAACF,eAAAA,CAAAA;AAChC,SAAA;AAEA,QAAA,MAAMe,QAAOtB,GAAG,EAAA;YACd,MAAM,EAAEW,KAAK,EAAE,GAAGX,GAAAA;AAElB,YAAA,MAAMK,MAAOC,CAAAA,OAAO,CAACR,GAAAA,CAAAA,CAAKwB,MAAM,CAACX,KAAAA,CAAAA;AAEjCX,YAAAA,GAAAA,CAAIuB,MAAM,GAAG,GAAA;AACf;AACF,KAAA;AACF;;;;"}
1
+ {"version":3,"file":"single-type.js","sources":["../../../src/core-api/controller/single-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Struct, Core, Utils, UID } from '@strapi/types';\n\ninterface Options {\n contentType: Struct.SingleTypeSchema;\n}\n\n/**\n * Returns a single type controller to handle default core-api actions\n */\nconst createSingleTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.SingleType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve single type content\n *\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).find(sanitizedQuery);\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * create or update single type content.\n */\n async update(ctx) {\n const { query, body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).createOrUpdate({\n ...query,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n async delete(ctx) {\n const { query } = ctx;\n\n await strapi.service(uid).delete(query);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createSingleTypeController };\n"],"names":["createSingleTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","entity","strapi","service","sanitizedEntity","sanitizeOutput","transformResponse","update","query","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","createOrUpdate","delete","status"],"mappings":";;;;;AAQA;;AAEC,IACKA,MAAAA,0BAAAA,GAA6B,CAAC,EAClCC,WAAW,EACH,GAAA;IACR,MAAMC,GAAAA,GAAMD,YAAYC,GAAG;;IAG3B,OAAO;AACL;;;QAIA,MAAMC,MAAKC,GAAG,EAAA;YACZ,MAAM,IAAI,CAACC,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;AAEhD,YAAA,MAAMI,SAAS,MAAMC,MAAAA,CAAOC,OAAO,CAACR,GAAAA,CAAAA,CAAKC,IAAI,CAACG,cAAAA,CAAAA;AAE9C,YAAA,MAAMK,kBAAkB,MAAM,IAAI,CAACC,cAAc,CAACJ,MAAQJ,EAAAA,GAAAA,CAAAA;YAE1D,OAAO,IAAI,CAACS,iBAAiB,CAACF,eAAAA,CAAAA;AAChC,SAAA;AAEA;;QAGA,MAAMG,QAAOV,GAAG,EAAA;YACd,MAAM,EAAEW,KAAK,EAAEC,IAAAA,GAAO,EAAS,EAAE,GAAGZ,GAAAA,CAAIa,OAAO;AAE/C,YAAA,IAAI,CAACC,WAAAA,CAASF,IAAKG,CAAAA,IAAI,CAAG,EAAA;gBACxB,MAAM,IAAIC,kBAAOC,CAAAA,eAAe,CAAC,4CAAA,CAAA;AACnC;AAEA,YAAA,MAAM,IAAI,CAACC,aAAa,CAACN,IAAAA,CAAKG,IAAI,EAAEf,GAAAA,CAAAA;YAEpC,MAAMmB,kBAAAA,GAAqB,MAAM,IAAI,CAACC,aAAa,CAACR,IAAAA,CAAKG,IAAI,EAAEf,GAAAA,CAAAA;AAE/D,YAAA,MAAMI,SAAS,MAAMC,MAAAA,CAAOC,OAAO,CAACR,GAAAA,CAAAA,CAAKuB,cAAc,CAAC;AACtD,gBAAA,GAAGV,KAAK;gBACRI,IAAMI,EAAAA;AACR,aAAA,CAAA;AAEA,YAAA,MAAMZ,kBAAkB,MAAM,IAAI,CAACC,cAAc,CAACJ,MAAQJ,EAAAA,GAAAA,CAAAA;YAE1D,OAAO,IAAI,CAACS,iBAAiB,CAACF,eAAAA,CAAAA;AAChC,SAAA;AAEA,QAAA,MAAMe,QAAOtB,GAAG,EAAA;YACd,MAAM,EAAEW,KAAK,EAAE,GAAGX,GAAAA;AAElB,YAAA,MAAMK,MAAOC,CAAAA,OAAO,CAACR,GAAAA,CAAAA,CAAKwB,MAAM,CAACX,KAAAA,CAAAA;AAEjCX,YAAAA,GAAAA,CAAIuB,MAAM,GAAG,GAAA;AACf;AACF,KAAA;AACF;;;;"}
@@ -15,7 +15,7 @@ import { errors } from '@strapi/utils';
15
15
  const sanitizedQuery = await this.sanitizeQuery(ctx);
16
16
  const entity = await strapi.service(uid).find(sanitizedQuery);
17
17
  const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
18
- return this.transformResponse(sanitizedEntity, {});
18
+ return this.transformResponse(sanitizedEntity);
19
19
  },
20
20
  /**
21
21
  * create or update single type content.
@@ -1 +1 @@
1
- {"version":3,"file":"single-type.mjs","sources":["../../../src/core-api/controller/single-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Struct, Core, Utils, UID } from '@strapi/types';\n\ninterface Options {\n contentType: Struct.SingleTypeSchema;\n}\n\n/**\n * Returns a single type controller to handle default core-api actions\n */\nconst createSingleTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.SingleType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve single type content\n *\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).find(sanitizedQuery);\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity, {});\n },\n\n /**\n * create or update single type content.\n */\n async update(ctx) {\n const { query, body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).createOrUpdate({\n ...query,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n async delete(ctx) {\n const { query } = ctx;\n\n await strapi.service(uid).delete(query);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createSingleTypeController };\n"],"names":["createSingleTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","entity","strapi","service","sanitizedEntity","sanitizeOutput","transformResponse","update","query","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","createOrUpdate","delete","status"],"mappings":";;;AAQA;;AAEC,IACKA,MAAAA,0BAAAA,GAA6B,CAAC,EAClCC,WAAW,EACH,GAAA;IACR,MAAMC,GAAAA,GAAMD,YAAYC,GAAG;;IAG3B,OAAO;AACL;;;QAIA,MAAMC,MAAKC,GAAG,EAAA;YACZ,MAAM,IAAI,CAACC,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;AAEhD,YAAA,MAAMI,SAAS,MAAMC,MAAAA,CAAOC,OAAO,CAACR,GAAAA,CAAAA,CAAKC,IAAI,CAACG,cAAAA,CAAAA;AAE9C,YAAA,MAAMK,kBAAkB,MAAM,IAAI,CAACC,cAAc,CAACJ,MAAQJ,EAAAA,GAAAA,CAAAA;AAE1D,YAAA,OAAO,IAAI,CAACS,iBAAiB,CAACF,iBAAiB,EAAC,CAAA;AAClD,SAAA;AAEA;;QAGA,MAAMG,QAAOV,GAAG,EAAA;YACd,MAAM,EAAEW,KAAK,EAAEC,IAAAA,GAAO,EAAS,EAAE,GAAGZ,GAAAA,CAAIa,OAAO;AAE/C,YAAA,IAAI,CAACC,QAAAA,CAASF,IAAKG,CAAAA,IAAI,CAAG,EAAA;gBACxB,MAAM,IAAIC,MAAOC,CAAAA,eAAe,CAAC,4CAAA,CAAA;AACnC;AAEA,YAAA,MAAM,IAAI,CAACC,aAAa,CAACN,IAAAA,CAAKG,IAAI,EAAEf,GAAAA,CAAAA;YAEpC,MAAMmB,kBAAAA,GAAqB,MAAM,IAAI,CAACC,aAAa,CAACR,IAAAA,CAAKG,IAAI,EAAEf,GAAAA,CAAAA;AAE/D,YAAA,MAAMI,SAAS,MAAMC,MAAAA,CAAOC,OAAO,CAACR,GAAAA,CAAAA,CAAKuB,cAAc,CAAC;AACtD,gBAAA,GAAGV,KAAK;gBACRI,IAAMI,EAAAA;AACR,aAAA,CAAA;AAEA,YAAA,MAAMZ,kBAAkB,MAAM,IAAI,CAACC,cAAc,CAACJ,MAAQJ,EAAAA,GAAAA,CAAAA;YAE1D,OAAO,IAAI,CAACS,iBAAiB,CAACF,eAAAA,CAAAA;AAChC,SAAA;AAEA,QAAA,MAAMe,QAAOtB,GAAG,EAAA;YACd,MAAM,EAAEW,KAAK,EAAE,GAAGX,GAAAA;AAElB,YAAA,MAAMK,MAAOC,CAAAA,OAAO,CAACR,GAAAA,CAAAA,CAAKwB,MAAM,CAACX,KAAAA,CAAAA;AAEjCX,YAAAA,GAAAA,CAAIuB,MAAM,GAAG,GAAA;AACf;AACF,KAAA;AACF;;;;"}
1
+ {"version":3,"file":"single-type.mjs","sources":["../../../src/core-api/controller/single-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Struct, Core, Utils, UID } from '@strapi/types';\n\ninterface Options {\n contentType: Struct.SingleTypeSchema;\n}\n\n/**\n * Returns a single type controller to handle default core-api actions\n */\nconst createSingleTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.SingleType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve single type content\n *\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).find(sanitizedQuery);\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * create or update single type content.\n */\n async update(ctx) {\n const { query, body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).createOrUpdate({\n ...query,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n async delete(ctx) {\n const { query } = ctx;\n\n await strapi.service(uid).delete(query);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createSingleTypeController };\n"],"names":["createSingleTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","entity","strapi","service","sanitizedEntity","sanitizeOutput","transformResponse","update","query","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","createOrUpdate","delete","status"],"mappings":";;;AAQA;;AAEC,IACKA,MAAAA,0BAAAA,GAA6B,CAAC,EAClCC,WAAW,EACH,GAAA;IACR,MAAMC,GAAAA,GAAMD,YAAYC,GAAG;;IAG3B,OAAO;AACL;;;QAIA,MAAMC,MAAKC,GAAG,EAAA;YACZ,MAAM,IAAI,CAACC,aAAa,CAACD,GAAAA,CAAAA;AACzB,YAAA,MAAME,cAAiB,GAAA,MAAM,IAAI,CAACC,aAAa,CAACH,GAAAA,CAAAA;AAEhD,YAAA,MAAMI,SAAS,MAAMC,MAAAA,CAAOC,OAAO,CAACR,GAAAA,CAAAA,CAAKC,IAAI,CAACG,cAAAA,CAAAA;AAE9C,YAAA,MAAMK,kBAAkB,MAAM,IAAI,CAACC,cAAc,CAACJ,MAAQJ,EAAAA,GAAAA,CAAAA;YAE1D,OAAO,IAAI,CAACS,iBAAiB,CAACF,eAAAA,CAAAA;AAChC,SAAA;AAEA;;QAGA,MAAMG,QAAOV,GAAG,EAAA;YACd,MAAM,EAAEW,KAAK,EAAEC,IAAAA,GAAO,EAAS,EAAE,GAAGZ,GAAAA,CAAIa,OAAO;AAE/C,YAAA,IAAI,CAACC,QAAAA,CAASF,IAAKG,CAAAA,IAAI,CAAG,EAAA;gBACxB,MAAM,IAAIC,MAAOC,CAAAA,eAAe,CAAC,4CAAA,CAAA;AACnC;AAEA,YAAA,MAAM,IAAI,CAACC,aAAa,CAACN,IAAAA,CAAKG,IAAI,EAAEf,GAAAA,CAAAA;YAEpC,MAAMmB,kBAAAA,GAAqB,MAAM,IAAI,CAACC,aAAa,CAACR,IAAAA,CAAKG,IAAI,EAAEf,GAAAA,CAAAA;AAE/D,YAAA,MAAMI,SAAS,MAAMC,MAAAA,CAAOC,OAAO,CAACR,GAAAA,CAAAA,CAAKuB,cAAc,CAAC;AACtD,gBAAA,GAAGV,KAAK;gBACRI,IAAMI,EAAAA;AACR,aAAA,CAAA;AAEA,YAAA,MAAMZ,kBAAkB,MAAM,IAAI,CAACC,cAAc,CAACJ,MAAQJ,EAAAA,GAAAA,CAAAA;YAE1D,OAAO,IAAI,CAACS,iBAAiB,CAACF,eAAAA,CAAAA;AAChC,SAAA;AAEA,QAAA,MAAMe,QAAOtB,GAAG,EAAA;YACd,MAAM,EAAEW,KAAK,EAAE,GAAGX,GAAAA;AAElB,YAAA,MAAMK,MAAOC,CAAAA,OAAO,CAACR,GAAAA,CAAAA,CAAKwB,MAAM,CAACX,KAAAA,CAAAA;AAEjCX,YAAAA,GAAAA,CAAIuB,MAAM,GAAG,GAAA;AACf;AACF,KAAA;AACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../src/core-api/controller/transform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAO,MAAM,EAAQ,MAAM,eAAe,CAAC;AA2BvD,UAAU,gBAAgB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,iBAAiB,GAAG,MAAM,CAAC,eAAe,CAAC;IAChE;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,QAAA,MAAM,iBAAiB,aACX,GAAG,SACP,OAAO,SACP,gBAAgB;;;qBAwBvB,CAAC;AAkFF,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../src/core-api/controller/transform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAO,MAAM,EAAQ,MAAM,eAAe,CAAC;AA4BvD,UAAU,gBAAgB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,iBAAiB,GAAG,MAAM,CAAC,eAAe,CAAC;IAChE;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,QAAA,MAAM,iBAAiB,aACX,GAAG,SACP,OAAO,SACP,gBAAgB;;;qBA6BvB,CAAC;AAkFF,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var fp = require('lodash/fp');
4
+ var strapiUtils = require('@strapi/utils');
4
5
 
5
6
  function isEntry(property) {
6
7
  return property === null || fp.isPlainObject(property) || Array.isArray(property);
@@ -18,11 +19,14 @@ const transformResponse = async (resource, meta = {}, opts = {
18
19
  if (!fp.isPlainObject(resource) && !Array.isArray(resource)) {
19
20
  throw new Error('Entry must be an object or an array of objects');
20
21
  }
21
- const data = opts.useJsonAPIFormat ? transformEntry(resource, opts?.contentType) : resource;
22
- // Apply source map encoding if requested and content type is provided
23
- if (opts.encodeSourceMaps && opts.contentType && 'uid' in opts.contentType) {
24
- await strapi.get('content-source-maps').encodeSourceMaps(data, opts.contentType);
25
- }
22
+ // Transform pipeline functions
23
+ const applyJsonApiFormat = async (data)=>opts.useJsonAPIFormat ? transformEntry(data, opts?.contentType) : data;
24
+ const applySourceMapEncoding = async (data)=>opts.encodeSourceMaps && opts.contentType ? strapi.get('content-source-maps').encodeSourceMaps({
25
+ data,
26
+ schema: opts.contentType
27
+ }) : data;
28
+ // Process data through transformation pipeline
29
+ const data = await strapiUtils.async.pipe(applyJsonApiFormat, applySourceMapEncoding)(resource);
26
30
  return {
27
31
  data,
28
32
  meta