@strapi/core 5.0.0-beta.1 → 5.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (306) hide show
  1. package/dist/Strapi.d.ts +34 -45
  2. package/dist/Strapi.d.ts.map +1 -1
  3. package/dist/Strapi.js +143 -222
  4. package/dist/Strapi.js.map +1 -1
  5. package/dist/Strapi.mjs +133 -213
  6. package/dist/Strapi.mjs.map +1 -1
  7. package/dist/configuration/config-loader.d.ts.map +1 -1
  8. package/dist/configuration/config-loader.js +9 -5
  9. package/dist/configuration/config-loader.js.map +1 -1
  10. package/dist/configuration/config-loader.mjs +9 -5
  11. package/dist/configuration/config-loader.mjs.map +1 -1
  12. package/dist/configuration/get-dirs.d.ts +10 -0
  13. package/dist/configuration/get-dirs.d.ts.map +1 -0
  14. package/dist/{utils → configuration}/get-dirs.js +3 -2
  15. package/dist/configuration/get-dirs.js.map +1 -0
  16. package/dist/{utils → configuration}/get-dirs.mjs +3 -2
  17. package/dist/configuration/get-dirs.mjs.map +1 -0
  18. package/dist/configuration/index.d.ts +4 -7
  19. package/dist/configuration/index.d.ts.map +1 -1
  20. package/dist/configuration/index.js +6 -4
  21. package/dist/configuration/index.js.map +1 -1
  22. package/dist/configuration/index.mjs +5 -4
  23. package/dist/configuration/index.mjs.map +1 -1
  24. package/dist/core-api/service/collection-type.d.ts +4 -4
  25. package/dist/core-api/service/collection-type.d.ts.map +1 -1
  26. package/dist/core-api/service/collection-type.js +14 -5
  27. package/dist/core-api/service/collection-type.js.map +1 -1
  28. package/dist/core-api/service/collection-type.mjs +14 -5
  29. package/dist/core-api/service/collection-type.mjs.map +1 -1
  30. package/dist/core-api/service/single-type.d.ts.map +1 -1
  31. package/dist/core-api/service/single-type.js +8 -2
  32. package/dist/core-api/service/single-type.js.map +1 -1
  33. package/dist/core-api/service/single-type.mjs +8 -2
  34. package/dist/core-api/service/single-type.mjs.map +1 -1
  35. package/dist/ee/index.d.ts +2 -0
  36. package/dist/ee/index.d.ts.map +1 -1
  37. package/dist/ee/index.js.map +1 -1
  38. package/dist/ee/index.mjs.map +1 -1
  39. package/dist/factories.js.map +1 -1
  40. package/dist/factories.mjs.map +1 -1
  41. package/dist/index.d.ts +4 -2
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +25 -1
  44. package/dist/index.js.map +1 -1
  45. package/dist/index.mjs +27 -3
  46. package/dist/index.mjs.map +1 -1
  47. package/dist/loaders/admin.js +0 -1
  48. package/dist/loaders/admin.js.map +1 -1
  49. package/dist/loaders/admin.mjs +0 -1
  50. package/dist/loaders/admin.mjs.map +1 -1
  51. package/dist/loaders/index.d.ts.map +1 -1
  52. package/dist/loaders/index.js +0 -2
  53. package/dist/loaders/index.js.map +1 -1
  54. package/dist/loaders/index.mjs +0 -2
  55. package/dist/loaders/index.mjs.map +1 -1
  56. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  57. package/dist/loaders/plugins/get-enabled-plugins.js +2 -1
  58. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  59. package/dist/loaders/plugins/get-enabled-plugins.mjs +2 -1
  60. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  61. package/dist/middlewares/body.d.ts +2 -2
  62. package/dist/middlewares/body.d.ts.map +1 -1
  63. package/dist/middlewares/body.js +4 -4
  64. package/dist/middlewares/body.js.map +1 -1
  65. package/dist/middlewares/body.mjs +4 -4
  66. package/dist/middlewares/body.mjs.map +1 -1
  67. package/dist/middlewares/public.js +1 -1
  68. package/dist/middlewares/public.js.map +1 -1
  69. package/dist/middlewares/public.mjs +1 -1
  70. package/dist/middlewares/public.mjs.map +1 -1
  71. package/dist/providers/admin.d.ts +3 -0
  72. package/dist/providers/admin.d.ts.map +1 -0
  73. package/dist/providers/admin.js +20 -0
  74. package/dist/providers/admin.js.map +1 -0
  75. package/dist/providers/admin.mjs +21 -0
  76. package/dist/providers/admin.mjs.map +1 -0
  77. package/dist/providers/coreStore.d.ts +3 -0
  78. package/dist/providers/coreStore.d.ts.map +1 -0
  79. package/dist/providers/coreStore.js +11 -0
  80. package/dist/providers/coreStore.js.map +1 -0
  81. package/dist/providers/coreStore.mjs +12 -0
  82. package/dist/providers/coreStore.mjs.map +1 -0
  83. package/dist/providers/cron.d.ts +3 -0
  84. package/dist/providers/cron.d.ts.map +1 -0
  85. package/dist/providers/cron.js +20 -0
  86. package/dist/providers/cron.js.map +1 -0
  87. package/dist/providers/cron.mjs +21 -0
  88. package/dist/providers/cron.mjs.map +1 -0
  89. package/dist/providers/index.d.ts +3 -0
  90. package/dist/providers/index.d.ts.map +1 -0
  91. package/dist/providers/index.js +11 -0
  92. package/dist/providers/index.js.map +1 -0
  93. package/dist/providers/index.mjs +11 -0
  94. package/dist/providers/index.mjs.map +1 -0
  95. package/dist/providers/provider.d.ts +9 -0
  96. package/dist/providers/provider.d.ts.map +1 -0
  97. package/dist/providers/provider.js +5 -0
  98. package/dist/providers/provider.js.map +1 -0
  99. package/dist/providers/provider.mjs +5 -0
  100. package/dist/providers/provider.mjs.map +1 -0
  101. package/dist/providers/registries.d.ts +3 -0
  102. package/dist/providers/registries.d.ts.map +1 -0
  103. package/dist/providers/registries.js +33 -0
  104. package/dist/providers/registries.js.map +1 -0
  105. package/dist/providers/registries.mjs +34 -0
  106. package/dist/providers/registries.mjs.map +1 -0
  107. package/dist/providers/telemetry.d.ts +3 -0
  108. package/dist/providers/telemetry.d.ts.map +1 -0
  109. package/dist/providers/telemetry.js +19 -0
  110. package/dist/providers/telemetry.js.map +1 -0
  111. package/dist/providers/telemetry.mjs +20 -0
  112. package/dist/providers/telemetry.mjs.map +1 -0
  113. package/dist/providers/webhooks.d.ts +3 -0
  114. package/dist/providers/webhooks.d.ts.map +1 -0
  115. package/dist/providers/webhooks.js +30 -0
  116. package/dist/providers/webhooks.js.map +1 -0
  117. package/dist/providers/webhooks.mjs +31 -0
  118. package/dist/providers/webhooks.mjs.map +1 -0
  119. package/dist/registries/index.d.ts +0 -1
  120. package/dist/registries/index.d.ts.map +1 -1
  121. package/dist/services/config.d.ts +3 -0
  122. package/dist/services/config.d.ts.map +1 -0
  123. package/dist/{registries → services}/config.js +11 -7
  124. package/dist/services/config.js.map +1 -0
  125. package/dist/{registries → services}/config.mjs +10 -7
  126. package/dist/services/config.mjs.map +1 -0
  127. package/dist/services/content-api/index.js +1 -1
  128. package/dist/services/content-api/index.js.map +1 -1
  129. package/dist/services/content-api/index.mjs +1 -1
  130. package/dist/services/content-api/index.mjs.map +1 -1
  131. package/dist/services/content-api/permissions/index.js +1 -1
  132. package/dist/services/content-api/permissions/index.js.map +1 -1
  133. package/dist/services/content-api/permissions/index.mjs +1 -1
  134. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  135. package/dist/services/document-service/attributes/index.d.ts.map +1 -0
  136. package/dist/services/document-service/attributes/index.js.map +1 -0
  137. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  138. package/dist/services/document-service/attributes/transforms.d.ts.map +1 -0
  139. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  140. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  141. package/dist/services/document-service/common.d.ts +1 -1
  142. package/dist/services/document-service/common.d.ts.map +1 -1
  143. package/dist/services/document-service/common.js.map +1 -1
  144. package/dist/services/document-service/common.mjs.map +1 -1
  145. package/dist/services/document-service/components.d.ts +97 -1
  146. package/dist/services/document-service/components.d.ts.map +1 -1
  147. package/dist/services/{entity-service → document-service}/components.js +22 -31
  148. package/dist/services/document-service/components.js.map +1 -0
  149. package/dist/services/{entity-service → document-service}/components.mjs +22 -31
  150. package/dist/services/document-service/components.mjs.map +1 -0
  151. package/dist/services/document-service/entries.d.ts +8 -0
  152. package/dist/services/document-service/entries.d.ts.map +1 -0
  153. package/dist/services/document-service/entries.js +62 -0
  154. package/dist/services/document-service/entries.js.map +1 -0
  155. package/dist/services/document-service/entries.mjs +62 -0
  156. package/dist/services/document-service/entries.mjs.map +1 -0
  157. package/dist/services/document-service/index.d.ts +0 -2
  158. package/dist/services/document-service/index.d.ts.map +1 -1
  159. package/dist/services/document-service/index.js +14 -1
  160. package/dist/services/document-service/index.js.map +1 -1
  161. package/dist/services/document-service/index.mjs +14 -1
  162. package/dist/services/document-service/index.mjs.map +1 -1
  163. package/dist/services/document-service/middlewares/middleware-manager.d.ts +4 -1
  164. package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -1
  165. package/dist/services/document-service/middlewares/middleware-manager.js +8 -5
  166. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  167. package/dist/services/document-service/middlewares/middleware-manager.mjs +8 -5
  168. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  169. package/dist/services/document-service/params.d.ts +7 -1
  170. package/dist/services/document-service/params.d.ts.map +1 -1
  171. package/dist/services/document-service/params.js.map +1 -0
  172. package/dist/services/document-service/params.mjs.map +1 -0
  173. package/dist/services/document-service/repository.d.ts.map +1 -1
  174. package/dist/services/document-service/repository.js +74 -95
  175. package/dist/services/document-service/repository.js.map +1 -1
  176. package/dist/services/document-service/repository.mjs +58 -79
  177. package/dist/services/document-service/repository.mjs.map +1 -1
  178. package/dist/services/document-service/transform/data.d.ts.map +1 -1
  179. package/dist/services/document-service/transform/data.js +4 -2
  180. package/dist/services/document-service/transform/data.js.map +1 -1
  181. package/dist/services/document-service/transform/data.mjs +4 -2
  182. package/dist/services/document-service/transform/data.mjs.map +1 -1
  183. package/dist/services/document-service/transform/query.d.ts +5 -0
  184. package/dist/services/document-service/transform/query.d.ts.map +1 -0
  185. package/dist/services/document-service/transform/query.js +9 -0
  186. package/dist/services/document-service/transform/query.js.map +1 -0
  187. package/dist/services/document-service/transform/query.mjs +9 -0
  188. package/dist/services/document-service/transform/query.mjs.map +1 -0
  189. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +8 -7
  190. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  191. package/dist/services/document-service/transform/relations/extract/data-ids.js +42 -78
  192. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  193. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +42 -78
  194. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  195. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts +7 -3
  196. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  197. package/dist/services/document-service/transform/relations/transform/data-ids.js +57 -125
  198. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  199. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +58 -126
  200. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  201. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts +9 -0
  202. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts.map +1 -0
  203. package/dist/services/document-service/transform/relations/transform/default-locale.js +32 -0
  204. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  205. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +32 -0
  206. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  207. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +2 -2
  208. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  209. package/dist/services/document-service/transform/relations/utils/i18n.js +3 -9
  210. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  211. package/dist/services/document-service/transform/relations/utils/i18n.mjs +3 -9
  212. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  213. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts +6 -0
  214. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -0
  215. package/dist/services/document-service/transform/relations/utils/map-relation.js +87 -0
  216. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  217. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +87 -0
  218. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  219. package/dist/services/document-service/transform/relations/utils/types.d.ts +6 -0
  220. package/dist/services/document-service/transform/relations/utils/types.d.ts.map +1 -1
  221. package/dist/services/entity-service/index.d.ts.map +1 -1
  222. package/dist/services/entity-service/index.js +11 -4
  223. package/dist/services/entity-service/index.js.map +1 -1
  224. package/dist/services/entity-service/index.mjs +11 -4
  225. package/dist/services/entity-service/index.mjs.map +1 -1
  226. package/dist/services/entity-validator/index.d.ts.map +1 -1
  227. package/dist/services/entity-validator/index.js +93 -87
  228. package/dist/services/entity-validator/index.js.map +1 -1
  229. package/dist/services/entity-validator/index.mjs +93 -87
  230. package/dist/services/entity-validator/index.mjs.map +1 -1
  231. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  232. package/dist/services/metrics/rate-limiter.js.map +1 -1
  233. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  234. package/dist/services/reloader.d.ts +7 -0
  235. package/dist/services/reloader.d.ts.map +1 -0
  236. package/dist/services/reloader.js +36 -0
  237. package/dist/services/reloader.js.map +1 -0
  238. package/dist/services/reloader.mjs +36 -0
  239. package/dist/services/reloader.mjs.map +1 -0
  240. package/dist/services/server/register-routes.js +3 -3
  241. package/dist/services/server/register-routes.js.map +1 -1
  242. package/dist/services/server/register-routes.mjs +3 -3
  243. package/dist/services/server/register-routes.mjs.map +1 -1
  244. package/dist/services/server/routing.d.ts +1 -1
  245. package/dist/services/webhook-store.d.ts.map +1 -1
  246. package/dist/services/webhook-store.js +5 -6
  247. package/dist/services/webhook-store.js.map +1 -1
  248. package/dist/services/webhook-store.mjs +5 -6
  249. package/dist/services/webhook-store.mjs.map +1 -1
  250. package/dist/utils/index.d.ts +2 -1
  251. package/dist/utils/index.d.ts.map +1 -1
  252. package/dist/utils/resolve-working-dirs.d.ts +19 -0
  253. package/dist/utils/resolve-working-dirs.d.ts.map +1 -0
  254. package/dist/utils/resolve-working-dirs.js +13 -0
  255. package/dist/utils/resolve-working-dirs.js.map +1 -0
  256. package/dist/utils/resolve-working-dirs.mjs +11 -0
  257. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  258. package/dist/utils/transform-content-types-to-models.d.ts +21 -16
  259. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  260. package/dist/utils/transform-content-types-to-models.js +95 -57
  261. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  262. package/dist/utils/transform-content-types-to-models.mjs +95 -57
  263. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  264. package/dist/utils/update-notifier/index.d.ts +1 -6
  265. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  266. package/dist/utils/update-notifier/index.js +11 -14
  267. package/dist/utils/update-notifier/index.js.map +1 -1
  268. package/dist/utils/update-notifier/index.mjs +11 -14
  269. package/dist/utils/update-notifier/index.mjs.map +1 -1
  270. package/package.json +21 -21
  271. package/dist/registries/config.d.ts +0 -4
  272. package/dist/registries/config.d.ts.map +0 -1
  273. package/dist/registries/config.js.map +0 -1
  274. package/dist/registries/config.mjs.map +0 -1
  275. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts +0 -2
  276. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts.map +0 -1
  277. package/dist/services/document-service/transform/relations/utils/data.js +0 -12
  278. package/dist/services/document-service/transform/relations/utils/data.js.map +0 -1
  279. package/dist/services/document-service/transform/relations/utils/data.mjs +0 -12
  280. package/dist/services/document-service/transform/relations/utils/data.mjs.map +0 -1
  281. package/dist/services/entity-service/attributes/index.d.ts.map +0 -1
  282. package/dist/services/entity-service/attributes/index.js.map +0 -1
  283. package/dist/services/entity-service/attributes/index.mjs.map +0 -1
  284. package/dist/services/entity-service/attributes/transforms.d.ts.map +0 -1
  285. package/dist/services/entity-service/attributes/transforms.js.map +0 -1
  286. package/dist/services/entity-service/attributes/transforms.mjs.map +0 -1
  287. package/dist/services/entity-service/components.d.ts +0 -95
  288. package/dist/services/entity-service/components.d.ts.map +0 -1
  289. package/dist/services/entity-service/components.js.map +0 -1
  290. package/dist/services/entity-service/components.mjs.map +0 -1
  291. package/dist/services/entity-service/params.d.ts +0 -8
  292. package/dist/services/entity-service/params.d.ts.map +0 -1
  293. package/dist/services/entity-service/params.js.map +0 -1
  294. package/dist/services/entity-service/params.mjs.map +0 -1
  295. package/dist/utils/get-dirs.d.ts +0 -9
  296. package/dist/utils/get-dirs.d.ts.map +0 -1
  297. package/dist/utils/get-dirs.js.map +0 -1
  298. package/dist/utils/get-dirs.mjs.map +0 -1
  299. /package/dist/services/{entity-service → document-service}/attributes/index.d.ts +0 -0
  300. /package/dist/services/{entity-service → document-service}/attributes/index.js +0 -0
  301. /package/dist/services/{entity-service → document-service}/attributes/index.mjs +0 -0
  302. /package/dist/services/{entity-service → document-service}/attributes/transforms.d.ts +0 -0
  303. /package/dist/services/{entity-service → document-service}/attributes/transforms.js +0 -0
  304. /package/dist/services/{entity-service → document-service}/attributes/transforms.mjs +0 -0
  305. /package/dist/services/{entity-service → document-service}/params.js +0 -0
  306. /package/dist/services/{entity-service → document-service}/params.mjs +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"register-routes.mjs","sources":["../../../src/services/server/register-routes.ts"],"sourcesContent":["import _ from 'lodash';\nimport type { Core } from '@strapi/types';\n\nconst createRouteScopeGenerator = (namespace: string) => (route: Core.RouteInput) => {\n const prefix = namespace.endsWith('::') ? namespace : `${namespace}.`;\n\n if (typeof route.handler === 'string') {\n _.defaultsDeep(route, {\n config: {\n auth: {\n scope: [`${route.handler.startsWith(prefix) ? '' : prefix}${route.handler}`],\n },\n },\n });\n }\n};\n\n/**\n * Register all routes\n */\nexport default (strapi: Core.Strapi) => {\n registerAdminRoutes(strapi);\n registerAPIRoutes(strapi);\n registerPluginRoutes(strapi);\n};\n\n/**\n * Register admin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerAdminRoutes = (strapi: Core.Strapi) => {\n const generateRouteScope = createRouteScopeGenerator(`admin::`);\n\n _.forEach(strapi.admin?.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/admin`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName: 'admin' };\n });\n strapi.server.routes(router);\n });\n};\n\n/**\n * Register plugin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerPluginRoutes = (strapi: Core.Strapi) => {\n for (const pluginName of Object.keys(strapi.plugins)) {\n const plugin = strapi.plugins[pluginName];\n\n const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);\n\n if (Array.isArray(plugin.routes)) {\n plugin.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes({\n type: 'admin',\n prefix: `/${pluginName}`,\n routes: plugin.routes,\n });\n } else {\n _.forEach(plugin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/${pluginName}`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes(router);\n });\n }\n }\n};\n\n/**\n * Register api routes\n */\nconst registerAPIRoutes = (strapi: Core.Strapi) => {\n for (const apiName of Object.keys(strapi.api)) {\n const api = strapi.api[apiName];\n\n const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);\n\n _.forEach(api.routes, (router) => {\n // TODO: remove once auth setup\n // pass meta down to compose endpoint\n router.type = 'content-api';\n router.routes?.forEach((route) => {\n generateRouteScope(route);\n route.info = { apiName };\n });\n\n return strapi.server.routes(router);\n });\n }\n};\n"],"names":[],"mappings":";AAGA,MAAM,4BAA4B,CAAC,cAAsB,CAAC,UAA2B;AACnF,QAAM,SAAS,UAAU,SAAS,IAAI,IAAI,YAAY,GAAG,SAAS;AAE9D,MAAA,OAAO,MAAM,YAAY,UAAU;AACrC,MAAE,aAAa,OAAO;AAAA,MACpB,QAAQ;AAAA,QACN,MAAM;AAAA,UACJ,OAAO,CAAC,GAAG,MAAM,QAAQ,WAAW,MAAM,IAAI,KAAK,MAAM,GAAG,MAAM,OAAO,EAAE;AAAA,QAC7E;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EACH;AACF;AAKA,MAAe,oBAAA,CAAC,WAAwB;AACtC,sBAAoB,MAAM;AAC1B,oBAAkB,MAAM;AACxB,uBAAqB,MAAM;AAC7B;AAMA,MAAM,sBAAsB,CAAC,WAAwB;AAC7C,QAAA,qBAAqB,0BAA0B,SAAS;AAE9D,IAAE,QAAQ,OAAO,OAAO,QAAQ,CAAC,WAAW;AACnC,WAAA,OAAO,OAAO,QAAQ;AACtB,WAAA,SAAS,OAAO,UAAU;AAC1B,WAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,yBAAmB,KAAK;AAClB,YAAA,OAAO,EAAE,YAAY,QAAQ;AAAA,IAAA,CACpC;AACM,WAAA,OAAO,OAAO,MAAM;AAAA,EAAA,CAC5B;AACH;AAMA,MAAM,uBAAuB,CAAC,WAAwB;AACpD,aAAW,cAAc,OAAO,KAAK,OAAO,OAAO,GAAG;AAC9C,UAAA,SAAS,OAAO,QAAQ,UAAU;AAExC,UAAM,qBAAqB,0BAA0B,WAAW,UAAU,EAAE;AAE5E,QAAI,MAAM,QAAQ,OAAO,MAAM,GAAG;AACzB,aAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,2BAAmB,KAAK;AAClB,cAAA,OAAO,EAAE;MAAW,CAC3B;AAED,aAAO,OAAO,OAAO;AAAA,QACnB,MAAM;AAAA,QACN,QAAQ,IAAI,UAAU;AAAA,QACtB,QAAQ,OAAO;AAAA,MAAA,CAChB;AAAA,IAAA,OACI;AACL,QAAE,QAAQ,OAAO,QAAQ,CAAC,WAAW;AAC5B,eAAA,OAAO,OAAO,QAAQ;AAC7B,eAAO,SAAS,OAAO,UAAU,IAAI,UAAU;AACxC,eAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,6BAAmB,KAAK;AAClB,gBAAA,OAAO,EAAE;QAAW,CAC3B;AAEM,eAAA,OAAO,OAAO,MAAM;AAAA,MAAA,CAC5B;AAAA,IACH;AAAA,EACF;AACF;AAKA,MAAM,oBAAoB,CAAC,WAAwB;AACjD,aAAW,WAAW,OAAO,KAAK,OAAO,GAAG,GAAG;AACvC,UAAA,MAAM,OAAO,IAAI,OAAO;AAE9B,UAAM,qBAAqB,0BAA0B,QAAQ,OAAO,EAAE;AAEtE,MAAE,QAAQ,IAAI,QAAQ,CAAC,WAAW;AAGhC,aAAO,OAAO;AACP,aAAA,QAAQ,QAAQ,CAAC,UAAU;AAChC,2BAAmB,KAAK;AAClB,cAAA,OAAO,EAAE;MAAQ,CACxB;AAEM,aAAA,OAAO,OAAO,OAAO,MAAM;AAAA,IAAA,CACnC;AAAA,EACH;AACF;"}
1
+ {"version":3,"file":"register-routes.mjs","sources":["../../../src/services/server/register-routes.ts"],"sourcesContent":["import _ from 'lodash';\nimport type { Core } from '@strapi/types';\n\nconst createRouteScopeGenerator = (namespace: string) => (route: Core.RouteInput) => {\n const prefix = namespace.endsWith('::') ? namespace : `${namespace}.`;\n\n if (typeof route.handler === 'string') {\n _.defaultsDeep(route, {\n config: {\n auth: {\n scope: [`${route.handler.startsWith(prefix) ? '' : prefix}${route.handler}`],\n },\n },\n });\n }\n};\n\n/**\n * Register all routes\n */\nexport default (strapi: Core.Strapi) => {\n registerAdminRoutes(strapi);\n registerAPIRoutes(strapi);\n registerPluginRoutes(strapi);\n};\n\n/**\n * Register admin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerAdminRoutes = (strapi: Core.Strapi) => {\n const generateRouteScope = createRouteScopeGenerator(`admin::`);\n\n _.forEach(strapi.admin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/admin`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName: 'admin' };\n });\n strapi.server.routes(router);\n });\n};\n\n/**\n * Register plugin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerPluginRoutes = (strapi: Core.Strapi) => {\n for (const pluginName of Object.keys(strapi.plugins)) {\n const plugin = strapi.plugins[pluginName];\n\n const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);\n\n if (Array.isArray(plugin.routes)) {\n plugin.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes({\n type: 'admin',\n prefix: `/${pluginName}`,\n routes: plugin.routes,\n });\n } else {\n _.forEach(plugin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/${pluginName}`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes(router);\n });\n }\n }\n};\n\n/**\n * Register api routes\n */\nconst registerAPIRoutes = (strapi: Core.Strapi) => {\n for (const apiName of Object.keys(strapi.apis)) {\n const api = strapi.api(apiName);\n\n const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);\n\n _.forEach(api.routes, (router) => {\n // TODO: remove once auth setup\n // pass meta down to compose endpoint\n router.type = 'content-api';\n router.routes?.forEach((route) => {\n generateRouteScope(route);\n route.info = { apiName };\n });\n\n return strapi.server.routes(router);\n });\n }\n};\n"],"names":[],"mappings":";AAGA,MAAM,4BAA4B,CAAC,cAAsB,CAAC,UAA2B;AACnF,QAAM,SAAS,UAAU,SAAS,IAAI,IAAI,YAAY,GAAG,SAAS;AAE9D,MAAA,OAAO,MAAM,YAAY,UAAU;AACrC,MAAE,aAAa,OAAO;AAAA,MACpB,QAAQ;AAAA,QACN,MAAM;AAAA,UACJ,OAAO,CAAC,GAAG,MAAM,QAAQ,WAAW,MAAM,IAAI,KAAK,MAAM,GAAG,MAAM,OAAO,EAAE;AAAA,QAC7E;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EACH;AACF;AAKA,MAAe,oBAAA,CAAC,WAAwB;AACtC,sBAAoB,MAAM;AAC1B,oBAAkB,MAAM;AACxB,uBAAqB,MAAM;AAC7B;AAMA,MAAM,sBAAsB,CAAC,WAAwB;AAC7C,QAAA,qBAAqB,0BAA0B,SAAS;AAE9D,IAAE,QAAQ,OAAO,MAAM,QAAQ,CAAC,WAAW;AAClC,WAAA,OAAO,OAAO,QAAQ;AACtB,WAAA,SAAS,OAAO,UAAU;AAC1B,WAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,yBAAmB,KAAK;AAClB,YAAA,OAAO,EAAE,YAAY,QAAQ;AAAA,IAAA,CACpC;AACM,WAAA,OAAO,OAAO,MAAM;AAAA,EAAA,CAC5B;AACH;AAMA,MAAM,uBAAuB,CAAC,WAAwB;AACpD,aAAW,cAAc,OAAO,KAAK,OAAO,OAAO,GAAG;AAC9C,UAAA,SAAS,OAAO,QAAQ,UAAU;AAExC,UAAM,qBAAqB,0BAA0B,WAAW,UAAU,EAAE;AAE5E,QAAI,MAAM,QAAQ,OAAO,MAAM,GAAG;AACzB,aAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,2BAAmB,KAAK;AAClB,cAAA,OAAO,EAAE;MAAW,CAC3B;AAED,aAAO,OAAO,OAAO;AAAA,QACnB,MAAM;AAAA,QACN,QAAQ,IAAI,UAAU;AAAA,QACtB,QAAQ,OAAO;AAAA,MAAA,CAChB;AAAA,IAAA,OACI;AACL,QAAE,QAAQ,OAAO,QAAQ,CAAC,WAAW;AAC5B,eAAA,OAAO,OAAO,QAAQ;AAC7B,eAAO,SAAS,OAAO,UAAU,IAAI,UAAU;AACxC,eAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,6BAAmB,KAAK;AAClB,gBAAA,OAAO,EAAE;QAAW,CAC3B;AAEM,eAAA,OAAO,OAAO,MAAM;AAAA,MAAA,CAC5B;AAAA,IACH;AAAA,EACF;AACF;AAKA,MAAM,oBAAoB,CAAC,WAAwB;AACjD,aAAW,WAAW,OAAO,KAAK,OAAO,IAAI,GAAG;AACxC,UAAA,MAAM,OAAO,IAAI,OAAO;AAE9B,UAAM,qBAAqB,0BAA0B,QAAQ,OAAO,EAAE;AAEtE,MAAE,QAAQ,IAAI,QAAQ,CAAC,WAAW;AAGhC,aAAO,OAAO;AACP,aAAA,QAAQ,QAAQ,CAAC,UAAU;AAChC,2BAAmB,KAAK;AAClB,cAAA,OAAO,EAAE;MAAQ,CACxB;AAEM,aAAA,OAAO,OAAO,OAAO,MAAM;AAAA,IAAA,CACnC;AAAA,EACH;AACF;"}
@@ -6,7 +6,7 @@ import type { Core } from '@strapi/types';
6
6
  declare const validateRouteConfig: (routeConfig: Core.RouteInput) => import("yup/lib/object").AssertsShape<{
7
7
  method: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
8
8
  path: import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>>;
9
- handler: import("yup/lib/Lazy").default<import("yup/lib/mixed").MixedSchema<any, Record<string, any>, any> | import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>> | import("yup/lib/array").RequiredArraySchema<yup.AnySchema, import("yup/lib/types").AnyObject, any[] | undefined>, any>;
9
+ handler: import("yup/lib/Lazy").default<import("yup/lib/string").RequiredStringSchema<string | undefined, Record<string, any>> | import("yup/lib/mixed").MixedSchema<any, Record<string, any>, any> | import("yup/lib/array").RequiredArraySchema<yup.AnySchema, import("yup/lib/types").AnyObject, any[] | undefined>, any>;
10
10
  config: import("yup/lib/object").OptionalObjectSchema<{
11
11
  auth: import("yup/lib/Lazy").default<import("yup/lib/boolean").RequiredBooleanSchema<boolean | undefined, Record<string, any>> | import("yup/lib/object").OptionalObjectSchema<{
12
12
  scope: import("yup/lib/array").RequiredArraySchema<import("yup").StringSchema<string | undefined, Record<string, any>, string | undefined>, import("yup/lib/types").AnyObject, (string | undefined)[] | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"webhook-store.d.ts","sourceRoot":"","sources":["../../src/services/webhook-store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIxD,QAAA,MAAM,YAAY,EAAE,KAwBnB,CAAC;AAmBF,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACpB;AAmCD,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,iBAAiB,IAAI,MAAM,EAAE,CAAC;IAC9B,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACjD,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IACjD,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAClE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;CACpD;AAED,QAAA,MAAM,kBAAkB;QAAkB,QAAQ;MAAK,YAkDtD,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"webhook-store.d.ts","sourceRoot":"","sources":["../../src/services/webhook-store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAIxD,QAAA,MAAM,YAAY,EAAE,KAwBnB,CAAC;AAmBF,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACpB;AAmCD,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,iBAAiB,IAAI,MAAM,EAAE,CAAC;IAC9B,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACjD,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IACjD,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAClE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;CACpD;AAED,QAAA,MAAM,kBAAkB;QAAkB,QAAQ;MAAK,YAiDtD,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
@@ -56,7 +56,6 @@ const webhookEventValidator = async (allowedEvents, events) => {
56
56
  });
57
57
  };
58
58
  const createWebhookStore = ({ db }) => {
59
- const webhookQueries = db.query("strapi::webhook");
60
59
  return {
61
60
  allowedEvents: /* @__PURE__ */ new Map([]),
62
61
  addAllowedEvent(key, value) {
@@ -72,29 +71,29 @@ const createWebhookStore = ({ db }) => {
72
71
  return this.allowedEvents.get(key);
73
72
  },
74
73
  async findWebhooks() {
75
- const results = await webhookQueries.findMany();
74
+ const results = await db.query("strapi::webhook").findMany();
76
75
  return results.map(fromDBObject);
77
76
  },
78
77
  async findWebhook(id) {
79
- const result = await webhookQueries.findOne({ where: { id } });
78
+ const result = await db.query("strapi::webhook").findOne({ where: { id } });
80
79
  return result ? fromDBObject(result) : null;
81
80
  },
82
81
  async createWebhook(data) {
83
82
  await webhookEventValidator(this.allowedEvents, data.events);
84
- return webhookQueries.create({
83
+ return db.query("strapi::webhook").create({
85
84
  data: toDBObject({ ...data, isEnabled: true })
86
85
  }).then(fromDBObject);
87
86
  },
88
87
  async updateWebhook(id, data) {
89
88
  await webhookEventValidator(this.allowedEvents, data.events);
90
- const webhook = await webhookQueries.update({
89
+ const webhook = await db.query("strapi::webhook").update({
91
90
  where: { id },
92
91
  data: toDBObject(data)
93
92
  });
94
93
  return webhook ? fromDBObject(webhook) : null;
95
94
  },
96
95
  async deleteWebhook(id) {
97
- const webhook = await webhookQueries.delete({ where: { id } });
96
+ const webhook = await db.query("strapi::webhook").delete({ where: { id } });
98
97
  return webhook ? fromDBObject(webhook) : null;
99
98
  }
100
99
  };
@@ -1 +1 @@
1
- {"version":3,"file":"webhook-store.js","sources":["../../src/services/webhook-store.ts"],"sourcesContent":["/**\n * Webhook store is the implementation of webhook storage over the core_store\n */\n\nimport { errors } from '@strapi/utils';\nimport type { Model, Database } from '@strapi/database';\n\nconst { ValidationError } = errors;\n\nconst webhookModel: Model = {\n uid: 'strapi::webhook',\n singularName: 'strapi_webhooks',\n tableName: 'strapi_webhooks',\n attributes: {\n id: {\n type: 'increments',\n },\n name: {\n type: 'string',\n },\n url: {\n type: 'text',\n },\n headers: {\n type: 'json',\n },\n events: {\n type: 'json',\n },\n enabled: {\n type: 'boolean',\n },\n },\n};\n\ninterface DBInput {\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n enabled: boolean;\n}\n\ninterface DBOutput {\n id: string;\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n enabled: boolean;\n}\n\nexport interface Webhook {\n id: string;\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n isEnabled: boolean;\n}\n\nconst toDBObject = (data: Webhook): DBInput => {\n return {\n name: data.name,\n url: data.url,\n headers: data.headers,\n events: data.events,\n enabled: data.isEnabled,\n };\n};\n\nconst fromDBObject = (row: DBOutput): Webhook => {\n return {\n id: row.id,\n name: row.name,\n url: row.url,\n headers: row.headers,\n events: row.events,\n isEnabled: row.enabled,\n };\n};\n\nconst webhookEventValidator = async (allowedEvents: Map<string, string>, events: string[]) => {\n const allowedValues = Array.from(allowedEvents.values());\n\n events.forEach((event) => {\n if (allowedValues.includes(event)) {\n return;\n }\n\n throw new ValidationError(`Webhook event ${event} is not supported`);\n });\n};\n\nexport interface WebhookStore {\n allowedEvents: Map<string, string>;\n addAllowedEvent(key: string, value: string): void;\n removeAllowedEvent(key: string): void;\n listAllowedEvents(): string[];\n getAllowedEvent(key: string): string | undefined;\n findWebhooks(): Promise<Webhook[]>;\n findWebhook(id: string): Promise<Webhook | null>;\n createWebhook(data: Webhook): Promise<Webhook>;\n updateWebhook(id: string, data: Webhook): Promise<Webhook | null>;\n deleteWebhook(id: string): Promise<Webhook | null>;\n}\n\nconst createWebhookStore = ({ db }: { db: Database }): WebhookStore => {\n const webhookQueries = db.query('strapi::webhook');\n\n return {\n allowedEvents: new Map([]),\n addAllowedEvent(key, value) {\n this.allowedEvents.set(key, value);\n },\n removeAllowedEvent(key) {\n this.allowedEvents.delete(key);\n },\n listAllowedEvents() {\n return Array.from(this.allowedEvents.keys());\n },\n getAllowedEvent(key) {\n return this.allowedEvents.get(key);\n },\n async findWebhooks() {\n const results = await webhookQueries.findMany();\n\n return results.map(fromDBObject);\n },\n async findWebhook(id) {\n const result = await webhookQueries.findOne({ where: { id } });\n return result ? fromDBObject(result) : null;\n },\n async createWebhook(data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n return webhookQueries\n .create({\n data: toDBObject({ ...data, isEnabled: true }),\n })\n .then(fromDBObject);\n },\n async updateWebhook(id, data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n const webhook = await webhookQueries.update({\n where: { id },\n data: toDBObject(data),\n });\n\n return webhook ? fromDBObject(webhook) : null;\n },\n async deleteWebhook(id) {\n const webhook = await webhookQueries.delete({ where: { id } });\n return webhook ? fromDBObject(webhook) : null;\n },\n };\n};\n\nexport { webhookModel, createWebhookStore };\n"],"names":["errors"],"mappings":"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"}
1
+ {"version":3,"file":"webhook-store.js","sources":["../../src/services/webhook-store.ts"],"sourcesContent":["/**\n * Webhook store is the implementation of webhook storage over the core_store\n */\n\nimport { errors } from '@strapi/utils';\nimport type { Model, Database } from '@strapi/database';\n\nconst { ValidationError } = errors;\n\nconst webhookModel: Model = {\n uid: 'strapi::webhook',\n singularName: 'strapi_webhooks',\n tableName: 'strapi_webhooks',\n attributes: {\n id: {\n type: 'increments',\n },\n name: {\n type: 'string',\n },\n url: {\n type: 'text',\n },\n headers: {\n type: 'json',\n },\n events: {\n type: 'json',\n },\n enabled: {\n type: 'boolean',\n },\n },\n};\n\ninterface DBInput {\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n enabled: boolean;\n}\n\ninterface DBOutput {\n id: string;\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n enabled: boolean;\n}\n\nexport interface Webhook {\n id: string;\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n isEnabled: boolean;\n}\n\nconst toDBObject = (data: Webhook): DBInput => {\n return {\n name: data.name,\n url: data.url,\n headers: data.headers,\n events: data.events,\n enabled: data.isEnabled,\n };\n};\n\nconst fromDBObject = (row: DBOutput): Webhook => {\n return {\n id: row.id,\n name: row.name,\n url: row.url,\n headers: row.headers,\n events: row.events,\n isEnabled: row.enabled,\n };\n};\n\nconst webhookEventValidator = async (allowedEvents: Map<string, string>, events: string[]) => {\n const allowedValues = Array.from(allowedEvents.values());\n\n events.forEach((event) => {\n if (allowedValues.includes(event)) {\n return;\n }\n\n throw new ValidationError(`Webhook event ${event} is not supported`);\n });\n};\n\nexport interface WebhookStore {\n allowedEvents: Map<string, string>;\n addAllowedEvent(key: string, value: string): void;\n removeAllowedEvent(key: string): void;\n listAllowedEvents(): string[];\n getAllowedEvent(key: string): string | undefined;\n findWebhooks(): Promise<Webhook[]>;\n findWebhook(id: string): Promise<Webhook | null>;\n createWebhook(data: Webhook): Promise<Webhook>;\n updateWebhook(id: string, data: Webhook): Promise<Webhook | null>;\n deleteWebhook(id: string): Promise<Webhook | null>;\n}\n\nconst createWebhookStore = ({ db }: { db: Database }): WebhookStore => {\n return {\n allowedEvents: new Map([]),\n addAllowedEvent(key, value) {\n this.allowedEvents.set(key, value);\n },\n removeAllowedEvent(key) {\n this.allowedEvents.delete(key);\n },\n listAllowedEvents() {\n return Array.from(this.allowedEvents.keys());\n },\n getAllowedEvent(key) {\n return this.allowedEvents.get(key);\n },\n async findWebhooks() {\n const results = await db.query('strapi::webhook').findMany();\n\n return results.map(fromDBObject);\n },\n async findWebhook(id) {\n const result = await db.query('strapi::webhook').findOne({ where: { id } });\n return result ? fromDBObject(result) : null;\n },\n async createWebhook(data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n return db\n .query('strapi::webhook')\n .create({\n data: toDBObject({ ...data, isEnabled: true }),\n })\n .then(fromDBObject);\n },\n async updateWebhook(id, data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n const webhook = await db.query('strapi::webhook').update({\n where: { id },\n data: toDBObject(data),\n });\n\n return webhook ? fromDBObject(webhook) : null;\n },\n async deleteWebhook(id) {\n const webhook = await db.query('strapi::webhook').delete({ where: { id } });\n return webhook ? fromDBObject(webhook) : null;\n },\n };\n};\n\nexport { webhookModel, createWebhookStore };\n"],"names":["errors"],"mappings":"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"}
@@ -54,7 +54,6 @@ const webhookEventValidator = async (allowedEvents, events) => {
54
54
  });
55
55
  };
56
56
  const createWebhookStore = ({ db }) => {
57
- const webhookQueries = db.query("strapi::webhook");
58
57
  return {
59
58
  allowedEvents: /* @__PURE__ */ new Map([]),
60
59
  addAllowedEvent(key, value) {
@@ -70,29 +69,29 @@ const createWebhookStore = ({ db }) => {
70
69
  return this.allowedEvents.get(key);
71
70
  },
72
71
  async findWebhooks() {
73
- const results = await webhookQueries.findMany();
72
+ const results = await db.query("strapi::webhook").findMany();
74
73
  return results.map(fromDBObject);
75
74
  },
76
75
  async findWebhook(id) {
77
- const result = await webhookQueries.findOne({ where: { id } });
76
+ const result = await db.query("strapi::webhook").findOne({ where: { id } });
78
77
  return result ? fromDBObject(result) : null;
79
78
  },
80
79
  async createWebhook(data) {
81
80
  await webhookEventValidator(this.allowedEvents, data.events);
82
- return webhookQueries.create({
81
+ return db.query("strapi::webhook").create({
83
82
  data: toDBObject({ ...data, isEnabled: true })
84
83
  }).then(fromDBObject);
85
84
  },
86
85
  async updateWebhook(id, data) {
87
86
  await webhookEventValidator(this.allowedEvents, data.events);
88
- const webhook = await webhookQueries.update({
87
+ const webhook = await db.query("strapi::webhook").update({
89
88
  where: { id },
90
89
  data: toDBObject(data)
91
90
  });
92
91
  return webhook ? fromDBObject(webhook) : null;
93
92
  },
94
93
  async deleteWebhook(id) {
95
- const webhook = await webhookQueries.delete({ where: { id } });
94
+ const webhook = await db.query("strapi::webhook").delete({ where: { id } });
96
95
  return webhook ? fromDBObject(webhook) : null;
97
96
  }
98
97
  };
@@ -1 +1 @@
1
- {"version":3,"file":"webhook-store.mjs","sources":["../../src/services/webhook-store.ts"],"sourcesContent":["/**\n * Webhook store is the implementation of webhook storage over the core_store\n */\n\nimport { errors } from '@strapi/utils';\nimport type { Model, Database } from '@strapi/database';\n\nconst { ValidationError } = errors;\n\nconst webhookModel: Model = {\n uid: 'strapi::webhook',\n singularName: 'strapi_webhooks',\n tableName: 'strapi_webhooks',\n attributes: {\n id: {\n type: 'increments',\n },\n name: {\n type: 'string',\n },\n url: {\n type: 'text',\n },\n headers: {\n type: 'json',\n },\n events: {\n type: 'json',\n },\n enabled: {\n type: 'boolean',\n },\n },\n};\n\ninterface DBInput {\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n enabled: boolean;\n}\n\ninterface DBOutput {\n id: string;\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n enabled: boolean;\n}\n\nexport interface Webhook {\n id: string;\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n isEnabled: boolean;\n}\n\nconst toDBObject = (data: Webhook): DBInput => {\n return {\n name: data.name,\n url: data.url,\n headers: data.headers,\n events: data.events,\n enabled: data.isEnabled,\n };\n};\n\nconst fromDBObject = (row: DBOutput): Webhook => {\n return {\n id: row.id,\n name: row.name,\n url: row.url,\n headers: row.headers,\n events: row.events,\n isEnabled: row.enabled,\n };\n};\n\nconst webhookEventValidator = async (allowedEvents: Map<string, string>, events: string[]) => {\n const allowedValues = Array.from(allowedEvents.values());\n\n events.forEach((event) => {\n if (allowedValues.includes(event)) {\n return;\n }\n\n throw new ValidationError(`Webhook event ${event} is not supported`);\n });\n};\n\nexport interface WebhookStore {\n allowedEvents: Map<string, string>;\n addAllowedEvent(key: string, value: string): void;\n removeAllowedEvent(key: string): void;\n listAllowedEvents(): string[];\n getAllowedEvent(key: string): string | undefined;\n findWebhooks(): Promise<Webhook[]>;\n findWebhook(id: string): Promise<Webhook | null>;\n createWebhook(data: Webhook): Promise<Webhook>;\n updateWebhook(id: string, data: Webhook): Promise<Webhook | null>;\n deleteWebhook(id: string): Promise<Webhook | null>;\n}\n\nconst createWebhookStore = ({ db }: { db: Database }): WebhookStore => {\n const webhookQueries = db.query('strapi::webhook');\n\n return {\n allowedEvents: new Map([]),\n addAllowedEvent(key, value) {\n this.allowedEvents.set(key, value);\n },\n removeAllowedEvent(key) {\n this.allowedEvents.delete(key);\n },\n listAllowedEvents() {\n return Array.from(this.allowedEvents.keys());\n },\n getAllowedEvent(key) {\n return this.allowedEvents.get(key);\n },\n async findWebhooks() {\n const results = await webhookQueries.findMany();\n\n return results.map(fromDBObject);\n },\n async findWebhook(id) {\n const result = await webhookQueries.findOne({ where: { id } });\n return result ? fromDBObject(result) : null;\n },\n async createWebhook(data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n return webhookQueries\n .create({\n data: toDBObject({ ...data, isEnabled: true }),\n })\n .then(fromDBObject);\n },\n async updateWebhook(id, data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n const webhook = await webhookQueries.update({\n where: { id },\n data: toDBObject(data),\n });\n\n return webhook ? fromDBObject(webhook) : null;\n },\n async deleteWebhook(id) {\n const webhook = await webhookQueries.delete({ where: { id } });\n return webhook ? fromDBObject(webhook) : null;\n },\n };\n};\n\nexport { webhookModel, createWebhookStore };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webhook-store.mjs","sources":["../../src/services/webhook-store.ts"],"sourcesContent":["/**\n * Webhook store is the implementation of webhook storage over the core_store\n */\n\nimport { errors } from '@strapi/utils';\nimport type { Model, Database } from '@strapi/database';\n\nconst { ValidationError } = errors;\n\nconst webhookModel: Model = {\n uid: 'strapi::webhook',\n singularName: 'strapi_webhooks',\n tableName: 'strapi_webhooks',\n attributes: {\n id: {\n type: 'increments',\n },\n name: {\n type: 'string',\n },\n url: {\n type: 'text',\n },\n headers: {\n type: 'json',\n },\n events: {\n type: 'json',\n },\n enabled: {\n type: 'boolean',\n },\n },\n};\n\ninterface DBInput {\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n enabled: boolean;\n}\n\ninterface DBOutput {\n id: string;\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n enabled: boolean;\n}\n\nexport interface Webhook {\n id: string;\n name: string;\n url: string;\n headers: Record<string, string>;\n events: string[];\n isEnabled: boolean;\n}\n\nconst toDBObject = (data: Webhook): DBInput => {\n return {\n name: data.name,\n url: data.url,\n headers: data.headers,\n events: data.events,\n enabled: data.isEnabled,\n };\n};\n\nconst fromDBObject = (row: DBOutput): Webhook => {\n return {\n id: row.id,\n name: row.name,\n url: row.url,\n headers: row.headers,\n events: row.events,\n isEnabled: row.enabled,\n };\n};\n\nconst webhookEventValidator = async (allowedEvents: Map<string, string>, events: string[]) => {\n const allowedValues = Array.from(allowedEvents.values());\n\n events.forEach((event) => {\n if (allowedValues.includes(event)) {\n return;\n }\n\n throw new ValidationError(`Webhook event ${event} is not supported`);\n });\n};\n\nexport interface WebhookStore {\n allowedEvents: Map<string, string>;\n addAllowedEvent(key: string, value: string): void;\n removeAllowedEvent(key: string): void;\n listAllowedEvents(): string[];\n getAllowedEvent(key: string): string | undefined;\n findWebhooks(): Promise<Webhook[]>;\n findWebhook(id: string): Promise<Webhook | null>;\n createWebhook(data: Webhook): Promise<Webhook>;\n updateWebhook(id: string, data: Webhook): Promise<Webhook | null>;\n deleteWebhook(id: string): Promise<Webhook | null>;\n}\n\nconst createWebhookStore = ({ db }: { db: Database }): WebhookStore => {\n return {\n allowedEvents: new Map([]),\n addAllowedEvent(key, value) {\n this.allowedEvents.set(key, value);\n },\n removeAllowedEvent(key) {\n this.allowedEvents.delete(key);\n },\n listAllowedEvents() {\n return Array.from(this.allowedEvents.keys());\n },\n getAllowedEvent(key) {\n return this.allowedEvents.get(key);\n },\n async findWebhooks() {\n const results = await db.query('strapi::webhook').findMany();\n\n return results.map(fromDBObject);\n },\n async findWebhook(id) {\n const result = await db.query('strapi::webhook').findOne({ where: { id } });\n return result ? fromDBObject(result) : null;\n },\n async createWebhook(data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n return db\n .query('strapi::webhook')\n .create({\n data: toDBObject({ ...data, isEnabled: true }),\n })\n .then(fromDBObject);\n },\n async updateWebhook(id, data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n const webhook = await db.query('strapi::webhook').update({\n where: { id },\n data: toDBObject(data),\n });\n\n return webhook ? fromDBObject(webhook) : null;\n },\n async deleteWebhook(id) {\n const webhook = await db.query('strapi::webhook').delete({ where: { id } });\n return webhook ? fromDBObject(webhook) : null;\n },\n };\n};\n\nexport { webhookModel, createWebhookStore };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export { openBrowser } from './open-browser';
2
2
  export { isInitialized } from './is-initialized';
3
- export { getDirs } from './get-dirs';
3
+ export { getDirs } from '../configuration/get-dirs';
4
4
  export { ee } from './ee';
5
5
  export { createUpdateNotifier } from './update-notifier';
6
6
  export { createStrapiFetch, Fetch } from './fetch';
@@ -9,4 +9,5 @@ export { createStartupLogger } from './startup-logger';
9
9
  export { transformContentTypesToModels } from './transform-content-types-to-models';
10
10
  export { destroyOnSignal } from './signals';
11
11
  export { LIFECYCLES } from './lifecycles';
12
+ export { resolveWorkingDirectories } from './resolve-working-dirs';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Resolve the working directories based on the instance options.
3
+ *
4
+ * Behavior:
5
+ * - `appDir` is the directory where Strapi will write every file (schemas, generated APIs, controllers or services)
6
+ * - `distDir` is the directory where Strapi will read configurations, schemas and any compiled code
7
+ *
8
+ * Default values:
9
+ * - If `appDir` is `undefined`, it'll be set to `process.cwd()`
10
+ * - If `distDir` is `undefined`, it'll be set to `appDir`
11
+ */
12
+ export declare const resolveWorkingDirectories: (opts: {
13
+ appDir?: string;
14
+ distDir?: string;
15
+ }) => {
16
+ appDir: string;
17
+ distDir: string;
18
+ };
19
+ //# sourceMappingURL=resolve-working-dirs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-working-dirs.d.ts","sourceRoot":"","sources":["../../src/utils/resolve-working-dirs.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,SAAU;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE;;;CAOpF,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const path = require("node:path");
4
+ const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
5
+ const path__default = /* @__PURE__ */ _interopDefault(path);
6
+ const resolveWorkingDirectories = (opts) => {
7
+ const cwd = process.cwd();
8
+ const appDir = opts.appDir ? path__default.default.resolve(cwd, opts.appDir) : cwd;
9
+ const distDir = opts.distDir ? path__default.default.resolve(cwd, opts.distDir) : appDir;
10
+ return { appDir, distDir };
11
+ };
12
+ exports.resolveWorkingDirectories = resolveWorkingDirectories;
13
+ //# sourceMappingURL=resolve-working-dirs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-working-dirs.js","sources":["../../src/utils/resolve-working-dirs.ts"],"sourcesContent":["import path from 'node:path';\n\n/**\n * Resolve the working directories based on the instance options.\n *\n * Behavior:\n * - `appDir` is the directory where Strapi will write every file (schemas, generated APIs, controllers or services)\n * - `distDir` is the directory where Strapi will read configurations, schemas and any compiled code\n *\n * Default values:\n * - If `appDir` is `undefined`, it'll be set to `process.cwd()`\n * - If `distDir` is `undefined`, it'll be set to `appDir`\n */\nexport const resolveWorkingDirectories = (opts: { appDir?: string; distDir?: string }) => {\n const cwd = process.cwd();\n\n const appDir = opts.appDir ? path.resolve(cwd, opts.appDir) : cwd;\n const distDir = opts.distDir ? path.resolve(cwd, opts.distDir) : appDir;\n\n return { appDir, distDir };\n};\n"],"names":["path"],"mappings":";;;;;AAaa,MAAA,4BAA4B,CAAC,SAAgD;AAClF,QAAA,MAAM,QAAQ;AAEd,QAAA,SAAS,KAAK,SAASA,cAAA,QAAK,QAAQ,KAAK,KAAK,MAAM,IAAI;AACxD,QAAA,UAAU,KAAK,UAAUA,cAAA,QAAK,QAAQ,KAAK,KAAK,OAAO,IAAI;AAE1D,SAAA,EAAE,QAAQ;AACnB;;"}
@@ -0,0 +1,11 @@
1
+ import path from "node:path";
2
+ const resolveWorkingDirectories = (opts) => {
3
+ const cwd = process.cwd();
4
+ const appDir = opts.appDir ? path.resolve(cwd, opts.appDir) : cwd;
5
+ const distDir = opts.distDir ? path.resolve(cwd, opts.distDir) : appDir;
6
+ return { appDir, distDir };
7
+ };
8
+ export {
9
+ resolveWorkingDirectories
10
+ };
11
+ //# sourceMappingURL=resolve-working-dirs.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-working-dirs.mjs","sources":["../../src/utils/resolve-working-dirs.ts"],"sourcesContent":["import path from 'node:path';\n\n/**\n * Resolve the working directories based on the instance options.\n *\n * Behavior:\n * - `appDir` is the directory where Strapi will write every file (schemas, generated APIs, controllers or services)\n * - `distDir` is the directory where Strapi will read configurations, schemas and any compiled code\n *\n * Default values:\n * - If `appDir` is `undefined`, it'll be set to `process.cwd()`\n * - If `distDir` is `undefined`, it'll be set to `appDir`\n */\nexport const resolveWorkingDirectories = (opts: { appDir?: string; distDir?: string }) => {\n const cwd = process.cwd();\n\n const appDir = opts.appDir ? path.resolve(cwd, opts.appDir) : cwd;\n const distDir = opts.distDir ? path.resolve(cwd, opts.distDir) : appDir;\n\n return { appDir, distDir };\n};\n"],"names":[],"mappings":";AAaa,MAAA,4BAA4B,CAAC,SAAgD;AAClF,QAAA,MAAM,QAAQ;AAEd,QAAA,SAAS,KAAK,SAAS,KAAK,QAAQ,KAAK,KAAK,MAAM,IAAI;AACxD,QAAA,UAAU,KAAK,UAAU,KAAK,QAAQ,KAAK,KAAK,OAAO,IAAI;AAE1D,SAAA,EAAE,QAAQ;AACnB;"}
@@ -1,4 +1,4 @@
1
- import { type Model } from '@strapi/database';
1
+ import { type Model, type Identifiers } from '@strapi/database';
2
2
  import type { Struct, Schema } from '@strapi/types';
3
3
  import { createId } from '@paralleldrive/cuid2';
4
4
  /**
@@ -6,16 +6,21 @@ import { createId } from '@paralleldrive/cuid2';
6
6
  * to a relations format that it recognizes
7
7
  *
8
8
  * Therefore we have to keep an additional set of helpers/extensions to the database naming methods
9
+ *
10
+ * IMPORTANT!
11
+ * If we use short versions of anything, we MUST call getNameFromTokens directly; attempting to shorten them ourselves
12
+ * prevents the unshortened name map from being filled properly, so for example it will think that the short name
13
+ * 'collection4f3a_cmps' maps to the unshortened 'collectionname_cmps' rather than 'collectionname_components'
14
+ * Therefore, we only use the identifiers helpers in cases where we do not do any of our own shortening
9
15
  */
10
- export declare const COMPONENT_JOIN_TABLE_SUFFIX = "components";
11
- export declare const DZ_JOIN_TABLE_SUFFIX = "components";
12
- export declare const COMPONENT_INVERSE_COLUMN_NAME = "component";
13
- export declare const COMPONENT_TYPE_COLUMN = "component_type";
14
- export declare const ENTITY = "entity";
15
- export declare const getComponentJoinTableName: (collectionName: string) => string;
16
- export declare const getDzJoinTableName: (collectionName: string) => string;
16
+ export declare const getComponentJoinTableName: (collectionName: string, identifiers: Identifiers) => string;
17
+ export declare const getDzJoinTableName: (collectionName: string, identifiers: Identifiers) => string;
18
+ export declare const getComponentJoinColumnEntityName: (identifiers: Identifiers) => string;
19
+ export declare const getComponentJoinColumnInverseName: (identifiers: Identifiers) => string;
20
+ export declare const getComponentTypeColumn: (identifiers: Identifiers) => string;
21
+ export declare const getComponentFkIndexName: (contentType: string, identifiers: Identifiers) => string;
17
22
  export type LoadedContentTypeModel = Struct.ContentTypeSchema & Required<Pick<Struct.ContentTypeSchema, 'collectionName' | 'uid' | 'modelName'>>;
18
- export declare const transformAttribute: (name: string, attribute: Schema.Attribute.AnyAttribute, contentType: LoadedContentTypeModel) => (Schema.Attribute.OfType<"biginteger"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<string> & Schema.Attribute.MinMaxOption<string> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.UniqueOption) | (Schema.Attribute.OfType<"boolean"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<boolean> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"blocks"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"datetime"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<Schema.Attribute.DateTimeValue> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.UniqueOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"date"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<Schema.Attribute.DateValue> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.UniqueOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"decimal"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<number> & Schema.Attribute.MinMaxOption<number> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.UniqueOption) | (Schema.Attribute.OfType<"email"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<string> & Schema.Attribute.MinMaxLengthOption & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.UniqueOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"enumeration"> & Schema.Attribute.EnumerationProperties<string[]> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<string> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"float"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<number> & Schema.Attribute.MinMaxOption<number> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.UniqueOption) | (Schema.Attribute.OfType<"integer"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<number> & Schema.Attribute.MinMaxOption<number> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.UniqueOption) | (Schema.Attribute.OfType<"json"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.RequiredOption & Schema.Attribute.PrivateOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.DefaultOption<import("@strapi/types/dist/utils").JSONPrimitive>) | (Schema.Attribute.OfType<"password"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<string> & Schema.Attribute.MinMaxLengthOption & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"relation"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.PrivateOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.RequiredOption & {
23
+ export declare const transformAttribute: (name: string, attribute: Schema.Attribute.AnyAttribute, contentType: LoadedContentTypeModel, identifiers: Identifiers) => (Schema.Attribute.OfType<"biginteger"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<string> & Schema.Attribute.MinMaxOption<string> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.UniqueOption) | (Schema.Attribute.OfType<"boolean"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<boolean> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"blocks"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"datetime"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<Schema.Attribute.DateTimeValue> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.UniqueOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"date"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<Schema.Attribute.DateValue> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.UniqueOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"decimal"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<number> & Schema.Attribute.MinMaxOption<number> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.UniqueOption) | (Schema.Attribute.OfType<"email"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<string> & Schema.Attribute.MinMaxLengthOption & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.UniqueOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"enumeration"> & Schema.Attribute.EnumerationProperties<string[]> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<string> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"float"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<number> & Schema.Attribute.MinMaxOption<number> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.UniqueOption) | (Schema.Attribute.OfType<"integer"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<number> & Schema.Attribute.MinMaxOption<number> & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.UniqueOption) | (Schema.Attribute.OfType<"json"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.RequiredOption & Schema.Attribute.PrivateOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.DefaultOption<import("@strapi/types/dist/utils").JSONPrimitive>) | (Schema.Attribute.OfType<"password"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.DefaultOption<string> & Schema.Attribute.MinMaxLengthOption & Schema.Attribute.PrivateOption & Schema.Attribute.RequiredOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption) | (Schema.Attribute.OfType<"relation"> & Schema.Attribute.ConfigurableOption & Schema.Attribute.PrivateOption & Schema.Attribute.WritableOption & Schema.Attribute.VisibleOption & Schema.Attribute.RequiredOption & {
19
24
  useJoinTable?: boolean | undefined;
20
25
  } & {
21
26
  relation: "morphToOne";
@@ -69,16 +74,16 @@ export declare const transformAttribute: (name: string, attribute: Schema.Attrib
69
74
  name: string;
70
75
  joinColumn: {
71
76
  name: string;
72
- referencedColumn: string;
77
+ referencedColumn: "id";
73
78
  };
74
79
  inverseJoinColumn: {
75
80
  name: string;
76
- referencedColumn: string;
81
+ referencedColumn: "id";
77
82
  };
78
83
  on: {
79
84
  field: string;
80
85
  };
81
- orderColumnName: string;
86
+ orderColumnName: "order";
82
87
  orderBy: {
83
88
  order: string;
84
89
  };
@@ -93,12 +98,12 @@ export declare const transformAttribute: (name: string, attribute: Schema.Attrib
93
98
  name: string;
94
99
  joinColumn: {
95
100
  name: string;
96
- referencedColumn: string;
101
+ referencedColumn: "id";
97
102
  };
98
103
  morphColumn: {
99
104
  idColumn: {
100
105
  name: string;
101
- referencedColumn: string;
106
+ referencedColumn: "id";
102
107
  };
103
108
  typeColumn: {
104
109
  name: string;
@@ -118,10 +123,10 @@ export declare const transformAttribute: (name: string, attribute: Schema.Attrib
118
123
  target?: undefined;
119
124
  morphBy?: undefined;
120
125
  };
121
- export declare const transformAttributes: (contentType: LoadedContentTypeModel) => {};
126
+ export declare const transformAttributes: (contentType: LoadedContentTypeModel, identifiers: Identifiers) => {};
122
127
  export declare const hasComponentsOrDz: (contentType: LoadedContentTypeModel) => contentType is Struct.ContentTypeSchema & Required<Pick<Struct.ContentTypeSchema, "uid" | "collectionName" | "modelName">> & {
123
128
  type: 'dynamiczone' | 'component';
124
129
  };
125
130
  export declare const createDocumentId: typeof createId;
126
- export declare const transformContentTypesToModels: (contentTypes: LoadedContentTypeModel[]) => Model[];
131
+ export declare const transformContentTypesToModels: (contentTypes: LoadedContentTypeModel[], identifiers: Identifiers) => Model[];
127
132
  //# sourceMappingURL=transform-content-types-to-models.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transform-content-types-to-models.d.ts","sourceRoot":"","sources":["../../src/utils/transform-content-types-to-models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAS,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMhD;;;;;GAKG;AAEH,eAAO,MAAM,2BAA2B,eAAe,CAAC;AACxD,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,6BAA6B,cAAc,CAAC;AACzD,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AACtD,eAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,eAAO,MAAM,yBAAyB,mBAAoB,MAAM,WACmB,CAAC;AAEpF,eAAO,MAAM,kBAAkB,mBAAoB,MAAM,WACmB,CAAC;AAI7E,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,iBAAiB,GAC3D,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,gBAAgB,GAAG,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC;AAGnF,eAAO,MAAM,kBAAkB,SACvB,MAAM,aACD,OAAO,SAAS,CAAC,YAAY,eAC3B,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwFpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,gBAAiB,sBAAsB,OAOtE,CAAC;AAEF,eAAO,MAAM,iBAAiB,gBACf,sBAAsB;UACc,aAAa,GAAG,WAAW;CAI7E,CAAC;AAEF,eAAO,MAAM,gBAAgB,iBAAW,CAAC;AA6EzC,eAAO,MAAM,6BAA6B,iBAAkB,sBAAsB,EAAE,KAAG,KAAK,EAiD3F,CAAC"}
1
+ {"version":3,"file":"transform-content-types-to-models.d.ts","sourceRoot":"","sources":["../../src/utils/transform-content-types-to-models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,yBAAyB,mBAAoB,MAAM,eAAe,WAAW,WAKzF,CAAC;AAEF,eAAO,MAAM,kBAAkB,mBAAoB,MAAM,eAAe,WAAW,WAKlF,CAAC;AAEF,eAAO,MAAM,gCAAgC,gBAAiB,WAAW,WAKxE,CAAC;AAEF,eAAO,MAAM,iCAAiC,gBAAiB,WAAW,WAKzE,CAAC;AAEF,eAAO,MAAM,sBAAsB,gBAAiB,WAAW,WAE9D,CAAC;AAEF,eAAO,MAAM,uBAAuB,gBAAiB,MAAM,eAAe,WAAW,WAMpF,CAAC;AAIF,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,iBAAiB,GAC3D,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,gBAAgB,GAAG,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC;AAGnF,eAAO,MAAM,kBAAkB,SACvB,MAAM,aACD,OAAO,SAAS,CAAC,YAAY,eAC3B,sBAAsB,eACtB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+FzB,CAAC;AAEF,eAAO,MAAM,mBAAmB,gBACjB,sBAAsB,eACtB,WAAW,OAazB,CAAC;AAEF,eAAO,MAAM,iBAAiB,gBACf,sBAAsB;UACc,aAAa,GAAG,WAAW;CAI7E,CAAC;AAEF,eAAO,MAAM,gBAAgB,iBAAW,CAAC;AAgFzC,eAAO,MAAM,6BAA6B,iBAC1B,sBAAsB,EAAE,eACzB,WAAW,KACvB,KAAK,EAiDP,CAAC"}